Message ID | 20190522151238.25176-1-robh@kernel.org |
---|---|
State | Superseded |
Headers | show |
Series | checkpatch.pl: Update DT vendor prefix check | expand |
On Wed, 2019-05-22 at 10:12 -0500, Rob Herring wrote: > In commit 8122de54602e ("dt-bindings: Convert vendor prefixes to > json-schema"), vendor-prefixes.txt has been converted to a DT schema. > Update the checkpatch.pl DT check to extract vendor prefixes from the new > vendor-prefixes.yaml file. > > Fixes: 8122de54602e ("dt-bindings: Convert vendor prefixes to json-schema") > Cc: Joe Perches <joe@perches.com> > Signed-off-by: Rob Herring <robh@kernel.org> > --- > scripts/checkpatch.pl | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > index bb28b178d929..073051a4471b 100755 > --- a/scripts/checkpatch.pl > +++ b/scripts/checkpatch.pl > @@ -3027,7 +3027,7 @@ sub process { > my @compats = $rawline =~ /\"([a-zA-Z0-9\-\,\.\+_]+)\"/g; > > my $dt_path = $root . "/Documentation/devicetree/bindings/"; > - my $vp_file = $dt_path . "vendor-prefixes.txt"; > + my $vp_file = $dt_path . "vendor-prefixes.yaml"; > > foreach my $compat (@compats) { > my $compat2 = $compat; > @@ -3042,7 +3042,7 @@ sub process { > > next if $compat !~ /^([a-zA-Z0-9\-]+)\,/; > my $vendor = $1; > - `grep -Eq "^$vendor\\b" $vp_file`; > + `grep -oE "\\"\\^[a-zA-Z0-9]+" $vp_file | grep -q "$vendor"`; I think this does't work well as it loses the - in various vendor prefixes: "^active-semi,.*": "^asahi-kasei,.*": "^ebs-systart,.*": "^inside-secure,.*": "^multi-inno,.*": "^netron-dy,.*": "^si-en,.*": "^si-linux,.*": "^tbs-biometrics,.*": "^u-blox,.*": "^x-powers,.*": Perhaps the grep should be something like: (untested) `grep -Eq "\\"\\^\Q$vendor\E,\\.\\*\\":" $vp_file`;
On Wed, May 22, 2019 at 12:16 PM Joe Perches <joe@perches.com> wrote: > > On Wed, 2019-05-22 at 10:12 -0500, Rob Herring wrote: > > In commit 8122de54602e ("dt-bindings: Convert vendor prefixes to > > json-schema"), vendor-prefixes.txt has been converted to a DT schema. > > Update the checkpatch.pl DT check to extract vendor prefixes from the new > > vendor-prefixes.yaml file. > > > > Fixes: 8122de54602e ("dt-bindings: Convert vendor prefixes to json-schema") > > Cc: Joe Perches <joe@perches.com> > > Signed-off-by: Rob Herring <robh@kernel.org> > > --- > > scripts/checkpatch.pl | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > > index bb28b178d929..073051a4471b 100755 > > --- a/scripts/checkpatch.pl > > +++ b/scripts/checkpatch.pl > > @@ -3027,7 +3027,7 @@ sub process { > > my @compats = $rawline =~ /\"([a-zA-Z0-9\-\,\.\+_]+)\"/g; > > > > my $dt_path = $root . "/Documentation/devicetree/bindings/"; > > - my $vp_file = $dt_path . "vendor-prefixes.txt"; > > + my $vp_file = $dt_path . "vendor-prefixes.yaml"; > > > > foreach my $compat (@compats) { > > my $compat2 = $compat; > > @@ -3042,7 +3042,7 @@ sub process { > > > > next if $compat !~ /^([a-zA-Z0-9\-]+)\,/; > > my $vendor = $1; > > - `grep -Eq "^$vendor\\b" $vp_file`; > > + `grep -oE "\\"\\^[a-zA-Z0-9]+" $vp_file | grep -q "$vendor"`; > > I think this does't work well as it loses the - > in various vendor prefixes: > > "^active-semi,.*": > "^asahi-kasei,.*": > "^ebs-systart,.*": > "^inside-secure,.*": > "^multi-inno,.*": > "^netron-dy,.*": > "^si-en,.*": > "^si-linux,.*": > "^tbs-biometrics,.*": > "^u-blox,.*": > "^x-powers,.*": Ah, indeed. > Perhaps the grep should be something like: (untested) > > `grep -Eq "\\"\\^\Q$vendor\E,\\.\\*\\":" $vp_file`; That works. Thanks. Rob
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index bb28b178d929..073051a4471b 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -3027,7 +3027,7 @@ sub process { my @compats = $rawline =~ /\"([a-zA-Z0-9\-\,\.\+_]+)\"/g; my $dt_path = $root . "/Documentation/devicetree/bindings/"; - my $vp_file = $dt_path . "vendor-prefixes.txt"; + my $vp_file = $dt_path . "vendor-prefixes.yaml"; foreach my $compat (@compats) { my $compat2 = $compat; @@ -3042,7 +3042,7 @@ sub process { next if $compat !~ /^([a-zA-Z0-9\-]+)\,/; my $vendor = $1; - `grep -Eq "^$vendor\\b" $vp_file`; + `grep -oE "\\"\\^[a-zA-Z0-9]+" $vp_file | grep -q "$vendor"`; if ( $? >> 8 ) { WARN("UNDOCUMENTED_DT_STRING", "DT compatible string vendor \"$vendor\" appears un-documented -- check $vp_file\n" . $herecurr);
In commit 8122de54602e ("dt-bindings: Convert vendor prefixes to json-schema"), vendor-prefixes.txt has been converted to a DT schema. Update the checkpatch.pl DT check to extract vendor prefixes from the new vendor-prefixes.yaml file. Fixes: 8122de54602e ("dt-bindings: Convert vendor prefixes to json-schema") Cc: Joe Perches <joe@perches.com> Signed-off-by: Rob Herring <robh@kernel.org> --- scripts/checkpatch.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.20.1