Re: [PATCH 1/2] misc: lan966x_pci: Fix dtc warns 'missing or empty reg/ranges property'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 28, 2024 at 12:43 PM Herve Codina <herve.codina@xxxxxxxxxxx> wrote:
>
> Hi Rob,
>
> On Mon, 28 Oct 2024 08:55:24 -0500
> Rob Herring <robh@xxxxxxxxxx> wrote:
>
> > On Mon, Oct 28, 2024 at 7:24 AM Herve Codina <herve.codina@xxxxxxxxxxx> wrote:
> > >
> > > dtc generates the following warnings when building the LAN966x device
> > > tree overlay (lan966x_pci.dtso):
> > >   Warning (simple_bus_reg): /fragment@0/__overlay__/pci-ep-bus@0/cpu_clk: missing or empty reg/ranges property
> > >   Warning (simple_bus_reg): /fragment@0/__overlay__/pci-ep-bus@0/ddr_clk: missing or empty reg/ranges property
> > >   Warning (simple_bus_reg): /fragment@0/__overlay__/pci-ep-bus@0/sys_clk: missing or empty reg/ranges property
> > >
> > > Indeed, related nodes are under the pci-ep-bus (simple-bus) which is not
> > > correct.
> > >
> > > Put them outside this node.
> > >
> > > Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> > > Closes: https://lore.kernel.org/all/20241025110919.64b1cffb@xxxxxxxxxxxxxxxx/
> > > Fixes: 185686beb464 ("misc: Add support for LAN966x PCI device")
> > > Signed-off-by: Herve Codina <herve.codina@xxxxxxxxxxx>
> > > ---
> > > The referenced commit is in the reset tree
> > > ---
> > >  drivers/misc/lan966x_pci.dtso | 36 +++++++++++++++++------------------
> > >  1 file changed, 18 insertions(+), 18 deletions(-)
> > >
> > > diff --git a/drivers/misc/lan966x_pci.dtso b/drivers/misc/lan966x_pci.dtso
> > > index 7282687df25f..5466d013da7d 100644
> > > --- a/drivers/misc/lan966x_pci.dtso
> > > +++ b/drivers/misc/lan966x_pci.dtso
> > > @@ -19,6 +19,24 @@ __overlay__ {
> > >                         #address-cells = <3>;
> > >                         #size-cells = <2>;
> > >
> > > +                       cpu_clk: cpu_clk {
> >
> > Preferred node name is "clock-<freq-in-hz>"
>
> I based the name on the lan966x.dtsi
> https://elixir.bootlin.com/linux/v6.12-rc1/source/arch/arm/boot/dts/microchip/lan966x.dtsi#L38

That should be fixed too.

> Of course, I can rename the cpu_clk, ddr_clk and sys_clk nodes but this will create
> a difference against lan966x.dtsi on some points that should be identical.

Then maybe they should be sharing a .dtsi?

> Let me know with that in mind if I need to rename those nodes in this series.

Yes, easier now than later.

> > Also, as a general rule, don't use "_" in node names (and properties).
> >
> > Isn't there a schema for the device which needs these nodes added to
> > it? If not, there should be.
> >
>
> No, there is no schema yet for this device.
>
> How can we describe schema for this kind of devices that are using
> device-tree overlays?

Describing is not the issue. Running the checks is. Though you can run
the checks at runtime.

> I mean, this overlay is applied on a PCI device DT node. This DT node is
> computed at runtime. It is, in the end, available in the base DT before
> applying the overlay.
> The compatible string that could be used to check the dtso against schema
> cannot be set in the overlay (at least not at the correct place in the
> hierarchy) without causing a property memory leak at runtime. An overlay
> cannot add a property in a base DT node without generating a memory leak
> and so, we avoid adding such properties in the base DT from the overlay.

That's a problem with overlays in general which we need to solve at some point.

> Is this missing schema blocking for this series ?

No.

Rob





[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux