mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Arınç ÜNAL" <arinc.unal@arinc9.com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
	Paul Cercueil <paul@crapouillou.net>
Cc: Rahul Bedarkar <rahulbedarkar89@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Sergio Paracuellos <sergio.paracuellos@gmail.com>,
	linux-mips@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org
Subject: Re: [PATCH 1/2] MIPS: dts: correct gpio-keys names and properties
Date: Wed, 29 Jun 2022 15:08:01 +0300	[thread overview]
Message-ID: <3394a6fa-dc55-bf5d-c06e-ddf70d95c26b@arinc9.com> (raw)
In-Reply-To: <cc81b6ae-c1c1-78ec-b4e2-e165dcd5015b@linaro.org>

On 25.06.2022 23:25, Krzysztof Kozlowski wrote:
> On 25/06/2022 22:15, Paul Cercueil wrote:
>> Hi Krzysztof,
>>
>> Le sam., juin 25 2022 at 21:58:08 +0200, Krzysztof Kozlowski
>> <krzysztof.kozlowski@linaro.org> a écrit :
>>> On 24/06/2022 20:40, Paul Cercueil wrote:
>>>>   Hi Krzysztof,
>>>>
>>>>   Le ven., juin 24 2022 at 19:07:39 +0200, Krzysztof Kozlowski
>>>>   <krzysztof.kozlowski@linaro.org> a écrit :
>>>>>   gpio-keys children do not use unit addresses.
>>>>>
>>>>>   Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>>>>
>>>>>   ---
>>>>>
>>>>>   See:
>>>>>   
>>>>> https://lore.kernel.org/all/20220616005224.18391-1-krzysztof.kozlowski@linaro.org/
>>>>>   ---
>>>>>    arch/mips/boot/dts/img/pistachio_marduk.dts   |  4 +--
>>>>>    arch/mips/boot/dts/ingenic/gcw0.dts           | 31
>>>>>   +++++++++----------
>>>>>    arch/mips/boot/dts/ingenic/rs90.dts           | 18 +++++------
>>>>>    arch/mips/boot/dts/pic32/pic32mzda_sk.dts     |  9 ++----
>>>>>    .../boot/dts/qca/ar9132_tl_wr1043nd_v1.dts    |  6 ++--
>>>>>    arch/mips/boot/dts/qca/ar9331_dpt_module.dts  |  4 +--
>>>>>    .../mips/boot/dts/qca/ar9331_dragino_ms14.dts |  6 ++--
>>>>>    arch/mips/boot/dts/qca/ar9331_omega.dts       |  4 +--
>>>>>    .../qca/ar9331_openembed_som9331_board.dts    |  4 +--
>>>>>    arch/mips/boot/dts/qca/ar9331_tl_mr3020.dts   |  8 ++---
>>>>>    10 files changed, 37 insertions(+), 57 deletions(-)
>>>>>
>>>>>   diff --git a/arch/mips/boot/dts/img/pistachio_marduk.dts
>>>>>   b/arch/mips/boot/dts/img/pistachio_marduk.dts
>>>>>   index a8708783f04b..a8da2f992b1a 100644
>>>>>   --- a/arch/mips/boot/dts/img/pistachio_marduk.dts
>>>>>   +++ b/arch/mips/boot/dts/img/pistachio_marduk.dts
>>>>>   @@ -59,12 +59,12 @@ led-1 {
>>>>>
>>>>>    	keys {
>>>>>    		compatible = "gpio-keys";
>>>>>   -		button@1 {
>>>>>   +		button-1 {
>>>>>    			label = "Button 1";
>>>>>    			linux,code = <0x101>; /* BTN_1 */
>>>>>    			gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
>>>>>    		};
>>>>>   -		button@2 {
>>>>>   +		button-2 {
>>>>>    			label = "Button 2";
>>>>>    			linux,code = <0x102>; /* BTN_2 */
>>>>>    			gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
>>>>>   diff --git a/arch/mips/boot/dts/ingenic/gcw0.dts
>>>>>   b/arch/mips/boot/dts/ingenic/gcw0.dts
>>>>>   index 4abb0318416c..5d33f26fd28c 100644
>>>>>   --- a/arch/mips/boot/dts/ingenic/gcw0.dts
>>>>>   +++ b/arch/mips/boot/dts/ingenic/gcw0.dts
>>>>>   @@ -130,89 +130,86 @@ backlight: backlight {
>>>>>
>>>>>    	gpio-keys {
>>>>>    		compatible = "gpio-keys";
>>>>>   -		#address-cells = <1>;
>>>>>   -		#size-cells = <0>;
>>>>
>>>>   Are you sure you can remove these?
>>>
>>> Yes, from DT spec point of view, DT bindings and Linux implementation.
>>> However this particular change was not tested, except building.
>>>
>>>>
>>>>   Looking at paragraph 2.3.5 of the DT spec, I would think they have
>>>> to
>>>>   stay (although with #address-cells = <0>).
>>>
>>> The paragraph 2.3.5 says nothing about regular properties (which can
>>> be
>>> also child nodes). It says about children of a bus, right? It's not
>>> related here, it's not a bus.
>>
>> I quote:
>> "A DTSpec-compliant boot program shall supply #address-cells and
>> #size-cells on all nodes that have children."
> 
> And paragraph 2.2.3 says:
> "A unit address may be omitted if the full path to the node is unambiguous."
> 
> You have address/size cells for nodes with children having unit
> addresses. If they don't unit addresses, you don't add address/size
> cells (with some exceptions).
> 
> The paragraph 2.3.5 mentions "child device nodes" and these properties
> are not devices, although I agree that DT spec here is actually confusing.
> 
>>
>> The gpio-keys node has children nodes, therefore it should have
>> #address-cells and #size-cells, there's no room for interpretation here.
>>
>>> Second, why exactly this one gpio-keys node is different than all
>>> other
>>> gpio-keys everywhere and than bindings? Why this one has to be
>>> incompatible/wrong according to bindings (which do not allow
>>> address-cells and nodes with unit addresses)?
>>
>> Nothing is different. I'm just stating that your proposed fix is
>> invalid if we want to enforce compliance with the DT spec.
> 
> In such case, we rather enforce the compliance with the bindings.
> 
> Best regards,
> Krzysztof

I recall them to be unnecessary as well. I have a patch of mine applied 
identical to this:

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8c9f00d4b05134164e462f27b21c8295255ffa64

Also, I don't see any warnings with this patch applied:

$ ARCH=mips CROSS_COMPILE=mipsel-linux-gnu- make clean dtbs -j$(nproc)
   SYNC    include/config/auto.conf.cmd
   HOSTCC  scripts/basic/fixdep
   HOSTCC  scripts/kconfig/conf.o
   HOSTCC  scripts/kconfig/confdata.o
   HOSTCC  scripts/kconfig/expr.o
   LEX     scripts/kconfig/lexer.lex.c
   YACC    scripts/kconfig/parser.tab.[ch]
   HOSTCC  scripts/kconfig/menu.o
   HOSTCC  scripts/kconfig/preprocess.o
   HOSTCC  scripts/kconfig/symbol.o
   HOSTCC  scripts/kconfig/util.o
   HOSTCC  scripts/kconfig/lexer.lex.o
   HOSTCC  scripts/kconfig/parser.tab.o
   HOSTLD  scripts/kconfig/conf
   HOSTCC  scripts/dtc/dtc.o
   HOSTCC  scripts/dtc/flattree.o
   HOSTCC  scripts/dtc/fstree.o
   HOSTCC  scripts/dtc/data.o
   HOSTCC  scripts/dtc/livetree.o
   HOSTCC  scripts/dtc/treesource.o
   HOSTCC  scripts/dtc/srcpos.o
   HOSTCC  scripts/dtc/checks.o
   HOSTCC  scripts/dtc/util.o
   LEX     scripts/dtc/dtc-lexer.lex.c
   YACC    scripts/dtc/dtc-parser.tab.[ch]
   HOSTCC  scripts/dtc/libfdt/fdt.o
   HOSTCC  scripts/dtc/libfdt/fdt_ro.o
   HOSTCC  scripts/dtc/libfdt/fdt_wip.o
   HOSTCC  scripts/dtc/libfdt/fdt_sw.o
   HOSTCC  scripts/dtc/libfdt/fdt_rw.o
   HOSTCC  scripts/dtc/libfdt/fdt_strerror.o
   HOSTCC  scripts/dtc/libfdt/fdt_empty_tree.o
   HOSTCC  scripts/dtc/libfdt/fdt_addresses.o
   HOSTCC  scripts/dtc/libfdt/fdt_overlay.o
   HOSTCC  scripts/dtc/fdtoverlay.o
   HOSTCC  scripts/dtc/dtc-lexer.lex.o
   HOSTCC  scripts/dtc/dtc-parser.tab.o
   HOSTLD  scripts/dtc/fdtoverlay
   HOSTLD  scripts/dtc/dtc
   DTC     arch/mips/boot/dts/ingenic/gcw0.dtb

Have my acked-by.

Acked-by: Arınç ÜNAL <arinc.unal@arinc9.com>

Arınç

  reply	other threads:[~2022-06-29 12:23 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-24 17:07 Krzysztof Kozlowski
2022-06-24 17:07 ` [PATCH 2/2] MIPS: dts: align gpio-key node names with dtschema Krzysztof Kozlowski
2022-06-29 12:12   ` Arınç ÜNAL
2022-07-14  9:56   ` Thomas Bogendoerfer
2022-06-24 18:40 ` [PATCH 1/2] MIPS: dts: correct gpio-keys names and properties Paul Cercueil
2022-06-25 19:58   ` Krzysztof Kozlowski
2022-06-25 20:15     ` Paul Cercueil
2022-06-25 20:25       ` Krzysztof Kozlowski
2022-06-29 12:08         ` Arınç ÜNAL [this message]
2022-07-14  9:55 ` Thomas Bogendoerfer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3394a6fa-dc55-bf5d-c06e-ddf70d95c26b@arinc9.com \
    --to=arinc.unal@arinc9.com \
    --cc=devicetree@vger.kernel.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=matthias.bgg@gmail.com \
    --cc=paul@crapouillou.net \
    --cc=rahulbedarkar89@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=sergio.paracuellos@gmail.com \
    --cc=tsbogend@alpha.franken.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®