All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: David Gibson <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org>
Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Stephen Warren <swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH 2/2] Warn on node name unit-addresses with '0x' or leading 0s
Date: Tue, 23 Feb 2016 08:35:46 -0600	[thread overview]
Message-ID: <CAL_Jsq+Nr6uzA0xzc=zKG4diZwDrgsbLAKDb80m6ZSq2NXcGgA@mail.gmail.com> (raw)
In-Reply-To: <20160223054746.GT2808-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>

On Mon, Feb 22, 2016 at 11:47 PM, David Gibson
<david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org> wrote:
> On Mon, Feb 22, 2016 at 10:51:46AM -0600, Rob Herring wrote:
>> On Thu, Feb 18, 2016 at 11:07 PM, David Gibson
>> <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org> wrote:
>> > On Thu, Feb 11, 2016 at 02:46:59PM -0600, Rob Herring wrote:
>> >> Node name unit-addresses should never begin with 0x or leading 0s
>> >> regardless of whether they have a bus specific address (i.e. one with
>> >> commas) or not. Add warnings to check for these cases.
>> >
>> > Hmm.. I'm pretty sure that's true in practice, but it's not true in
>> > theory.  A bus could define it's unit address format just about
>> > however it wants, including with leading 0s.
>>
>> Only if it is not reviewed... This whole check is about what best
>> practices are, not what is possible.
>
> Hmm.  dtc checks are really about checking for best practice at the
> level of individual dts files, though, not bindings.

Checking simple-bus specifically would be checking a binding.

>> > I think a better approach would be to add a test specific to
>> > simple-bus devices (by looking at compatible on the parent) that fully
>> > checks the unit address.
>> >
>> > From there we can start adding tests for other bus types.
>>
>> simple-bus is easy enough,
>
> So, start with that, then tackle the next problem.
>
>> but then next up would be I2C and SPI. We
>> can't generically tell if a node is on I2C or SPI bus.
>
> Why not?  Or perhaps.. how generically do you need?  I think having a
> big list of i2c / spi controllers would be acceptable here, if not
> ideal.

So someone adds a new controller, puts crap in for unit addresses, and
then no warnings until that compatible string is added to dtc. And I'm
still left spending my time in reviews telling them to fix this
trivial crap.

That's roughly 60 I2C controllers (families, so multiple compatible
strings each) plus similar number of SPI controllers, OF-graph
binding, and random other things where reg gets used.

>
>> If we do have
>> some bus with wacky addresses, it should definitely have a bus
>> compatible and then we can simply exclude it from the check.
>>
>> Another option would be skipping the test if there are any commas (or
>> periods, etc.) in the unit address. That's pretty rare to begin with
>> and a single number is pretty much not a bus specific unit-address.
>
> Um.. no.. there are definitely bus types that don't typically use
> commas.  ISA, for one.

All the cases of ISA in the kernel tree at least would pass this test.
But we could either blacklist ISA or skip if any non-hex characters
are present.

BTW, my next patch is stricter node and property name checks on the
use of '#', '?', '.', '+', '*', and '_'. So if you don't think these
kinds to checks belong in dtc, then tell me and suggest how we should
check for this.

Rob

  parent reply	other threads:[~2016-02-23 14:35 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-11 20:46 [PATCH 0/2] DTC unit-address checks Rob Herring
     [not found] ` <1455223619-16052-1-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-02-11 20:46   ` [PATCH 1/2] Warn on node name unit-address presence/absence mismatch Rob Herring
     [not found]     ` <1455223619-16052-2-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-02-19  5:02       ` David Gibson
2016-02-11 20:46   ` [PATCH 2/2] Warn on node name unit-addresses with '0x' or leading 0s Rob Herring
     [not found]     ` <1455223619-16052-3-git-send-email-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2016-02-19  5:07       ` David Gibson
     [not found]         ` <20160219050709.GB15224-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>
2016-02-22 16:51           ` Rob Herring
     [not found]             ` <CAL_JsqLDdyLd4z_Pmsr7+vtnMZsusEpJYZ4tdZmjQFt0PD_Fbw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-02-23  5:47               ` David Gibson
     [not found]                 ` <20160223054746.GT2808-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>
2016-02-23 14:35                   ` Rob Herring [this message]
     [not found]                     ` <CAL_Jsq+Nr6uzA0xzc=zKG4diZwDrgsbLAKDb80m6ZSq2NXcGgA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-02-24  0:44                       ` David Gibson
     [not found]                         ` <20160224004456.GB2808-RXTfZT5YzpxwFLYp8hBm2A@public.gmane.org>
2016-02-24 15:01                           ` Rob Herring
2016-02-25  0:49                             ` David Gibson

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='CAL_Jsq+Nr6uzA0xzc=zKG4diZwDrgsbLAKDb80m6ZSq2NXcGgA@mail.gmail.com' \
    --to=robh-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
    --cc=david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org \
    --cc=devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=swarren-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.