Re: [PATCH 4/4] ARM: dts: uniphier: change support card to simple-mfd from simple-bus

From: Lee Jones
Date: Thu Jun 25 2020 - 10:57:35 EST


On Thu, 25 Jun 2020, Masahiro Yamada wrote:

> On Thu, Jun 25, 2020 at 3:16 AM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> >
> > On Thu, 25 Jun 2020, Masahiro Yamada wrote:
> >
> > > On Tue, Jun 23, 2020 at 9:24 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> > > >
> > > > On Tue, 23 Jun 2020, Masahiro Yamada wrote:
> > > >
> > > > > 'make ARCH=arm dtbs_check' emits the following warning:
> > > > >
> > > > > support-card@1,1f00000: $nodename:0: 'support-card@1,1f00000' does not match '^(bus|soc|axi|ahb|apb)(@[0-9a-f]+)?$'
> > > > >
> > > > > Maybe, simple-mfd could be a better fit for this device.
> > > >
> > > > The two should be equivalent.
> > >
> > > Yes, I know.
> > > That's why I can change "simple-bus" to "simple-mfd"
> > > with no risk.
> > >
> > > The difference is schema-check.
> > >
> > > The node name for "simple-bus" is checked by 'make dtbs_check'.
> > >
> > > See this code:
> > > https://github.com/robherring/dt-schema/blob/v2020.05/schemas/simple-bus.yaml#L17
> > >
> > > Even if I rename the node, it does not accept the
> > > unit name '1,1f00000'
> > >
> > > > What do you mean by "maybe"? Does this squash the warning?
> > >
> > > "maybe" means I am not quite sure
> > > which compatible is a better fit
> > > to describe this device.
> > >
> > > As mentioned above, simple-bus and simple-mfd
> > > are interchangeable from a driver point of view.
> > >
> > > This add-on board is integrated with various peripherals
> > > such as 16550a serial, smsc9115 ether etc.
> > > The address-decode is implemented in a CPLD device.
> > > It has chip selects and local addresses, which are mapped to
> > > the parent.
> > >
> > > It can be either simple-bus or simple-mfd, I think.
> > >
> > >
> > > dt-schema checks the node name of simple-bus.
> > > Currently, there is no check for simple-mfd.
> > >
> > > So, I think this patch is an easy solution
> > > to fix the warning.
> >
> > Yes, looking at the documentation it seems as though 'simple-mfd'
> > would be a better fit. Is the device a single IP with various
> > different functions?
>
> Not an IP.
>
> This is a small board that consists of
> a CPLD + ethernet controller + serial controller + LED, etc.

Then simple MFD does not seem like a good fit.

Neither does 'simple-bus'.

What is it you're trying to describe in the device hierarchy?

> > > Rob is in Cc. Please add comments if any.
> > >
> > > > Isn't the issue caused by the ','?
> > >
> > > Right.
> > >
> > > The node name of simple-bus
> > > must meet the regular expression:
> > > "^(bus|soc|axi|ahb|apb)(@[0-9a-f]+)?$"
> > >
> > >
> > > Even if I rename the node
> > > "support-card@1,1f00000"
> > > to "bus@1,1f00000", the warning is still
> > > displayed due to ','
> > >
> > > "1,1f00000" means
> > > the address 0x01f00000 of chip select 1.
> >
> > Is this an officially accepted format?
>
> I am not sure if it is official.
>
> Rob said the data fields should be separated by commas.
> https://www.spinics.net/lists/devicetree/msg201565.html

Are you sure he doesn't mean in the 'reg' property.

Rather than the node-name@NNNNNNNN syntax.

BTW, I think the error you link to above is related to the
node-name@NNNNNNNN not matching the value listed in the 'reg'
property.

--
Lee Jones [æçæ]
Senior Technical Lead - Developer Services
Linaro.org â Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog