devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
To: Marek Vasut <marex@denx.de>, David Airlie <airlied@gmail.com>,
	Daniel Vetter <daniel@ffwll.ch>, Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>,
	Philippe Cornu <philippe.cornu@foss.st.com>,
	Yannick Fertre <yannick.fertre@foss.st.com>
Cc: <dri-devel@lists.freedesktop.org>, <devicetree@vger.kernel.org>,
	<linux-stm32@st-md-mailman.stormreply.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>, <kernel@dh-electronics.com>
Subject: Re: [PATCH v3 3/3] ARM: dts: stm32: fix several DT warnings on stm32mp15
Date: Thu, 25 May 2023 10:14:52 +0200	[thread overview]
Message-ID: <32fafa74-8964-c9cf-f95b-f2cd084f46c6@foss.st.com> (raw)
In-Reply-To: <5f201903-17cb-5054-763c-f03b1066db1d@denx.de>


On 5/18/23 01:33, Marek Vasut wrote:
> On 5/17/23 19:04, Raphael Gallais-Pou wrote:
>> Hi Marek
>
> Hi,
>
>> On 5/17/23 17:41, Marek Vasut wrote:
>>> On 5/17/23 16:35, Raphael Gallais-Pou wrote:
>>>
>>> Hi,
>>>
>>>> diff --git a/arch/arm/boot/dts/stm32mp15xx-dkx.dtsi
>>>> b/arch/arm/boot/dts/stm32mp15xx-dkx.dtsi
>>>> index 0f1110e42c93..a6e2e20f12fa 100644
>>>> --- a/arch/arm/boot/dts/stm32mp15xx-dkx.dtsi
>>>> +++ b/arch/arm/boot/dts/stm32mp15xx-dkx.dtsi
>>>> @@ -457,8 +457,7 @@ &ltdc {
>>>>        status = "okay";
>>>>          port {
>>>> -        ltdc_ep0_out: endpoint@0 {
>>>> -            reg = <0>;
>>>> +        ltdc_ep0_out: endpoint {
>>>>                remote-endpoint = <&sii9022_in>;
>>>>            };
>>>>        };
>>>
>>> This LTDC port/endpoint stuff always scares me, because I always feel I get it
>>> wrong.
>>>
>>> I believe the LTDC does have one "port" , correct.
>>>
>>> But I think (?) that the LTDC has two endpoints, endpoint@0 for DPI (parallel
>>> output out of the SoC) and endpoint@1 for DSI (internal connection into the
>>> DSI serializer) ?
>>
>> You are correct indeed, I rushed the patch and did not thought about this. I
>> agree that this can be confusing, as I also take some time to think through it.
>>
>>>
>>> Only one of the endpoints can be connected at a time, but there are actually
>>> two endpoints in the LTDC port {} node, aren't there ?
>> Yes, they are mutually exclusive.
>>>
>>> So the original description should be OK I think , maybe #address/#size-cells
>>> are missing instead ?
>>
>> Thing is: this file is only included in two device-trees : stm32mp157c-dk1.dts
>> and stm32mp157c-dk2.dts.
>>
>> Among those two files there is only one which adds a second endpoint. Thus if
>> the fields are set higher in the hierarchy, a warning yields.
>
> I do not understand this one part, which warning are you trying to fix ?
> I just ran '$ make CHECK_DTBS=1 stm32mp157a-dk1.dtb stm32mp157c-dk2.dtb' in
> latest linux-next and there was no warning related to LTDC .

I'm sorry, I looked back at it and my explanations are confusing.

I use Alex Torgue's tree, and I'm based on the next branch, but linux-next
should be the same I just checked it.

>
> I think if you retain the stm32mp151.dtsi &ltdc { port { #address-cells = <1>;
> #size-cells = <0>; }; }; part, then you wouldn't be getting any warnings
> regarding LTDC , and you wouldn't have to remove the unit-address from
> endpoint@0 .
>
> btw. I do use both endpoint@0/endpoint@1 in Avenger96 DTOs, but those are not
> submitted yet, I have to clean them up a bit more first.
>
>> One way to do it would be to make the endpoint@0 go down in the device-tree with
>> its dependencies, so that both endpoints are the same level without generating
>> noise.
>
> I'm afraid I really don't quite understand which warning you're referring to.
> Can you please share that warning and ideally how to trigger it (the
> command-line incantation) ?

Using '$ make dtbs W=1', you can observe several of the followings:

arch/arm/boot/dts/stm32mp151.dtsi:1533.9-1536.6: Warning
(avoid_unnecessary_addr_size): /soc/display-controller@5a001000/port:
unnecessary #address-cells/#size-cells without "ranges" or child "reg" property
arch/arm/boot/dts/stm32mp151.dtsi:1533.9-1536.6: Warning (graph_child_address):
/soc/display-controller@5a001000/port: graph node has single child node
'endpoint@0', #address-cells/#size-cells are not necessary

This &ltdc { port { #address-cells = <1>; #size-cells = <0>; }; }; part is
actually annoying. This is because there is several device-trees that only got
one endpoint, and some other that includes two.

For instance: stm32mp15xx-dhcor-avenger96.dtsi vs stm32mp157c-dk2.dts.

I would like to remove to root part of address/size field and let only the lower
device-trees with with multiple endpoints handle their own fields. I hope this
explains a bit better my process.

Regards,
Raphaël Gallais-Pou


  reply	other threads:[~2023-05-25  8:15 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-17 14:35 [PATCH v3 0/3] STM32 warning cleanup Raphael Gallais-Pou
2023-05-17 14:35 ` [PATCH v3 1/3] ARM: dts: stm32: fix warnings on stm32f469-disco board Raphael Gallais-Pou
2023-05-26 16:55   ` Marek Vasut
2023-05-17 14:35 ` [PATCH v3 2/3] dt-bindings: display: st,stm32-dsi: Remove unnecessary fields Raphael Gallais-Pou
2023-05-17 17:30   ` Conor Dooley
2023-05-26 16:55   ` Marek Vasut
2023-05-17 14:35 ` [PATCH v3 3/3] ARM: dts: stm32: fix several DT warnings on stm32mp15 Raphael Gallais-Pou
2023-05-17 15:41   ` Marek Vasut
2023-05-17 17:04     ` Raphael Gallais-Pou
2023-05-17 23:33       ` Marek Vasut
2023-05-25  8:14         ` Raphael Gallais-Pou [this message]
2023-05-26 16:55           ` Marek Vasut
2023-05-29  8:07             ` Raphael Gallais-Pou
2023-05-29  9:49               ` Marek Vasut

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=32fafa74-8964-c9cf-f95b-f2cd084f46c6@foss.st.com \
    --to=raphael.gallais-pou@foss.st.com \
    --cc=airlied@gmail.com \
    --cc=alexandre.torgue@foss.st.com \
    --cc=conor+dt@kernel.org \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=kernel@dh-electronics.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-stm32@st-md-mailman.stormreply.com \
    --cc=marex@denx.de \
    --cc=mcoquelin.stm32@gmail.com \
    --cc=philippe.cornu@foss.st.com \
    --cc=robh+dt@kernel.org \
    --cc=yannick.fertre@foss.st.com \
    /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;
as well as URLs for NNTP newsgroup(s).