All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-27 19:56 ` Florian Vaussard
  0 siblings, 0 replies; 9+ messages in thread
From: Florian Vaussard @ 2014-02-27 19:56 UTC (permalink / raw)
  To: Andy Whitcroft, Joe Perches
  Cc: Rob Herring, devicetree, linux-kernel, Florian Vaussard

With a compatible string like

compatible = "foo";

checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
which is wrong since the vendor prefix is empty in this specific case.

Skip the vendor test if the compatible is not like

compatible = "vendor,something";

Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
---
 scripts/checkpatch.pl | 1 +
 1 file changed, 1 insertion(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 464dcef..35ec185 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2058,6 +2058,7 @@ sub process {
 				my $vendor = $compat;
 				my $vendor_path = $dt_path . "vendor-prefixes.txt";
 				next if (! -f $vendor_path);
+				next if not $vendor =~ /^[a-zA-Z0-9]+\,.*/;
 				$vendor =~ s/^([a-zA-Z0-9]+)\,.*/$1/;
 				`grep -Eq "$vendor" $vendor_path`;
 				if ( $? >> 8 ) {
-- 
1.8.5.3


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-27 19:56 ` Florian Vaussard
  0 siblings, 0 replies; 9+ messages in thread
From: Florian Vaussard @ 2014-02-27 19:56 UTC (permalink / raw)
  To: Andy Whitcroft, Joe Perches
  Cc: Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Florian Vaussard

With a compatible string like

compatible = "foo";

checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
which is wrong since the vendor prefix is empty in this specific case.

Skip the vendor test if the compatible is not like

compatible = "vendor,something";

Signed-off-by: Florian Vaussard <florian.vaussard-p8DiymsW2f8@public.gmane.org>
---
 scripts/checkpatch.pl | 1 +
 1 file changed, 1 insertion(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 464dcef..35ec185 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2058,6 +2058,7 @@ sub process {
 				my $vendor = $compat;
 				my $vendor_path = $dt_path . "vendor-prefixes.txt";
 				next if (! -f $vendor_path);
+				next if not $vendor =~ /^[a-zA-Z0-9]+\,.*/;
 				$vendor =~ s/^([a-zA-Z0-9]+)\,.*/$1/;
 				`grep -Eq "$vendor" $vendor_path`;
 				if ( $? >> 8 ) {
-- 
1.8.5.3

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-27 20:10   ` Joe Perches
  0 siblings, 0 replies; 9+ messages in thread
From: Joe Perches @ 2014-02-27 20:10 UTC (permalink / raw)
  To: Florian Vaussard; +Cc: Andy Whitcroft, Rob Herring, devicetree, linux-kernel

On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
> With a compatible string like
> 
> compatible = "foo";
> 
> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
> which is wrong since the vendor prefix is empty in this specific case.
> 
> Skip the vendor test if the compatible is not like
> 
> compatible = "vendor,something";
> 
> Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
> ---
>  scripts/checkpatch.pl | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 464dcef..35ec185 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -2058,6 +2058,7 @@ sub process {
>  				my $vendor = $compat;
>  				my $vendor_path = $dt_path . "vendor-prefixes.txt";
>  				next if (! -f $vendor_path);
> +				next if not $vendor =~ /^[a-zA-Z0-9]+\,.*/;
>  				$vendor =~ s/^([a-zA-Z0-9]+)\,.*/$1/;
>  				`grep -Eq "$vendor" $vendor_path`;
>  				if ( $? >> 8 ) {

Some vendor names have dashes.
I don't know if underscores are allowed.

$ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
  sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
      1 compatible="active-semi
      8 compatible="asahi-kasei



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-27 20:10   ` Joe Perches
  0 siblings, 0 replies; 9+ messages in thread
From: Joe Perches @ 2014-02-27 20:10 UTC (permalink / raw)
  To: Florian Vaussard
  Cc: Andy Whitcroft, Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
> With a compatible string like
> 
> compatible = "foo";
> 
> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
> which is wrong since the vendor prefix is empty in this specific case.
> 
> Skip the vendor test if the compatible is not like
> 
> compatible = "vendor,something";
> 
> Signed-off-by: Florian Vaussard <florian.vaussard-p8DiymsW2f8@public.gmane.org>
> ---
>  scripts/checkpatch.pl | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 464dcef..35ec185 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -2058,6 +2058,7 @@ sub process {
>  				my $vendor = $compat;
>  				my $vendor_path = $dt_path . "vendor-prefixes.txt";
>  				next if (! -f $vendor_path);
> +				next if not $vendor =~ /^[a-zA-Z0-9]+\,.*/;
>  				$vendor =~ s/^([a-zA-Z0-9]+)\,.*/$1/;
>  				`grep -Eq "$vendor" $vendor_path`;
>  				if ( $? >> 8 ) {

Some vendor names have dashes.
I don't know if underscores are allowed.

$ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
  sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
      1 compatible="active-semi
      8 compatible="asahi-kasei


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
  2014-02-27 20:10   ` Joe Perches
  (?)
@ 2014-02-27 20:24   ` Florian Vaussard
  2014-02-27 23:53       ` Joe Perches
  -1 siblings, 1 reply; 9+ messages in thread
From: Florian Vaussard @ 2014-02-27 20:24 UTC (permalink / raw)
  To: Joe Perches; +Cc: Andy Whitcroft, Rob Herring, devicetree, linux-kernel



On 02/27/2014 09:10 PM, Joe Perches wrote:
> On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
>> With a compatible string like
>>
>> compatible = "foo";
>>
>> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
>> which is wrong since the vendor prefix is empty in this specific case.
>>
>> Skip the vendor test if the compatible is not like
>>
>> compatible = "vendor,something";
>>
>> Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
>> ---
>>  scripts/checkpatch.pl | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
>> index 464dcef..35ec185 100755
>> --- a/scripts/checkpatch.pl
>> +++ b/scripts/checkpatch.pl
>> @@ -2058,6 +2058,7 @@ sub process {
>>  				my $vendor = $compat;
>>  				my $vendor_path = $dt_path . "vendor-prefixes.txt";
>>  				next if (! -f $vendor_path);
>> +				next if not $vendor =~ /^[a-zA-Z0-9]+\,.*/;
>>  				$vendor =~ s/^([a-zA-Z0-9]+)\,.*/$1/;
>>  				`grep -Eq "$vendor" $vendor_path`;
>>  				if ( $? >> 8 ) {
> 
> Some vendor names have dashes.
> I don't know if underscores are allowed.
> 
> $ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
>   sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
>       1 compatible="active-semi
>       8 compatible="asahi-kasei
> 

Good catch. In ePAPR v1.1, I could not find any strict requirement. It
is just saying:

The recommended format is “manufacturer,model”, where manufacturer is a
string describing the name of the manufacturer (such as a stock ticker
symbol), and model specifies the model number.

If I am not mistaking, the stock ticker symbol will not contain exotic
characters, but it is not always available. So we should probably add
the '-. I am not sure for the '_'.

Florian

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-27 23:53       ` Joe Perches
  0 siblings, 0 replies; 9+ messages in thread
From: Joe Perches @ 2014-02-27 23:53 UTC (permalink / raw)
  To: florian.vaussard; +Cc: Andy Whitcroft, Rob Herring, devicetree, linux-kernel

On Thu, 2014-02-27 at 21:24 +0100, Florian Vaussard wrote:
> On 02/27/2014 09:10 PM, Joe Perches wrote:
> > On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
> >> With a compatible string like
> >> compatible = "foo";
> >> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
> >> which is wrong since the vendor prefix is empty in this specific case.
[]
> > Some vendor names have dashes.
> > I don't know if underscores are allowed.
> > 
> > $ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
> >   sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
> >       1 compatible="active-semi
> >       8 compatible="asahi-kasei
[]
> In ePAPR v1.1, I could not find any strict requirement. It
> is just saying:
> 
> The recommended format is “manufacturer,model”, where manufacturer is a
> string describing the name of the manufacturer (such as a stock ticker
> symbol), and model specifies the model number.

Should there also be a check in .c and .h files for
	.compatible = "somestring"
and
	OF_DEV_AUXDATA("somestring",,,,)

?


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-27 23:53       ` Joe Perches
  0 siblings, 0 replies; 9+ messages in thread
From: Joe Perches @ 2014-02-27 23:53 UTC (permalink / raw)
  To: florian.vaussard-p8DiymsW2f8
  Cc: Andy Whitcroft, Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Thu, 2014-02-27 at 21:24 +0100, Florian Vaussard wrote:
> On 02/27/2014 09:10 PM, Joe Perches wrote:
> > On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
> >> With a compatible string like
> >> compatible = "foo";
> >> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
> >> which is wrong since the vendor prefix is empty in this specific case.
[]
> > Some vendor names have dashes.
> > I don't know if underscores are allowed.
> > 
> > $ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
> >   sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
> >       1 compatible="active-semi
> >       8 compatible="asahi-kasei
[]
> In ePAPR v1.1, I could not find any strict requirement. It
> is just saying:
> 
> The recommended format is “manufacturer,model”, where manufacturer is a
> string describing the name of the manufacturer (such as a stock ticker
> symbol), and model specifies the model number.

Should there also be a check in .c and .h files for
	.compatible = "somestring"
and
	OF_DEV_AUXDATA("somestring",,,,)

?

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
  2014-02-27 23:53       ` Joe Perches
@ 2014-02-28  1:24         ` Rob Herring
  -1 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2014-02-28  1:24 UTC (permalink / raw)
  To: Joe Perches; +Cc: Florian Vaussard, Andy Whitcroft, devicetree, linux-kernel

On Thu, Feb 27, 2014 at 5:53 PM, Joe Perches <joe@perches.com> wrote:
> On Thu, 2014-02-27 at 21:24 +0100, Florian Vaussard wrote:
>> On 02/27/2014 09:10 PM, Joe Perches wrote:
>> > On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
>> >> With a compatible string like
>> >> compatible = "foo";
>> >> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
>> >> which is wrong since the vendor prefix is empty in this specific case.
> []
>> > Some vendor names have dashes.
>> > I don't know if underscores are allowed.
>> >
>> > $ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
>> >   sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
>> >       1 compatible="active-semi
>> >       8 compatible="asahi-kasei
> []
>> In ePAPR v1.1, I could not find any strict requirement. It
>> is just saying:
>>
>> The recommended format is "manufacturer,model", where manufacturer is a
>> string describing the name of the manufacturer (such as a stock ticker
>> symbol), and model specifies the model number.
>
> Should there also be a check in .c and .h files for
>         .compatible = "somestring"

Ideally, yes. I didn't do that because I figured there would be too
many variations in formatting compared to dts files.

> and
>         OF_DEV_AUXDATA("somestring",,,,)

Probably not. OF_DEV_AUXDATA is hopefully temporary. There are 156
instances now and it looks like they've been going down since 3.8.

Rob

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] checkpatch: fix spurious vendor compatible warnings
@ 2014-02-28  1:24         ` Rob Herring
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2014-02-28  1:24 UTC (permalink / raw)
  To: Joe Perches
  Cc: Florian Vaussard, Andy Whitcroft,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Thu, Feb 27, 2014 at 5:53 PM, Joe Perches <joe-6d6DIl74uiNBDgjK7y7TUQ@public.gmane.org> wrote:
> On Thu, 2014-02-27 at 21:24 +0100, Florian Vaussard wrote:
>> On 02/27/2014 09:10 PM, Joe Perches wrote:
>> > On Thu, 2014-02-27 at 20:56 +0100, Florian Vaussard wrote:
>> >> With a compatible string like
>> >> compatible = "foo";
>> >> checkpatch will currently try to find "foo" in  vendor-prefixes.txt,
>> >> which is wrong since the vendor prefix is empty in this specific case.
> []
>> > Some vendor names have dashes.
>> > I don't know if underscores are allowed.
>> >
>> > $ grep -rP --include=*.[ch] -oh "compatible\s*=\s*\"[^,]+,\w" * | \
>> >   sed -r -e 's/\s//g' -e 's/,.$//' | sort | uniq -c | grep "[_-]"
>> >       1 compatible="active-semi
>> >       8 compatible="asahi-kasei
> []
>> In ePAPR v1.1, I could not find any strict requirement. It
>> is just saying:
>>
>> The recommended format is "manufacturer,model", where manufacturer is a
>> string describing the name of the manufacturer (such as a stock ticker
>> symbol), and model specifies the model number.
>
> Should there also be a check in .c and .h files for
>         .compatible = "somestring"

Ideally, yes. I didn't do that because I figured there would be too
many variations in formatting compared to dts files.

> and
>         OF_DEV_AUXDATA("somestring",,,,)

Probably not. OF_DEV_AUXDATA is hopefully temporary. There are 156
instances now and it looks like they've been going down since 3.8.

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2014-02-28  1:24 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-27 19:56 [PATCH] checkpatch: fix spurious vendor compatible warnings Florian Vaussard
2014-02-27 19:56 ` Florian Vaussard
2014-02-27 20:10 ` Joe Perches
2014-02-27 20:10   ` Joe Perches
2014-02-27 20:24   ` Florian Vaussard
2014-02-27 23:53     ` Joe Perches
2014-02-27 23:53       ` Joe Perches
2014-02-28  1:24       ` Rob Herring
2014-02-28  1:24         ` Rob Herring

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.