* [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 @ 2013-01-03 0:20 Kukjin Kim 2013-01-03 0:20 ` [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl Kukjin Kim ` (2 more replies) 0 siblings, 3 replies; 12+ messages in thread From: Kukjin Kim @ 2013-01-03 0:20 UTC (permalink / raw) To: linux-samsung-soc Cc: Thomas Abraham, Linus Walleij, Grant Likely, Kukjin Kim, devicetree-discuss From: Thomas Abraham <thomas.ab@samsung.com> Fix the incorrect compatible property value of pin-controller module EXYNOS5440 SoC. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Grant Likely <grant.likely@secretlab.ca> [kgene.kim@samsung.com: fixed it in gpio together for exynos5440] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Cc: devicetree-discuss@lists.ozlabs.org --- arch/arm/boot/dts/exynos5440.dtsi | 2 +- drivers/gpio/gpio-samsung.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/exynos5440.dtsi b/arch/arm/boot/dts/exynos5440.dtsi index 024269d..25f0fa6 100644 --- a/arch/arm/boot/dts/exynos5440.dtsi +++ b/arch/arm/boot/dts/exynos5440.dtsi @@ -86,7 +86,7 @@ }; pinctrl { - compatible = "samsung,pinctrl-exynos5440"; + compatible = "samsung,exynos5440-pinctrl"; reg = <0xE0000 0x1000>; interrupt-controller; #interrupt-cells = <2>; diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c index 953737d..cac4b45 100644 --- a/drivers/gpio/gpio-samsung.c +++ b/drivers/gpio/gpio-samsung.c @@ -3026,7 +3026,7 @@ static __init int samsung_gpiolib_init(void) static const struct of_device_id exynos_pinctrl_ids[] = { { .compatible = "samsung,pinctrl-exynos4210", }, { .compatible = "samsung,pinctrl-exynos4x12", }, - { .compatible = "samsung,pinctrl-exynos5440", }, + { .compatible = "samsung,exynos5440-pinctrl", }, }; for_each_matching_node(pctrl_np, exynos_pinctrl_ids) if (pctrl_np && of_device_is_available(pctrl_np)) -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl 2013-01-03 0:20 [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 Kukjin Kim @ 2013-01-03 0:20 ` Kukjin Kim 2013-01-05 22:57 ` Olof Johansson ` (2 more replies) [not found] ` <1357172423-8217-1-git-send-email-kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2013-01-17 8:34 ` Linus Walleij 2 siblings, 3 replies; 12+ messages in thread From: Kukjin Kim @ 2013-01-03 0:20 UTC (permalink / raw) To: linux-samsung-soc Cc: Kukjin Kim, Thomas Abraham, Linus Walleij, Grant Likely, devicetree-discuss Fix the incorrect compatible property value of pinctrl for EXYNOS4 SoCs. Cc: Thomas Abraham <thomas.ab@samsung.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Cc: devicetree-discuss@lists.ozlabs.org --- .../devicetree/bindings/pinctrl/samsung-pinctrl.txt | 12 ++++++------ arch/arm/boot/dts/exynos4210.dtsi | 6 +++--- arch/arm/boot/dts/exynos4x12.dtsi | 8 ++++---- arch/arm/mach-exynos/common.c | 4 ++-- drivers/gpio/gpio-samsung.c | 4 ++-- drivers/pinctrl/pinctrl-samsung.c | 4 ++-- 6 files changed, 19 insertions(+), 19 deletions(-) diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt index e97a278..4598a47 100644 --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt @@ -7,9 +7,9 @@ on-chip controllers onto these pads. Required Properties: - compatible: should be one of the following. - - "samsung,pinctrl-exynos4210": for Exynos4210 compatible pin-controller. - - "samsung,pinctrl-exynos4x12": for Exynos4x12 compatible pin-controller. - - "samsung,pinctrl-exynos5250": for Exynos5250 compatible pin-controller. + - "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin-controller. + - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible pin-controller. + - "samsung,exynos5250-pinctrl": for Exynos5250 compatible pin-controller. - reg: Base address of the pin controller hardware module and length of the address space it occupies. @@ -142,7 +142,7 @@ the following format 'pinctrl{n}' where n is a unique number for the alias. Example: A pin-controller node with pin banks: pinctrl_0: pinctrl@11400000 { - compatible = "samsung,pinctrl-exynos4210"; + compatible = "samsung,exynos4210-pinctrl"; reg = <0x11400000 0x1000>; interrupts = <0 47 0>; @@ -185,7 +185,7 @@ Example: A pin-controller node with pin banks: Example 1: A pin-controller node with pin groups. pinctrl_0: pinctrl@11400000 { - compatible = "samsung,pinctrl-exynos4210"; + compatible = "samsung,exynos4210-pinctrl"; reg = <0x11400000 0x1000>; interrupts = <0 47 0>; @@ -230,7 +230,7 @@ Example 1: A pin-controller node with pin groups. Example 2: A pin-controller node with external wakeup interrupt controller node. pinctrl_1: pinctrl@11000000 { - compatible = "samsung,pinctrl-exynos4210"; + compatible = "samsung,exynos4210-pinctrl"; reg = <0x11000000 0x1000>; interrupts = <0 46 0> diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi index e31bfc4..2feffc7 100644 --- a/arch/arm/boot/dts/exynos4210.dtsi +++ b/arch/arm/boot/dts/exynos4210.dtsi @@ -48,13 +48,13 @@ }; pinctrl_0: pinctrl@11400000 { - compatible = "samsung,pinctrl-exynos4210"; + compatible = "samsung,exynos4210-pinctrl"; reg = <0x11400000 0x1000>; interrupts = <0 47 0>; }; pinctrl_1: pinctrl@11000000 { - compatible = "samsung,pinctrl-exynos4210"; + compatible = "samsung,exynos4210-pinctrl"; reg = <0x11000000 0x1000>; interrupts = <0 46 0>; @@ -66,7 +66,7 @@ }; pinctrl_2: pinctrl@03860000 { - compatible = "samsung,pinctrl-exynos4210"; + compatible = "samsung,exynos4210-pinctrl"; reg = <0x03860000 0x1000>; }; diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi index 179a62e..9a87806 100644 --- a/arch/arm/boot/dts/exynos4x12.dtsi +++ b/arch/arm/boot/dts/exynos4x12.dtsi @@ -37,13 +37,13 @@ }; pinctrl_0: pinctrl@11400000 { - compatible = "samsung,pinctrl-exynos4x12"; + compatible = "samsung,exynos4x12-pinctrl"; reg = <0x11400000 0x1000>; interrupts = <0 47 0>; }; pinctrl_1: pinctrl@11000000 { - compatible = "samsung,pinctrl-exynos4x12"; + compatible = "samsung,exynos4x12-pinctrl"; reg = <0x11000000 0x1000>; interrupts = <0 46 0>; @@ -55,14 +55,14 @@ }; pinctrl_2: pinctrl@03860000 { - compatible = "samsung,pinctrl-exynos4x12"; + compatible = "samsung,exynos4x12-pinctrl"; reg = <0x03860000 0x1000>; interrupt-parent = <&combiner>; interrupts = <10 0>; }; pinctrl_3: pinctrl@106E0000 { - compatible = "samsung,pinctrl-exynos4x12"; + compatible = "samsung,exynos4x12-pinctrl"; reg = <0x106E0000 0x1000>; interrupts = <0 72 0>; }; diff --git a/arch/arm/mach-exynos/common.c b/arch/arm/mach-exynos/common.c index d6d0dc6..3777a41 100644 --- a/arch/arm/mach-exynos/common.c +++ b/arch/arm/mach-exynos/common.c @@ -1024,8 +1024,8 @@ static int __init exynos_init_irq_eint(void) * interrupt support code here can be completely removed. */ static const struct of_device_id exynos_pinctrl_ids[] = { - { .compatible = "samsung,pinctrl-exynos4210", }, - { .compatible = "samsung,pinctrl-exynos4x12", }, + { .compatible = "samsung,exynos4210-pinctrl", }, + { .compatible = "samsung,exynos4x12-pinctrl", }, }; struct device_node *pctrl_np, *wkup_np; const char *wkup_compat = "samsung,exynos4210-wakeup-eint"; diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c index cac4b45..8c00f7d 100644 --- a/drivers/gpio/gpio-samsung.c +++ b/drivers/gpio/gpio-samsung.c @@ -3024,8 +3024,8 @@ static __init int samsung_gpiolib_init(void) */ struct device_node *pctrl_np; static const struct of_device_id exynos_pinctrl_ids[] = { - { .compatible = "samsung,pinctrl-exynos4210", }, - { .compatible = "samsung,pinctrl-exynos4x12", }, + { .compatible = "samsung,exynos4210-pinctrl", }, + { .compatible = "samsung,exynos4x12-pinctrl", }, { .compatible = "samsung,exynos5440-pinctrl", }, }; for_each_matching_node(pctrl_np, exynos_pinctrl_ids) diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c index 864fed8..602b30b 100644 --- a/drivers/pinctrl/pinctrl-samsung.c +++ b/drivers/pinctrl/pinctrl-samsung.c @@ -945,9 +945,9 @@ static int __devinit samsung_pinctrl_probe(struct platform_device *pdev) } static const struct of_device_id samsung_pinctrl_dt_match[] = { - { .compatible = "samsung,pinctrl-exynos4210", + { .compatible = "samsung,exynos4210-pinctrl", .data = (void *)exynos4210_pin_ctrl }, - { .compatible = "samsung,pinctrl-exynos4x12", + { .compatible = "samsung,exynos4x12-pinctrl", .data = (void *)exynos4x12_pin_ctrl }, {}, }; -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl 2013-01-03 0:20 ` [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl Kukjin Kim @ 2013-01-05 22:57 ` Olof Johansson 2013-01-10 1:34 ` Kukjin Kim 2013-01-17 10:16 ` Tomasz Figa 2013-01-17 11:06 ` Tomasz Figa 2013-01-17 14:03 ` Linus Walleij 2 siblings, 2 replies; 12+ messages in thread From: Olof Johansson @ 2013-01-05 22:57 UTC (permalink / raw) To: Kukjin Kim Cc: linux-samsung-soc, Thomas Abraham, Linus Walleij, Grant Likely, devicetree-discuss On Wed, Jan 2, 2013 at 4:20 PM, Kukjin Kim <kgene.kim@samsung.com> wrote: > Fix the incorrect compatible property value of pinctrl for EXYNOS4 SoCs. Ah, this answers my question from the previous patch. So, why do 5450 as a separate patch? > diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > index e97a278..4598a47 100644 > --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > @@ -7,9 +7,9 @@ on-chip controllers onto these pads. > > Required Properties: > - compatible: should be one of the following. > - - "samsung,pinctrl-exynos4210": for Exynos4210 compatible pin-controller. > - - "samsung,pinctrl-exynos4x12": for Exynos4x12 compatible pin-controller. > - - "samsung,pinctrl-exynos5250": for Exynos5250 compatible pin-controller. > + - "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin-controller. > + - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible pin-controller. > + - "samsung,exynos5250-pinctrl": for Exynos5250 compatible pin-controller. Do we care about backwards compatibility for ARM device trees yet? It's becoming time to start caring soon, if we don't. So while this might be OK for this time around, we should start requiring some backwards compatibility for bindings that have been used in at least one released kernel. Once we do care, then you can update the dts/dtsi files, but you'll need to keep both the old and the new bindings in the C file below. > diff --git a/arch/arm/mach-exynos/common.c b/arch/arm/mach-exynos/common.c > index d6d0dc6..3777a41 100644 > --- a/arch/arm/mach-exynos/common.c > +++ b/arch/arm/mach-exynos/common.c > @@ -1024,8 +1024,8 @@ static int __init exynos_init_irq_eint(void) > * interrupt support code here can be completely removed. > */ > static const struct of_device_id exynos_pinctrl_ids[] = { > - { .compatible = "samsung,pinctrl-exynos4210", }, > - { .compatible = "samsung,pinctrl-exynos4x12", }, > + { .compatible = "samsung,exynos4210-pinctrl", }, > + { .compatible = "samsung,exynos4x12-pinctrl", }, > }; > struct device_node *pctrl_np, *wkup_np; > const char *wkup_compat = "samsung,exynos4210-wakeup-eint"; > diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c > index cac4b45..8c00f7d 100644 > --- a/drivers/gpio/gpio-samsung.c > +++ b/drivers/gpio/gpio-samsung.c > @@ -3024,8 +3024,8 @@ static __init int samsung_gpiolib_init(void) > */ > struct device_node *pctrl_np; > static const struct of_device_id exynos_pinctrl_ids[] = { > - { .compatible = "samsung,pinctrl-exynos4210", }, > - { .compatible = "samsung,pinctrl-exynos4x12", }, > + { .compatible = "samsung,exynos4210-pinctrl", }, > + { .compatible = "samsung,exynos4x12-pinctrl", }, > { .compatible = "samsung,exynos5440-pinctrl", }, > }; > for_each_matching_node(pctrl_np, exynos_pinctrl_ids) > diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c > index 864fed8..602b30b 100644 > --- a/drivers/pinctrl/pinctrl-samsung.c > +++ b/drivers/pinctrl/pinctrl-samsung.c > @@ -945,9 +945,9 @@ static int __devinit samsung_pinctrl_probe(struct platform_device *pdev) > } > > static const struct of_device_id samsung_pinctrl_dt_match[] = { > - { .compatible = "samsung,pinctrl-exynos4210", > + { .compatible = "samsung,exynos4210-pinctrl", > .data = (void *)exynos4210_pin_ctrl }, > - { .compatible = "samsung,pinctrl-exynos4x12", > + { .compatible = "samsung,exynos4x12-pinctrl", > .data = (void *)exynos4x12_pin_ctrl }, > {}, > }; -Olof ^ permalink raw reply [flat|nested] 12+ messages in thread
* RE: [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl 2013-01-05 22:57 ` Olof Johansson @ 2013-01-10 1:34 ` Kukjin Kim 2013-01-17 10:16 ` Tomasz Figa 1 sibling, 0 replies; 12+ messages in thread From: Kukjin Kim @ 2013-01-10 1:34 UTC (permalink / raw) To: 'Olof Johansson' Cc: linux-samsung-soc, 'Thomas Abraham', 'Linus Walleij', 'Grant Likely', devicetree-discuss Olof Johansson wrote: > > On Wed, Jan 2, 2013 at 4:20 PM, Kukjin Kim <kgene.kim@samsung.com> > wrote: > > Fix the incorrect compatible property value of pinctrl for EXYNOS4 SoCs. > > Ah, this answers my question from the previous patch. So, why do 5450 > as a separate patch? > OK, let me create one patch to fix it :-) > > > diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > > index e97a278..4598a47 100644 > > --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > > +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > > @@ -7,9 +7,9 @@ on-chip controllers onto these pads. > > > > Required Properties: > > - compatible: should be one of the following. > > - - "samsung,pinctrl-exynos4210": for Exynos4210 compatible pin- > controller. > > - - "samsung,pinctrl-exynos4x12": for Exynos4x12 compatible pin- > controller. > > - - "samsung,pinctrl-exynos5250": for Exynos5250 compatible pin- > controller. > > + - "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin- > controller. > > + - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible pin- > controller. > > + - "samsung,exynos5250-pinctrl": for Exynos5250 compatible pin- > controller. > > Do we care about backwards compatibility for ARM device trees yet? > It's becoming time to start caring soon, if we don't. So while this > might be OK for this time around, we should start requiring some > backwards compatibility for bindings that have been used in at least > one released kernel. > Agree, let me check again. > Once we do care, then you can update the dts/dtsi files, but you'll > need to keep both the old and the new bindings in the C file below. > OK, I see. Thanks. [...] - Kukjin ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl 2013-01-05 22:57 ` Olof Johansson 2013-01-10 1:34 ` Kukjin Kim @ 2013-01-17 10:16 ` Tomasz Figa 1 sibling, 0 replies; 12+ messages in thread From: Tomasz Figa @ 2013-01-17 10:16 UTC (permalink / raw) To: Olof Johansson Cc: Kukjin Kim, linux-samsung-soc, Thomas Abraham, Linus Walleij, Grant Likely, devicetree-discuss Hi Olof, On Saturday 05 of January 2013 14:57:54 Olof Johansson wrote: > On Wed, Jan 2, 2013 at 4:20 PM, Kukjin Kim <kgene.kim@samsung.com> wrote: > > Fix the incorrect compatible property value of pinctrl for EXYNOS4 > > SoCs. > Ah, this answers my question from the previous patch. So, why do 5450 > as a separate patch? > > > diff --git > > a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > > b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt index > > e97a278..4598a47 100644 > > --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > > +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > > @@ -7,9 +7,9 @@ on-chip controllers onto these pads. > > > > Required Properties: > > - compatible: should be one of the following. > > > > - - "samsung,pinctrl-exynos4210": for Exynos4210 compatible > > pin-controller. - - "samsung,pinctrl-exynos4x12": for Exynos4x12 > > compatible pin-controller. - - "samsung,pinctrl-exynos5250": for > > Exynos5250 compatible pin-controller. + - > > "samsung,exynos4210-pinctrl": for Exynos4210 compatible > > pin-controller. + - "samsung,exynos4x12-pinctrl": for Exynos4x12 > > compatible pin-controller. + - "samsung,exynos5250-pinctrl": for > > Exynos5250 compatible pin-controller. > Do we care about backwards compatibility for ARM device trees yet? > It's becoming time to start caring soon, if we don't. So while this > might be OK for this time around, we should start requiring some > backwards compatibility for bindings that have been used in at least > one released kernel. This also brings the general problem of dts verification. As of now, we don't have any way of checking dts files for compliance with defined bindings. Moreover we don't even have a way of defining those bindings other than plain text documentation. Now, the problem is that anyone can put anything in their device tree sources and we can't check if the information is specified correctly by any other means that someone reading it and confirming with documentation and/or driver code (the documentation isn't always up to date...). I remember there was some effort going towards encoding device tree bindings using something like XML schemas, but I'm not sure to what point it got and what was the conclusion. (Personally I think that it was a bit overcomplicated, but I never had time to polish and implement some of my ideas, eventually letting the problem fade off from my mind.) Best regards, -- Tomasz Figa Samsung Poland R&D Center SW Solution Development, Linux Platform ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl 2013-01-03 0:20 ` [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl Kukjin Kim 2013-01-05 22:57 ` Olof Johansson @ 2013-01-17 11:06 ` Tomasz Figa 2013-01-17 14:03 ` Linus Walleij 2 siblings, 0 replies; 12+ messages in thread From: Tomasz Figa @ 2013-01-17 11:06 UTC (permalink / raw) To: Kukjin Kim Cc: linux-samsung-soc, Thomas Abraham, Linus Walleij, Grant Likely, devicetree-discuss Hi Kukjin, On Wednesday 02 of January 2013 16:20:23 Kukjin Kim wrote: > Fix the incorrect compatible property value of pinctrl for EXYNOS4 SoCs. > > Cc: Thomas Abraham <thomas.ab@samsung.com> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Grant Likely <grant.likely@secretlab.ca> > Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> > Cc: devicetree-discuss@lists.ozlabs.org > --- > .../devicetree/bindings/pinctrl/samsung-pinctrl.txt | 12 > ++++++------ arch/arm/boot/dts/exynos4210.dtsi > | 6 +++--- arch/arm/boot/dts/exynos4x12.dtsi > | 8 ++++---- arch/arm/mach-exynos/common.c > | 4 ++-- drivers/gpio/gpio-samsung.c > | 4 ++-- drivers/pinctrl/pinctrl-samsung.c > | 4 ++-- 6 files changed, 19 insertions(+), 19 deletions(-) > > diff --git > a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt index > e97a278..4598a47 100644 > --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt > @@ -7,9 +7,9 @@ on-chip controllers onto these pads. > > Required Properties: > - compatible: should be one of the following. > - - "samsung,pinctrl-exynos4210": for Exynos4210 compatible > pin-controller. - - "samsung,pinctrl-exynos4x12": for Exynos4x12 > compatible pin-controller. - - "samsung,pinctrl-exynos5250": for > Exynos5250 compatible pin-controller. + - > "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin-controller. > + - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible > pin-controller. + - "samsung,exynos5250-pinctrl": for Exynos5250 > compatible pin-controller. > > - reg: Base address of the pin controller hardware module and length of > the address space it occupies. > @@ -142,7 +142,7 @@ the following format 'pinctrl{n}' where n is a > unique number for the alias. Example: A pin-controller node with pin > banks: > > pinctrl_0: pinctrl@11400000 { > - compatible = "samsung,pinctrl-exynos4210"; > + compatible = "samsung,exynos4210-pinctrl"; > reg = <0x11400000 0x1000>; > interrupts = <0 47 0>; > > @@ -185,7 +185,7 @@ Example: A pin-controller node with pin banks: > Example 1: A pin-controller node with pin groups. > > pinctrl_0: pinctrl@11400000 { > - compatible = "samsung,pinctrl-exynos4210"; > + compatible = "samsung,exynos4210-pinctrl"; > reg = <0x11400000 0x1000>; > interrupts = <0 47 0>; > > @@ -230,7 +230,7 @@ Example 1: A pin-controller node with pin groups. > Example 2: A pin-controller node with external wakeup interrupt > controller node. > > pinctrl_1: pinctrl@11000000 { > - compatible = "samsung,pinctrl-exynos4210"; > + compatible = "samsung,exynos4210-pinctrl"; > reg = <0x11000000 0x1000>; > interrupts = <0 46 0> > > diff --git a/arch/arm/boot/dts/exynos4210.dtsi > b/arch/arm/boot/dts/exynos4210.dtsi index e31bfc4..2feffc7 100644 > --- a/arch/arm/boot/dts/exynos4210.dtsi > +++ b/arch/arm/boot/dts/exynos4210.dtsi > @@ -48,13 +48,13 @@ > }; > > pinctrl_0: pinctrl@11400000 { > - compatible = "samsung,pinctrl-exynos4210"; > + compatible = "samsung,exynos4210-pinctrl"; > reg = <0x11400000 0x1000>; > interrupts = <0 47 0>; > }; > > pinctrl_1: pinctrl@11000000 { > - compatible = "samsung,pinctrl-exynos4210"; > + compatible = "samsung,exynos4210-pinctrl"; > reg = <0x11000000 0x1000>; > interrupts = <0 46 0>; > > @@ -66,7 +66,7 @@ > }; > > pinctrl_2: pinctrl@03860000 { > - compatible = "samsung,pinctrl-exynos4210"; > + compatible = "samsung,exynos4210-pinctrl"; > reg = <0x03860000 0x1000>; > }; > > diff --git a/arch/arm/boot/dts/exynos4x12.dtsi > b/arch/arm/boot/dts/exynos4x12.dtsi index 179a62e..9a87806 100644 > --- a/arch/arm/boot/dts/exynos4x12.dtsi > +++ b/arch/arm/boot/dts/exynos4x12.dtsi > @@ -37,13 +37,13 @@ > }; > > pinctrl_0: pinctrl@11400000 { > - compatible = "samsung,pinctrl-exynos4x12"; > + compatible = "samsung,exynos4x12-pinctrl"; > reg = <0x11400000 0x1000>; > interrupts = <0 47 0>; > }; > > pinctrl_1: pinctrl@11000000 { > - compatible = "samsung,pinctrl-exynos4x12"; > + compatible = "samsung,exynos4x12-pinctrl"; > reg = <0x11000000 0x1000>; > interrupts = <0 46 0>; > > @@ -55,14 +55,14 @@ > }; > > pinctrl_2: pinctrl@03860000 { > - compatible = "samsung,pinctrl-exynos4x12"; > + compatible = "samsung,exynos4x12-pinctrl"; > reg = <0x03860000 0x1000>; > interrupt-parent = <&combiner>; > interrupts = <10 0>; > }; > > pinctrl_3: pinctrl@106E0000 { > - compatible = "samsung,pinctrl-exynos4x12"; > + compatible = "samsung,exynos4x12-pinctrl"; > reg = <0x106E0000 0x1000>; > interrupts = <0 72 0>; > }; > diff --git a/arch/arm/mach-exynos/common.c > b/arch/arm/mach-exynos/common.c index d6d0dc6..3777a41 100644 > --- a/arch/arm/mach-exynos/common.c > +++ b/arch/arm/mach-exynos/common.c > @@ -1024,8 +1024,8 @@ static int __init exynos_init_irq_eint(void) > * interrupt support code here can be completely removed. > */ > static const struct of_device_id exynos_pinctrl_ids[] = { > - { .compatible = "samsung,pinctrl-exynos4210", }, > - { .compatible = "samsung,pinctrl-exynos4x12", }, > + { .compatible = "samsung,exynos4210-pinctrl", }, > + { .compatible = "samsung,exynos4x12-pinctrl", }, Since you are around these arrays of of_device_id, could you also add the missing terminators? There was a patch floating on the list some time ago, but it doesn't seem to be merged. > }; > struct device_node *pctrl_np, *wkup_np; > const char *wkup_compat = "samsung,exynos4210-wakeup-eint"; > diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c > index cac4b45..8c00f7d 100644 > --- a/drivers/gpio/gpio-samsung.c > +++ b/drivers/gpio/gpio-samsung.c > @@ -3024,8 +3024,8 @@ static __init int samsung_gpiolib_init(void) > */ > struct device_node *pctrl_np; > static const struct of_device_id exynos_pinctrl_ids[] = { > - { .compatible = "samsung,pinctrl-exynos4210", }, > - { .compatible = "samsung,pinctrl-exynos4x12", }, > + { .compatible = "samsung,exynos4210-pinctrl", }, > + { .compatible = "samsung,exynos4x12-pinctrl", }, > { .compatible = "samsung,exynos5440-pinctrl", }, Also here. Best regards, -- Tomasz Figa Samsung Poland R&D Center SW Solution Development, Linux Platform > }; > for_each_matching_node(pctrl_np, exynos_pinctrl_ids) > diff --git a/drivers/pinctrl/pinctrl-samsung.c > b/drivers/pinctrl/pinctrl-samsung.c index 864fed8..602b30b 100644 > --- a/drivers/pinctrl/pinctrl-samsung.c > +++ b/drivers/pinctrl/pinctrl-samsung.c > @@ -945,9 +945,9 @@ static int __devinit samsung_pinctrl_probe(struct > platform_device *pdev) } > > static const struct of_device_id samsung_pinctrl_dt_match[] = { > - { .compatible = "samsung,pinctrl-exynos4210", > + { .compatible = "samsung,exynos4210-pinctrl", > .data = (void *)exynos4210_pin_ctrl }, > - { .compatible = "samsung,pinctrl-exynos4x12", > + { .compatible = "samsung,exynos4x12-pinctrl", > .data = (void *)exynos4x12_pin_ctrl }, > {}, > }; ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl 2013-01-03 0:20 ` [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl Kukjin Kim 2013-01-05 22:57 ` Olof Johansson 2013-01-17 11:06 ` Tomasz Figa @ 2013-01-17 14:03 ` Linus Walleij 2 siblings, 0 replies; 12+ messages in thread From: Linus Walleij @ 2013-01-17 14:03 UTC (permalink / raw) To: Kukjin Kim Cc: linux-samsung-soc, Thomas Abraham, Grant Likely, devicetree-discuss On Thu, Jan 3, 2013 at 1:20 AM, Kukjin Kim <kgene.kim@samsung.com> wrote: > Fix the incorrect compatible property value of pinctrl for EXYNOS4 SoCs. > > Cc: Thomas Abraham <thomas.ab@samsung.com> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Grant Likely <grant.likely@secretlab.ca> > Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> > Cc: devicetree-discuss@lists.ozlabs.org Acked-by: Linus Walleij <linus.walleij@linaro.org> Thanks! Linus Walleij ^ permalink raw reply [flat|nested] 12+ messages in thread
[parent not found: <1357172423-8217-1-git-send-email-kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>]
* Re: [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 [not found] ` <1357172423-8217-1-git-send-email-kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> @ 2013-01-05 22:54 ` Olof Johansson 0 siblings, 0 replies; 12+ messages in thread From: Olof Johansson @ 2013-01-05 22:54 UTC (permalink / raw) To: Kukjin Kim Cc: linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA, Thomas Abraham, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ On Wed, Jan 2, 2013 at 4:20 PM, Kukjin Kim <kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> wrote: > From: Thomas Abraham <thomas.ab-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> > > Fix the incorrect compatible property value of pin-controller module > EXYNOS5440 SoC. > > Signed-off-by: Thomas Abraham <thomas.ab-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> > Cc: Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> > Cc: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org> > [kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org: fixed it in gpio together for exynos5440] > Signed-off-by: Kukjin Kim <kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> > Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org > --- > arch/arm/boot/dts/exynos5440.dtsi | 2 +- > drivers/gpio/gpio-samsung.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm/boot/dts/exynos5440.dtsi b/arch/arm/boot/dts/exynos5440.dtsi > index 024269d..25f0fa6 100644 > --- a/arch/arm/boot/dts/exynos5440.dtsi > +++ b/arch/arm/boot/dts/exynos5440.dtsi > @@ -86,7 +86,7 @@ > }; > > pinctrl { > - compatible = "samsung,pinctrl-exynos5440"; > + compatible = "samsung,exynos5440-pinctrl"; > reg = <0xE0000 0x1000>; > interrupt-controller; > #interrupt-cells = <2>; > diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c > index 953737d..cac4b45 100644 > --- a/drivers/gpio/gpio-samsung.c > +++ b/drivers/gpio/gpio-samsung.c > @@ -3026,7 +3026,7 @@ static __init int samsung_gpiolib_init(void) > static const struct of_device_id exynos_pinctrl_ids[] = { > { .compatible = "samsung,pinctrl-exynos4210", }, > { .compatible = "samsung,pinctrl-exynos4x12", }, > - { .compatible = "samsung,pinctrl-exynos5440", }, > + { .compatible = "samsung,exynos5440-pinctrl", }, Uugh. There's something to be said about consistency, even if it's possibly not 100% correct. Is it really worth it to have 5440 be the only one with the "right" naming here? -Olof ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 2013-01-03 0:20 [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 Kukjin Kim 2013-01-03 0:20 ` [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl Kukjin Kim [not found] ` <1357172423-8217-1-git-send-email-kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> @ 2013-01-17 8:34 ` Linus Walleij 2013-01-17 16:39 ` Stephen Warren 2013-01-18 2:24 ` Rob Herring 2 siblings, 2 replies; 12+ messages in thread From: Linus Walleij @ 2013-01-17 8:34 UTC (permalink / raw) To: Kukjin Kim, Rob Herring, Grant Likely, Stephen Warren Cc: linux-samsung-soc, Thomas Abraham, devicetree-discuss On Thu, Jan 3, 2013 at 1:20 AM, Kukjin Kim <kgene.kim@samsung.com> wrote: > From: Thomas Abraham <thomas.ab@samsung.com> > > Fix the incorrect compatible property value of pin-controller module > EXYNOS5440 SoC. > (...) > > pinctrl { > - compatible = "samsung,pinctrl-exynos5440"; > + compatible = "samsung,exynos5440-pinctrl"; > reg = <0xE0000 0x1000>; > interrupt-controller; > #interrupt-cells = <2>; > diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c > index 953737d..cac4b45 100644 > --- a/drivers/gpio/gpio-samsung.c > +++ b/drivers/gpio/gpio-samsung.c > @@ -3026,7 +3026,7 @@ static __init int samsung_gpiolib_init(void) > static const struct of_device_id exynos_pinctrl_ids[] = { > { .compatible = "samsung,pinctrl-exynos4210", }, > { .compatible = "samsung,pinctrl-exynos4x12", }, > - { .compatible = "samsung,pinctrl-exynos5440", }, > + { .compatible = "samsung,exynos5440-pinctrl", }, > }; > for_each_matching_node(pctrl_np, exynos_pinctrl_ids) > if (pctrl_np && of_device_is_available(pctrl_np)) I am tempted to apply this patch just to annoy people with obsessive-compulsive disorder (but that's a bit mean). Reference: http://izismile.com/2011/08/16/obnoxious_ways_to_drive_people_with_ocd_nuts_16_pics.html But I'd like a word from Rob, Grant or Stephen so I have some guidance here. Yours, Linus Walleij ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 2013-01-17 8:34 ` Linus Walleij @ 2013-01-17 16:39 ` Stephen Warren 2013-01-18 2:24 ` Rob Herring 1 sibling, 0 replies; 12+ messages in thread From: Stephen Warren @ 2013-01-17 16:39 UTC (permalink / raw) To: Linus Walleij Cc: Kukjin Kim, Rob Herring, Grant Likely, linux-samsung-soc, Thomas Abraham, devicetree-discuss On 01/17/2013 01:34 AM, Linus Walleij wrote: > On Thu, Jan 3, 2013 at 1:20 AM, Kukjin Kim <kgene.kim@samsung.com> wrote: > >> From: Thomas Abraham <thomas.ab@samsung.com> >> >> Fix the incorrect compatible property value of pin-controller module >> EXYNOS5440 SoC. >> > (...) >> >> pinctrl { >> - compatible = "samsung,pinctrl-exynos5440"; >> + compatible = "samsung,exynos5440-pinctrl"; >> reg = <0xE0000 0x1000>; >> interrupt-controller; >> #interrupt-cells = <2>; >> diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c >> index 953737d..cac4b45 100644 >> --- a/drivers/gpio/gpio-samsung.c >> +++ b/drivers/gpio/gpio-samsung.c >> @@ -3026,7 +3026,7 @@ static __init int samsung_gpiolib_init(void) >> static const struct of_device_id exynos_pinctrl_ids[] = { >> { .compatible = "samsung,pinctrl-exynos4210", }, >> { .compatible = "samsung,pinctrl-exynos4x12", }, >> - { .compatible = "samsung,pinctrl-exynos5440", }, >> + { .compatible = "samsung,exynos5440-pinctrl", }, >> }; >> for_each_matching_node(pctrl_np, exynos_pinctrl_ids) >> if (pctrl_np && of_device_is_available(pctrl_np)) > > I am tempted to apply this patch just to annoy people with > obsessive-compulsive disorder (but that's a bit mean). > Reference: > http://izismile.com/2011/08/16/obnoxious_ways_to_drive_people_with_ocd_nuts_16_pics.html Aargh. Those pencils are wrong:-) > But I'd like a word from Rob, Grant or Stephen so I have some > guidance here. Yes, the existing order looks odd c.f. existing practice. I notice that only one of the strangely ordered entries in exynos_pinctrl_ids[] is fixed. Surely they should all be fixed? It's probably worth adding the new names to exynos_pinctrl_ids[] rather than replacing them. That allows the driver to be backwards-compatible with older DTBs, and partially decouples the driver change from the .dts/.dtsi file. Still, the whole backwards-compatible DTB thing seems a little irrelevant when the .dts files are in the kernel source tree anyway. ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 2013-01-17 8:34 ` Linus Walleij 2013-01-17 16:39 ` Stephen Warren @ 2013-01-18 2:24 ` Rob Herring 2013-01-18 3:40 ` Kukjin Kim 1 sibling, 1 reply; 12+ messages in thread From: Rob Herring @ 2013-01-18 2:24 UTC (permalink / raw) To: Linus Walleij Cc: Kukjin Kim, Grant Likely, Stephen Warren, linux-samsung-soc, Thomas Abraham, devicetree-discuss On 01/17/2013 02:34 AM, Linus Walleij wrote: > On Thu, Jan 3, 2013 at 1:20 AM, Kukjin Kim <kgene.kim@samsung.com> wrote: > >> From: Thomas Abraham <thomas.ab@samsung.com> >> >> Fix the incorrect compatible property value of pin-controller module >> EXYNOS5440 SoC. >> > (...) >> >> pinctrl { >> - compatible = "samsung,pinctrl-exynos5440"; >> + compatible = "samsung,exynos5440-pinctrl"; >> reg = <0xE0000 0x1000>; >> interrupt-controller; >> #interrupt-cells = <2>; >> diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c >> index 953737d..cac4b45 100644 >> --- a/drivers/gpio/gpio-samsung.c >> +++ b/drivers/gpio/gpio-samsung.c >> @@ -3026,7 +3026,7 @@ static __init int samsung_gpiolib_init(void) >> static const struct of_device_id exynos_pinctrl_ids[] = { >> { .compatible = "samsung,pinctrl-exynos4210", }, >> { .compatible = "samsung,pinctrl-exynos4x12", }, >> - { .compatible = "samsung,pinctrl-exynos5440", }, >> + { .compatible = "samsung,exynos5440-pinctrl", }, >> }; >> for_each_matching_node(pctrl_np, exynos_pinctrl_ids) >> if (pctrl_np && of_device_is_available(pctrl_np)) > > I am tempted to apply this patch just to annoy people with > obsessive-compulsive disorder (but that's a bit mean). > Reference: > http://izismile.com/2011/08/16/obnoxious_ways_to_drive_people_with_ocd_nuts_16_pics.html > > But I'd like a word from Rob, Grant or Stephen so I have some > guidance here. As long as we're consistently inconsistent... What about 4210 and 4x12? Hopefully, the reason was to avoid breaking them. This creates horrible incompatibilities between dts and kernel versions by changing both. Any prior kernel will not work with this dts or later. And more importantly this kernel version or newer will not work with existing dtb's. We've been pretty lax on this as DT support has been under heavy development, but things need to start tightening up. That being said, if this isn't yet a concern for this platform, then I don't really care. Rob ^ permalink raw reply [flat|nested] 12+ messages in thread
* RE: [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 2013-01-18 2:24 ` Rob Herring @ 2013-01-18 3:40 ` Kukjin Kim 0 siblings, 0 replies; 12+ messages in thread From: Kukjin Kim @ 2013-01-18 3:40 UTC (permalink / raw) To: 'Rob Herring', 'Linus Walleij' Cc: 'Grant Likely', 'Stephen Warren', linux-samsung-soc, 'Thomas Abraham', devicetree-discuss Rob Herring wrote: [...] > > As long as we're consistently inconsistent... What about 4210 and 4x12? > Hopefully, the reason was to avoid breaking them. > > This creates horrible incompatibilities between dts and kernel versions > by changing both. Any prior kernel will not work with this dts or later. > And more importantly this kernel version or newer will not work with > existing dtb's. We've been pretty lax on this as DT support has been > under heavy development, but things need to start tightening up. That > being said, if this isn't yet a concern for this platform, then I don't > really care. > I think, this can be applied for v3.8 and this two fixes should be harmless for DT compatibility of Samsung stuff. If there is no other concerns, let me pick up with Linus Walleij's ack. Thanks. - Kukjin ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2013-01-18 3:40 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-01-03 0:20 [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 Kukjin Kim 2013-01-03 0:20 ` [PATCH 2/2] ARM: dts: fix compatible value for exynos pinctrl Kukjin Kim 2013-01-05 22:57 ` Olof Johansson 2013-01-10 1:34 ` Kukjin Kim 2013-01-17 10:16 ` Tomasz Figa 2013-01-17 11:06 ` Tomasz Figa 2013-01-17 14:03 ` Linus Walleij [not found] ` <1357172423-8217-1-git-send-email-kgene.kim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2013-01-05 22:54 ` [PATCH 1/2] ARM: dts: Fix compatible value of pinctrl module on EXYNOS5440 Olof Johansson 2013-01-17 8:34 ` Linus Walleij 2013-01-17 16:39 ` Stephen Warren 2013-01-18 2:24 ` Rob Herring 2013-01-18 3:40 ` Kukjin Kim
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).