On Tue, Jan 24, 2017 at 11:45:31AM -0600, Rob Herring wrote: > While '#', '?', '.', '+', '*', and '_' are considered valid characters, > their use is discouraged in recommended practices. > > Testing this found a few cases of '.'. The majority of the warnings were > all from underscores. Hmm. The Opal firmware on POWER8 machines uses both '.' and '#' in node names in some places. So I'm not terribly convinced this is a good idea. > Signed-off-by: Rob Herring <robh@xxxxxxxxxx> > --- > checks.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/checks.c b/checks.c > index a0d4a9d968d7..0c78d69316bc 100644 > --- a/checks.c > +++ b/checks.c > @@ -252,6 +252,17 @@ static void check_node_name_chars(struct check *c, struct dt_info *dti, > } > ERROR(node_name_chars, check_node_name_chars, PROPNODECHARS "@"); > > +static void check_node_name_chars_strict(struct check *c, struct dt_info *dti, > + struct node *node) > +{ > + int n = strspn(node->name, c->data); > + > + if (n < node->basenamelen) > + FAIL(c, "Character '%c' not recommended in node %s", > + node->name[n], node->fullpath); > +} > +WARNING(node_name_chars_strict, check_node_name_chars_strict, PROPNODECHARSSTRICT); > + > static void check_node_name_format(struct check *c, struct dt_info *dti, > struct node *node) > { > @@ -737,6 +748,7 @@ static struct check *check_table[] = { > &device_type_is_string, &model_is_string, &status_is_string, > > &property_name_chars_strict, > + &node_name_chars_strict, > > &addr_size_cells, ®_format, &ranges_format, > -- 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