Re: simple_bus_reg warning and case sensitive?

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



On Fri, Nov 02, 2018 at 11:31:29PM -0400, Kumar Gala wrote:
> So seeing this warning:
> 
> hexiwear_k64.dts_compiled: Warning (simple_bus_reg): /soc/ethernet@400C0004: simple-bus unit address format error, expected “400c0004”
> 
> 
> For this dts snippet:
> 
>                 eth: ethernet@400C0004 {
>                         compatible = "nxp,kinetis-ethernet";
>                         reg = <0x400C0004 0x620>;
> 		};
> 
> 
> The question I have is that because of how the warning check is
> done, it implies that everything in the unit-address portion would
> need to be lowercase.  In the dts spec we say: ‘The unit-address
> must match the first address specified in the reg property of the
> node.’.  Not sure how strong we interpret ‘match’.

Yeah.. this is difficult to pin down without the extra infrastructure
that OF used to provide here.  Basically each bus type needs to define
how 'reg' values are formatted as unit addresses.  The format for
simple bus (and a number of others) is hex, lowercase, with no prefix
or leading zeroes.  This should probably be written down somewhere if
it isn't already.

> So wondering if the check should be case insensitive?

No, I don't think so.  As far as is practical I think we want to
encourage a unique - down to the byte - formatting for unit
addresses.  Being case insensitve would work against this.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux