diff mbox

[v3] of: replace Asahi Kasei Corp venter prefix

Message ID 87k32yd0bd.wl%kuninori.morimoto.gx@renesas.com (mailing list archive)
State New, archived
Headers show

Commit Message

Kuninori Morimoto Nov. 14, 2014, 1:43 a.m. UTC
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

Current vendor-prefixes.txt already has
"ak" prefix for Asahi Kasei Corp by
ae8c4209af2cec065fef15d200a42a04130799f7
(of: Add vendor prefix for Asahi Kasei Corp.)

It went through the appropriate review process.
But, almost all Asahi Kasei chip drivers are
using "asahi-kasei" prefix today.
(arch/arm/boot/dts/tegra20-seaboard.dts only is
using "ak,ak8975", but there are instances of
"asahi-kasei,ak8975" in other dts files.
And drivers/iio/magnetometer/ak8975.c
doesn't support "ak,ak8975")
So, we made a mistake there.

In addition, checkpatch.pl reports WARNING
if it is using "asahi-kasei" prerfix in DT file.
(DT compatible string vendor "asahi-kasei" appears un-documented)

Marking it deprecated and warning with checkpatch
is certainly preferable.
So, this patch replace "ak" to "asahi-kasei" in
vendor-prefixes.txt. (and fixup tegra20-seaboard)

OTOH, Asahi Kasei is usually referred to as "AKM",
but this patch doesn't care about it.
Because no DT is using that today.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 .../devicetree/bindings/vendor-prefixes.txt        |    2 +-
 arch/arm/boot/dts/tegra20-seaboard.dts             |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

Alexandre Courbot Nov. 14, 2014, 8:38 a.m. UTC | #1
On 11/14/2014 10:43 AM, Kuninori Morimoto wrote:
> From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>
> Current vendor-prefixes.txt already has
> "ak" prefix for Asahi Kasei Corp by
> ae8c4209af2cec065fef15d200a42a04130799f7
> (of: Add vendor prefix for Asahi Kasei Corp.)
>
> It went through the appropriate review process.
> But, almost all Asahi Kasei chip drivers are
> using "asahi-kasei" prefix today.
> (arch/arm/boot/dts/tegra20-seaboard.dts only is
> using "ak,ak8975", but there are instances of
> "asahi-kasei,ak8975" in other dts files.
> And drivers/iio/magnetometer/ak8975.c
> doesn't support "ak,ak8975")
> So, we made a mistake there.
>
> In addition, checkpatch.pl reports WARNING
> if it is using "asahi-kasei" prerfix in DT file.
> (DT compatible string vendor "asahi-kasei" appears un-documented)
>
> Marking it deprecated and warning with checkpatch
> is certainly preferable.
> So, this patch replace "ak" to "asahi-kasei" in
> vendor-prefixes.txt. (and fixup tegra20-seaboard)
>
> OTOH, Asahi Kasei is usually referred to as "AKM",
> but this patch doesn't care about it.
> Because no DT is using that today.
>
> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> ---
>   .../devicetree/bindings/vendor-prefixes.txt        |    2 +-
>   arch/arm/boot/dts/tegra20-seaboard.dts             |    2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
> index 723999d..ddcb4cd 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -9,7 +9,6 @@ ad	Avionic Design GmbH
>   adapteva	Adapteva, Inc.
>   adi	Analog Devices, Inc.
>   aeroflexgaisler	Aeroflex Gaisler AB
> -ak	Asahi Kasei Corp.
>   allwinner	Allwinner Technology Co., Ltd.
>   altr	Altera Corp.
>   amcc	Applied Micro Circuits Corporation (APM, formally AMCC)
> @@ -20,6 +19,7 @@ amstaos	AMS-Taos Inc.
>   apm	Applied Micro Circuits Corporation (APM)
>   arm	ARM Ltd.
>   armadeus	ARMadeus Systems SARL
> +asahi-kasei	Asahi Kasei Corp.
>   atmel	Atmel Corporation
>   auo	AU Optronics Corporation
>   avago	Avago Technologies
> diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts
> index a1d4bf9..7f5cf80 100644
> --- a/arch/arm/boot/dts/tegra20-seaboard.dts
> +++ b/arch/arm/boot/dts/tegra20-seaboard.dts
> @@ -405,7 +405,7 @@
>   		clock-frequency = <400000>;
>
>   		magnetometer@c {
> -			compatible = "ak,ak8975";
> +			compatible = "asahi-kasei,ak8975";

Mmm. So does this mean this device was never probed because the driver 
did not recognize its compatible property? I cannot find "ak,ak8975" 
anywhere else in the kernel.

If so,

Acked-by: Alexandre Courbot <acourbot@nvidia.com>
Arnd Bergmann Nov. 14, 2014, 9:16 a.m. UTC | #2
On Friday 14 November 2014 17:38:58 Alexandre Courbot wrote:
> > diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts
> > index a1d4bf9..7f5cf80 100644
> > --- a/arch/arm/boot/dts/tegra20-seaboard.dts
> > +++ b/arch/arm/boot/dts/tegra20-seaboard.dts
> > @@ -405,7 +405,7 @@
> >               clock-frequency = <400000>;
> >
> >               magnetometer@c {
> > -                     compatible = "ak,ak8975";
> > +                     compatible = "asahi-kasei,ak8975";
> 
> Mmm. So does this mean this device was never probed because the driver 
> did not recognize its compatible property? I cannot find "ak,ak8975" 
> anywhere else in the kernel.
> 

No, the i2c bus behaves in a special way by matching the "ak8975"
i2c driver name with any "*,ak8975" DT compatible string. Both
of the above will work with existing kernels.

	Arnd
Thierry Reding Nov. 14, 2014, 9:30 a.m. UTC | #3
On Fri, Nov 14, 2014 at 05:38:58PM +0900, Alexandre Courbot wrote:
> On 11/14/2014 10:43 AM, Kuninori Morimoto wrote:
[...]
> >diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts
> >index a1d4bf9..7f5cf80 100644
> >--- a/arch/arm/boot/dts/tegra20-seaboard.dts
> >+++ b/arch/arm/boot/dts/tegra20-seaboard.dts
> >@@ -405,7 +405,7 @@
> >  		clock-frequency = <400000>;
> >
> >  		magnetometer@c {
> >-			compatible = "ak,ak8975";
> >+			compatible = "asahi-kasei,ak8975";
> 
> Mmm. So does this mean this device was never probed because the driver did
> not recognize its compatible property?

I2C (like SPI) has a fallback in case the OF table yields no match. The
of_modalias_node() that it uses extracts the module name from the device
tree node's compatible string by skipping the vendor prefix. The
resulting string is then set as the I2C client's name and causes the I2C
standard ID matching to succeed (see of_i2c_register_devices() for how
this is done in detail).

> I cannot find "ak,ak8975" anywhere else in the kernel.
> 
> If so,
> 
> Acked-by: Alexandre Courbot <acourbot@nvidia.com>

Technically this is breaking backwards-compatibility from a DT
perspective, but I think it's safe to do because the Linux kernel has a
way of dealing with this and other operating systems should be able to
deal with this in a similar way (or even easier by letting the driver
match on the ak prefix as well for this particular chip).

So:

Acked-by: Thierry Reding <treding@nvidia.com>
Thierry Reding Nov. 14, 2014, 9:35 a.m. UTC | #4
On Fri, Nov 14, 2014 at 01:43:03AM +0000, Kuninori Morimoto wrote:
> From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
> 
> Current vendor-prefixes.txt already has
> "ak" prefix for Asahi Kasei Corp by
> ae8c4209af2cec065fef15d200a42a04130799f7

It's usually enough to show the first 12 (or so) characters of the SHA1
here. git will show you the right one if you do something like:

	git log --abbrev=12 --abbrev-commit

It's probably useful to "git config core.abbrev 12" for Linux kernel
repositories.

Other than that it seems like you're being overly careful about not
exceeding 72 characters. Your lines seem to wrap at around less than
50 columns. However, making lines too short results in equally hard to
read commit messages, so please try to shoot for 72 columns for maximum
readability.

Thierry
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 723999d..ddcb4cd 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -9,7 +9,6 @@  ad	Avionic Design GmbH
 adapteva	Adapteva, Inc.
 adi	Analog Devices, Inc.
 aeroflexgaisler	Aeroflex Gaisler AB
-ak	Asahi Kasei Corp.
 allwinner	Allwinner Technology Co., Ltd.
 altr	Altera Corp.
 amcc	Applied Micro Circuits Corporation (APM, formally AMCC)
@@ -20,6 +19,7 @@  amstaos	AMS-Taos Inc.
 apm	Applied Micro Circuits Corporation (APM)
 arm	ARM Ltd.
 armadeus	ARMadeus Systems SARL
+asahi-kasei	Asahi Kasei Corp.
 atmel	Atmel Corporation
 auo	AU Optronics Corporation
 avago	Avago Technologies
diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts
index a1d4bf9..7f5cf80 100644
--- a/arch/arm/boot/dts/tegra20-seaboard.dts
+++ b/arch/arm/boot/dts/tegra20-seaboard.dts
@@ -405,7 +405,7 @@ 
 		clock-frequency = <400000>;
 
 		magnetometer@c {
-			compatible = "ak,ak8975";
+			compatible = "asahi-kasei,ak8975";
 			reg = <0xc>;
 			interrupt-parent = <&gpio>;
 			interrupts = <TEGRA_GPIO(N, 5) IRQ_TYPE_LEVEL_HIGH>;