Renesas ARM based SoC pinmux updates for v3.12
Subsystems (5)
cover Renesas ARM based SoC pinmux updates for v3.12
The following changes since commit ad81f0545ef01ea651886dddac4bef6cec930092:
Linux 3.11-rc1 (2013-07-14 15:18:27 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-pinmux-for-v3.12
for you to fetch changes up to 838a7070ce8bfff11e19ed434edd9a4423b478bd:
ARM: shmobile: kzm9g-reference: Add LED1-LED4 to the device tree (2013-07-16 12:55:04 +0900)
----------------------------------------------------------------
Renesas ARM based SoC pinmux updates for v3.12
SH Mobile pinctrl DT support
----------------------------------------------------------------
Laurent Pinchart (19):
ARM: shmobile: r8a73a4: Add pin control device to device tree
ARM: shmobile: r8a7740: Add pin control device to device tree
ARM: shmobile: r8a7778: Add pin control device to device tree
ARM: shmobile: r8a7778: Add GPIO controller devices to device tree
ARM: shmobile: r8a7779: Add pin control device to device tree
ARM: shmobile: r8a7779: Add GPIO controller devices to device tree
ARM: shmobile: r8a7790: Add pin control device to device tree
ARM: shmobile: r8a7790: Add GPIO controller devices to device tree
ARM: shmobile: sh7372: Add pin control device to device tree
ARM: shmobile: sh73a0: Add pin control device to device tree
ARM: shmobile: armadillo-reference: Move pinctrl mappings to device tree
ARM: shmobile: armadillo-reference: Add st1232 pin mappings
ARM: shmobile: armadillo-reference: Move st1232 reset GPIO to DT
ARM: shmobile: armadillo-reference: Add LED1-LED4 to the device tree
ARM: shmobile: marzen-reference: Move pinctrl mappings to device tree
ARM: shmobile: marzen-reference: Add LED2-LED4 to the device tree
ARM: shmobile: kzm9g-reference: Move pinctrl mappings to device tree
ARM: shmobile: kzm9g-reference: Move SDHI regulators to DT
ARM: shmobile: kzm9g-reference: Add LED1-LED4 to the device tree
arch/arm/boot/dts/r8a73a4.dtsi | 88 +++++++++++++++++++ .../boot/dts/r8a7740-armadillo800eva-reference.dts | 34 ++++++++ arch/arm/boot/dts/r8a7740.dtsi | 8 ++ arch/arm/boot/dts/r8a7778.dtsi | 66 ++++++++++++++ arch/arm/boot/dts/r8a7779-marzen-reference.dts | 49 +++++++++++ arch/arm/boot/dts/r8a7779.dtsi | 90 ++++++++++++++++++++ arch/arm/boot/dts/r8a7790.dtsi | 78 +++++++++++++++++ arch/arm/boot/dts/sh7372.dtsi | 8 ++ arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | 90 +++++++++++++++++++- arch/arm/boot/dts/sh73a0.dtsi | 8 ++ .../board-armadillo800eva-reference.c | 18 +--- arch/arm/mach-shmobile/board-kzm9g-reference.c | 47 ---------- arch/arm/mach-shmobile/board-marzen-reference.c | 28 ------ 13 files changed, 518 insertions(+), 94 deletions(-)
PATCH 1/19 ARM: shmobile: r8a73a4: Add pin control device to device tree
From: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a73a4 device tree.
--- arch/arm/boot/dts/r8a73a4.dtsi | 88 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+)
arch/arm/boot/dts/r8a73a4.dtsi +88 -0
@@ -85,4 +85,92 @@ interrupt-parent = <&gic>; interrupts = <0 69 4>; }; + + i2c0: i2c at e6500000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6500000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 174 0x4>; + }; + + i2c1: i2c at e6510000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6510000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 175 0x4>; + }; + + i2c2: i2c at e6520000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6520000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 176 0x4>; + }; + + i2c3: i2c at e6530000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6530000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 177 0x4>; + }; + + i2c4: i2c at e6540000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6540000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 178 0x4>; + }; + + i2c5: i2c at e60b0000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe60b0000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 179 0x4>; + }; + + i2c6: i2c at e6550000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6550000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 184 0x4>; + }; + + i2c7: i2c at e6560000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6560000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 185 0x4>; + }; + + i2c8: i2c at e6570000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6570000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 173 0x4>; + }; + + pfc: pfc at e6050000 { + compatible = "renesas,pfc-r8a73a4"; + reg = <0xe6050000 0x9000>; + gpio-controller; + #gpio-cells = <2>; + }; };
Signature · 1 line
1.7.10.4
PATCH 1/19 ARM: shmobile: r8a73a4: Add pin control device to device tree
Hello.
Quoted 3 lines · Simon Horman
From: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a73a4 device tree.
This patch looks strange...
Quoted 23 lines
Signed-off-by Laurent Pinchart <[email protected]>Signed-off-by Simon Horman <[email protected]>--- arch/arm/boot/dts/r8a73a4.dtsi | 88 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+)arch/arm/boot/dts/r8a73a4.dtsi +9
-0@@ -85,4 +85,92 @@ interrupt-parent = <&gic>; interrupts = <0 69 4>; }; + + i2c0: i2c at e6500000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6500000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 174 0x4>; + };
[...]
arch/arm/boot/dts/r8a73a4.dtsi line 169
Quoted 9 lines
arch/arm/boot/dts/r8a73a4.dtsi +9
-0+ i2c8: i2c at e6570000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6570000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 173 0x4>; + }; +
Hm, this also adds a bunch of I2C controllers which is not mentioned in
the changelog at all.
WBR, Sergei
PATCH 1/19 ARM: shmobile: r8a73a4: Add pin control device to device tree
Quoted 41 lines · On Friday 19 July 2013 16:32:42 Sergei Shtylyov wrote:
Hello.
Quoted 3 lines · Simon Horman
From: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a73a4 device tree.
This patch looks strange...
Quoted 29 lines
Signed-off-by: Laurent Pinchart
<[email protected]>Signed-off-by Simon Horman <[email protected]>---
arch/arm/boot/dts/r8a73a4.dtsi | 88++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+)
(quoted diff) +0
-0
b/arch/arm/boot/dts/r8a73a4.dtsiindex 4ff2019..f1a35d5 100644arch/arm/boot/dts/r8a73a4.dtsi +9
-0@@ -85,4 +85,92 @@ interrupt-parent = <&gic>; interrupts = <0 69 4>; }; + + i2c0: i2c at e6500000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6500000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 174 0x4>; + };[...]
Quoted 12 lines
arch/arm/boot/dts/r8a73a4.dtsi line 169
Quoted 9 lines
arch/arm/boot/dts/r8a73a4.dtsi +9
-0+ i2c8: i2c at e6570000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6570000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 173 0x4>; + }; +Hm, this also adds a bunch of I2C controllers which is not mentioned in the changelog at all.
Rebase error ? They were not included in my original patch.
Signature · 3 lines
Regards, Laurent Pinchart
PATCH 1/19 ARM: shmobile: r8a73a4: Add pin control device to device tree
Quoted 55 lines · Laurent Pinchart
Quoted 41 lines · On Friday 19 July 2013 16:32:42 Sergei Shtylyov wrote:
Hello.
Quoted 3 lines · Simon Horman
From: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a73a4 device tree.
This patch looks strange...
Quoted 29 lines
Signed-off-by: Laurent Pinchart
<[email protected]>Signed-off-by Simon Horman <[email protected]>---
arch/arm/boot/dts/r8a73a4.dtsi | 88++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+)
(quoted diff) +0
-0
b/arch/arm/boot/dts/r8a73a4.dtsiindex 4ff2019..f1a35d5 100644arch/arm/boot/dts/r8a73a4.dtsi +9
-0@@ -85,4 +85,92 @@ interrupt-parent = <&gic>; interrupts = <0 69 4>; }; + + i2c0: i2c at e6500000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6500000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 174 0x4>; + };[...]
Quoted 12 lines
arch/arm/boot/dts/r8a73a4.dtsi line 169
Quoted 9 lines
arch/arm/boot/dts/r8a73a4.dtsi +9
-0+ i2c8: i2c at e6570000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "renesas,rmobile-iic"; + reg = <0 0xe6570000 0 0x428>; + interrupt-parent = <&gic>; + interrupts = <0 173 0x4>; + }; +Hm, this also adds a bunch of I2C controllers which is not mentioned in the changelog at all.
Quoted 1 line
Rebase error ? They were not included in my original patch.
Sorry, I will correct that and repost.
PATCH 2/19 ARM: shmobile: r8a7740: Add pin control device to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a7740 device tree and remove manual pinmux initialization from the corresponding board files.
--- arch/arm/boot/dts/r8a7740.dtsi | 8 ++++++++ .../mach-shmobile/board-armadillo800eva-reference.c | 16 ++++++++-------- 2 files changed, 16 insertions(+), 8 deletions(-)
arch/arm/boot/dts/r8a7740.dtsi +8 -0
@@ -139,4 +139,12 @@ 0 72 0x4 0 73 0x4>; }; + + pfc: pfc at e6050000 { + compatible = "renesas,pfc-r8a7740"; + reg = <0xe6050000 0x8000>, + <0xe605800c 0x20>; + gpio-controller; + #gpio-cells = <2>; + }; };
arch/arm/mach-shmobile/board-armadillo800eva-reference.c +8 -8
@@ -121,7 +121,7 @@static const struct pinctrl_map eva_pinctrl_map[] = {/* SCIFA1 */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.1" ,"pfc-r8a7740" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.1" ,"e6050000.pfc" ,"scifa1_data" ,"scifa1" ), };
@@ -170,22 +170,22 @@ static void __init eva_init(void)eva_clock_init ();pinctrl_register_mappings (eva_pinctrl_map,ARRAY_SIZE (eva_pinctrl_map)); -r8a7740_pinmux_init ();r8a7740_meram_workaround (); -/* -* Touchscreen -* TODO: Move reset GPIO over to .dts when we can reference it -*/ -gpio_request_one (166 ,GPIOF_OUT_INIT_HIGH ,NULL );/* TP_RST_B */ -#ifdef CONFIG_CACHE_L2X0 /* Early BRESP enable, Shared attribute override enable, 32K*8way */ l2x0_init (IOMEM (0xf0002000 ),0x40440000 ,0x82000fff );#endif r8a7740_add_standard_devices_dt (); + +/* +* Touchscreen +* TODO: Move reset GPIO over to .dts when we can reference it +*/ +gpio_request_one (166 ,GPIOF_OUT_INIT_HIGH ,NULL );/* TP_RST_B */ +r8a7740_pm_init (); }
Signature · 1 line
1.7.10.4
PATCH 3/19 ARM: shmobile: r8a7778: Add pin control device to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a7778 device tree.
--- arch/arm/boot/dts/r8a7778.dtsi | 5 +++++ 1 file changed, 5 insertions(+)
arch/arm/boot/dts/r8a7778.dtsi +5 -0
@@ -32,4 +32,9 @@ reg = <0xfe438000 0x1000>, <0xfe430000 0x100>; }; + + pfc: pfc at fffc0000 { + compatible = "renesas,pfc-r8a7778"; + reg = <0xfffc000 0x118>; + }; };
Signature · 1 line
1.7.10.4
PATCH 4/19 ARM: shmobile: r8a7778: Add GPIO controller devices to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add GPIO controller nodes to the r8a7778 core device tree.
--- arch/arm/boot/dts/r8a7778.dtsi | 61 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+)
arch/arm/boot/dts/r8a7778.dtsi +61 -0
@@ -33,8 +33,69 @@ <0xfe430000 0x100>; }; + gpio0: gpio at ffc40000 { + compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; + reg = <0xffc40000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 103 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 0 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio1: gpio at ffc41000 { + compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; + reg = <0xffc41000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 103 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 32 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio2: gpio at ffc42000 { + compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; + reg = <0xffc42000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 103 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 64 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio3: gpio at ffc43000 { + compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; + reg = <0xffc43000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 103 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 96 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio4: gpio at ffc44000 { + compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; + reg = <0xffc44000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 103 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 128 27>; + #interrupt-cells = <2>; + interrupt-controller; + }; + pfc: pfc at fffc0000 { compatible = "renesas,pfc-r8a7778"; reg = <0xfffc000 0x118>; + #gpio-range-cells = <3>; }; };
Signature · 1 line
1.7.10.4
PATCH 5/19 ARM: shmobile: r8a7779: Add pin control device to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a7779 device tree and remove manual pinmux initialization from the corresponding board files.
--- arch/arm/boot/dts/r8a7779.dtsi | 5 +++++ arch/arm/mach-shmobile/board-marzen-reference.c | 17 ++++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-)
arch/arm/boot/dts/r8a7779.dtsi +5 -0
@@ -101,6 +101,11 @@ interrupts = <0 81 0x4>; }; + pfc: pfc at fffc0000 { + compatible = "renesas,pfc-r8a7779"; + reg = <0xfffc0000 0x23c>; + }; + thermal at ffc48000 { compatible = "renesas,rcar-thermal"; reg = <0xffc48000 0x38>;
arch/arm/mach-shmobile/board-marzen-reference.c +8 -9
@@ -28,24 +28,24 @@static const struct pinctrl_map marzen_pinctrl_map[] = {/* SCIF2 (CN18: DEBUG0) */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.2" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.2" ,"fffc0000.pfc" ,"scif2_data_c" ,"scif2" ),/* SCIF4 (CN19: DEBUG1) */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"fffc0000.pfc" ,"scif4_data" ,"scif4" ),/* SDHI0 */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" ,"sdhi0_data4" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" ,"sdhi0_ctrl" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" ,"sdhi0_cd" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" ,"sdhi0_wp" ,"sdhi0" ),/* SMSC */ -PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"fffc0000.pfc" ,"intc_irq1_b" ,"intc" ), -PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"pfc-r8a7779" , +PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"fffc0000.pfc" ,"lbsc_ex_cs0" ,"lbsc" ), };
@@ -53,7 +53,6 @@ static void __init marzen_init(void) {pinctrl_register_mappings (marzen_pinctrl_map,ARRAY_SIZE (marzen_pinctrl_map)); -r8a7779_pinmux_init ();r8a7779_add_standard_devices_dt (); }
Signature · 1 line
1.7.10.4
PATCH 6/19 ARM: shmobile: r8a7779: Add GPIO controller devices to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add GPIO controller nodes to the r8a7779 core device tree.
--- arch/arm/boot/dts/r8a7779.dtsi | 85 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+)
arch/arm/boot/dts/r8a7779.dtsi +85 -0
@@ -48,6 +48,90 @@ <0xf0000100 0x100>; }; + gpio0: gpio at ffc40000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc40000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 141 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 0 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio1: gpio at ffc41000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc41000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 142 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 32 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio2: gpio at ffc42000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc42000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 143 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 64 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio3: gpio at ffc43000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc43000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 144 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 96 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio4: gpio at ffc44000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc44000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 145 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 128 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio5: gpio at ffc45000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc45000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 146 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 160 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio6: gpio at ffc46000 { + compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; + reg = <0xffc46000 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 147 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 192 9>; + #interrupt-cells = <2>; + interrupt-controller; + }; + irqpin0: irqpin at fe780010 { compatible = "renesas,intc-irqpin"; #interrupt-cells = <2>;
@@ -104,6 +188,7 @@ pfc: pfc at fffc0000 { compatible = "renesas,pfc-r8a7779"; reg = <0xfffc0000 0x23c>; + #gpio-range-cells = <3>; }; thermal at ffc48000 {
Signature · 1 line
1.7.10.4
PATCH 7/19 ARM: shmobile: r8a7790: Add pin control device to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add a pfc node to the r8a7790 device tree.
--- arch/arm/boot/dts/r8a7790.dtsi | 5 +++++ 1 file changed, 5 insertions(+)
arch/arm/boot/dts/r8a7790.dtsi +5 -0
@@ -54,4 +54,9 @@ interrupt-parent = <&gic>; interrupts = <0 0 4>, <0 1 4>, <0 2 4>, <0 3 4>; }; + + pfc: pfc at e6060000 { + compatible = "renesas,pfc-r8a7790"; + reg = <0 0xe6060000 0 0x250>; + }; };
Signature · 1 line
1.7.10.4
PATCH 8/19 ARM: shmobile: r8a7790: Add GPIO controller devices to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add GPIO controller nodes to the r8a7790 core device tree.
--- arch/arm/boot/dts/r8a7790.dtsi | 73 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+)
arch/arm/boot/dts/r8a7790.dtsi +73 -0
@@ -38,6 +38,78 @@ interrupts = <1 9 0xf04>; }; + gpio0: gpio at ffc40000 { + compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; + reg = <0 0xffc40000 0 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 4 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 0 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio1: gpio at ffc41000 { + compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; + reg = <0 0xffc41000 0 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 5 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 32 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio2: gpio at ffc42000 { + compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; + reg = <0 0xffc42000 0 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 6 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 64 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio3: gpio at ffc43000 { + compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; + reg = <0 0xffc43000 0 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 7 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 96 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio4: gpio at ffc44000 { + compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; + reg = <0 0xffc44000 0 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 8 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 128 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + + gpio5: gpio at ffc45000 { + compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; + reg = <0 0xffc45000 0 0x2c>; + interrupt-parent = <&gic>; + interrupts = <0 9 0x4>; + #gpio-cells = <2>; + gpio-controller; + gpio-ranges = <&pfc 0 160 32>; + #interrupt-cells = <2>; + interrupt-controller; + }; + timer { compatible = "arm,armv7-timer"; interrupts = <1 13 0xf08>,
@@ -58,5 +130,6 @@ pfc: pfc at e6060000 { compatible = "renesas,pfc-r8a7790"; reg = <0 0xe6060000 0 0x250>; + #gpio-range-cells = <3>; }; };
Signature · 1 line
1.7.10.4
PATCH 9/19 ARM: shmobile: sh7372: Add pin control device to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add a pfc node to the sh7372 device tree.
--- arch/arm/boot/dts/sh7372.dtsi | 8 ++++++++ 1 file changed, 8 insertions(+)
arch/arm/boot/dts/sh7372.dtsi +8 -0
@@ -23,4 +23,12 @@ reg = <0x0>; }; }; + + pfc: pfc at e6050000 { + compatible = "renesas,pfc-sh7372"; + reg = <0xe6050000 0x8000>, + <0xe605801c 0x1c>; + gpio-controller; + #gpio-cells = <2>; + }; };
Signature · 1 line
1.7.10.4
PATCH 10/19 ARM: shmobile: sh73a0: Add pin control device to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add a pfc node to the sh73a0 device tree and remove manual pinmux initialization from the corresponding board files.
--- arch/arm/boot/dts/sh73a0.dtsi | 8 +++++++ arch/arm/mach-shmobile/board-kzm9g-reference.c | 27 ++++++++++++------------ 2 files changed, 21 insertions(+), 14 deletions(-)
arch/arm/boot/dts/sh73a0.dtsi +8 -0
@@ -222,4 +222,12 @@ cap-sd-highspeed; status = "disabled"; }; + + pfc: pfc at e6050000 { + compatible = "renesas,pfc-sh73a0"; + reg = <0xe6050000 0x8000>, + <0xe605801c 0x1c>; + gpio-controller; + #gpio-cells = <2>; + }; };
arch/arm/mach-shmobile/board-kzm9g-reference.c +13 -14
@@ -40,35 +40,35 @@ static unsigned long pin_pullup_conf[] = { };static const struct pinctrl_map kzm_pinctrl_map[] = { -PIN_MAP_MUX_GROUP_DEFAULT ("e6826000.i2c" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("e6826000.i2c" ,"e6050000.pfc" ,"i2c3_1" ,"i2c3" ),/* MMCIF */ -PIN_MAP_MUX_GROUP_DEFAULT ("e6bd0000.mmcif" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" ,"mmc0_data8_0" ,"mmc0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("e6bd0000.mmcif" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" ,"mmc0_ctrl_0" ,"mmc0" ), -PIN_MAP_CONFIGS_PIN_DEFAULT ("e6bd0000.mmcif" ,"pfc-sh73a0" , +PIN_MAP_CONFIGS_PIN_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" ,"PORT279" , pin_pullup_conf), -PIN_MAP_CONFIGS_GROUP_DEFAULT ("e6bd0000.mmcif" ,"pfc-sh73a0" , +PIN_MAP_CONFIGS_GROUP_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" ,"mmc0_data8_0" , pin_pullup_conf),/* SCIFA4 */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"e6050000.pfc" ,"scifa4_data" ,"scifa4" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"e6050000.pfc" ,"scifa4_ctrl" ,"scifa4" ),/* SDHI0 */ -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" ,"sdhi0_data4" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" ,"sdhi0_ctrl" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" ,"sdhi0_cd" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" ,"sdhi0_wp" ,"sdhi0" ),/* SDHI2 */ -PIN_MAP_MUX_GROUP_DEFAULT ("ee140000.sdhi" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("ee140000.sdhi" ,"e6050000.pfc" ,"sdhi2_data4" ,"sdhi2" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee140000.sdhi" ,"pfc-sh73a0" , +PIN_MAP_MUX_GROUP_DEFAULT ("ee140000.sdhi" ,"e6050000.pfc" ,"sdhi2_ctrl" ,"sdhi2" ), };
@@ -76,7 +76,6 @@ static void __init kzm_init(void) {sh73a0_add_standard_devices_dt ();pinctrl_register_mappings (kzm_pinctrl_map,ARRAY_SIZE (kzm_pinctrl_map)); -sh73a0_pinmux_init ();/* enable SD */ gpio_request_one (15 ,GPIOF_OUT_INIT_HIGH ,NULL );/* power */
Signature · 1 line
1.7.10.4
PATCH 11/19 ARM: shmobile: armadillo-reference: Move pinctrl mappings to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Replace the pinctrl mappings in board code by device tree mappings. For devices that are still instantiated from board code reference the mappings as the default pin controller state to apply them at boot time.
--- arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts | 10 ++++++++++ arch/arm/mach-shmobile/board-armadillo800eva-reference.c | 9 --------- 2 files changed, 10 insertions(+), 9 deletions(-)
arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts +10 -0
@@ -43,3 +43,13 @@ interrupts = <2 0>; /* IRQ10: hwirq 2 on irqpin1 */ }; }; + +&pfc { + pinctrl-0 = <&scifa1_pins>; + pinctrl-names = "default"; + + scifa1_pins: scifa1 { + renesas,groups = "scifa1_data"; + renesas,function = "scifa1"; + }; +};
arch/arm/mach-shmobile/board-armadillo800eva-reference.c +0 -9
@@ -24,7 +24,6 @@#include <linux/kernel.h> #include <linux/gpio.h> #include <linux/io.h> -#include <linux/pinctrl/machine.h> #include <mach/common.h> #include <mach/r8a7740.h> #include <asm/mach/arch.h>
@@ -119,12 +118,6 @@* usbhsf_power_ctrl() */ -static const struct pinctrl_map eva_pinctrl_map[] = { -/* SCIFA1 */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.1" ,"e6050000.pfc" , -"scifa1_data" ,"scifa1" ), -}; -static void __init eva_clock_init (void ) {struct clk *system =clk_get (NULL ,"system_clk" );
@@ -169,8 +162,6 @@ static void __init eva_init(void)r8a7740_clock_init (MD_CK0 |MD_CK2 );eva_clock_init (); -pinctrl_register_mappings (eva_pinctrl_map,ARRAY_SIZE (eva_pinctrl_map)); -r8a7740_meram_workaround ();#ifdef CONFIG_CACHE_L2X0
Signature · 1 line
1.7.10.4
PATCH 12/19 ARM: shmobile: armadillo-reference: Add st1232 pin mappings
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Add pin mappings for the st1232 device to the device tree and reference them as the default state for the device.
--- arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts | 7 +++++++ 1 file changed, 7 insertions(+)
arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts +7 -0
@@ -41,6 +41,8 @@ reg = <0x55>; interrupt-parent = <&irqpin1>; interrupts = <2 0>; /* IRQ10: hwirq 2 on irqpin1 */ + pinctrl-0 = <&st1232_pins>; + pinctrl-names = "default"; }; };
@@ -52,4 +54,9 @@ renesas,groups = "scifa1_data"; renesas,function = "scifa1"; }; + + st1232_pins: st1232 { + renesas,groups = "intc_irq10"; + renesas,function = "intc"; + }; };
Signature · 1 line
1.7.10.4
PATCH 13/19 ARM: shmobile: armadillo-reference: Move st1232 reset GPIO to DT
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Reference the st1232 reset GPIO from the device tree and remove it from board code.
--- arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts | 2 ++ arch/arm/mach-shmobile/board-armadillo800eva-reference.c | 7 ------- 2 files changed, 2 insertions(+), 7 deletions(-)
arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts +2 -0
@@ -10,6 +10,7 @@ /dts-v1/; /include/ "r8a7740.dtsi" +#include <dt-bindings/gpio/gpio.h> / { model = "armadillo 800 eva reference";
@@ -43,6 +44,7 @@ interrupts = <2 0>; /* IRQ10: hwirq 2 on irqpin1 */ pinctrl-0 = <&st1232_pins>; pinctrl-names = "default"; + gpios = <&pfc 166 GPIO_ACTIVE_LOW>; }; };
arch/arm/mach-shmobile/board-armadillo800eva-reference.c +0 -7
@@ -158,7 +158,6 @@ clock_error:*/ static void __init eva_init (void ) { -r8a7740_clock_init (MD_CK0 |MD_CK2 );eva_clock_init ();
@@ -171,12 +170,6 @@ static void __init eva_init(void)r8a7740_add_standard_devices_dt (); -/* -* Touchscreen -* TODO: Move reset GPIO over to .dts when we can reference it -*/ -gpio_request_one (166 ,GPIOF_OUT_INIT_HIGH ,NULL );/* TP_RST_B */ -r8a7740_pm_init (); }
Signature · 1 line
1.7.10.4
PATCH 14/19 ARM: shmobile: armadillo-reference: Add LED1-LED4 to the device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
LED1 to LED4 are GPIO LEDs. Add corresponding DT nodes.
--- arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts +15 -0
@@ -34,6 +34,21 @@ regulator-boot-on; }; + leds { + compatible = "gpio-leds"; + led1 { + gpios = <&pfc 102 GPIO_ACTIVE_HIGH>; + }; + led2 { + gpios = <&pfc 111 GPIO_ACTIVE_HIGH>; + }; + led3 { + gpios = <&pfc 110 GPIO_ACTIVE_HIGH>; + }; + led4 { + gpios = <&pfc 177 GPIO_ACTIVE_HIGH>; + }; + }; }; &i2c0 {
Signature · 1 line
1.7.10.4
PATCH 15/19 ARM: shmobile: marzen-reference: Move pinctrl mappings to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Replace the pinctrl mappings in board code by device tree mappings. For devices that are still instantiated from board code reference the mappings as the default pin controller state to apply them at boot time.
--- arch/arm/boot/dts/r8a7779-marzen-reference.dts | 35 +++++++++++++++++++++++ arch/arm/mach-shmobile/board-marzen-reference.c | 27 ----------------- 2 files changed, 35 insertions(+), 27 deletions(-)
arch/arm/boot/dts/r8a7779-marzen-reference.dts +35 -0
@@ -37,6 +37,9 @@ lan0 at 18000000 { compatible = "smsc,lan9220", "smsc,lan9115"; reg = <0x18000000 0x100>; + pinctrl-0 = <&lan0_pins>; + pinctrl-names = "default"; + phy-mode = "mii"; interrupt-parent = <&gic>; interrupts = <0 28 0x4>;
@@ -45,3 +48,35 @@ vdd33a-supply = <&fixedregulator3v3>; }; }; + +&pfc { + pinctrl-0 = <&scif2_pins &scif4_pins &sdhi0_pins>; + pinctrl-names = "default"; + + lan0_pins: lan0 { + intc { + renesas,groups = "intc_irq1_b"; + renesas,function = "intc"; + }; + lbsc { + renesas,groups = "lbsc_ex_cs0"; + renesas,function = "lbsc"; + }; + }; + + scif2_pins: scif2 { + renesas,groups = "scif2_data_c"; + renesas,function = "scif2"; + }; + + scif4_pins: scif4 { + renesas,groups = "scif4_data"; + renesas,function = "scif4"; + }; + + sdhi0_pins: sdhi0 { + renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", + "sdhi0_wp"; + renesas,function = "sdhi0"; + }; +};
arch/arm/mach-shmobile/board-marzen-reference.c +0 -27
@@ -19,41 +19,14 @@* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include <linux/pinctrl/machine.h> #include <mach/r8a7779.h> #include <mach/common.h> #include <mach/irqs.h> #include <asm/irq.h> #include <asm/mach/arch.h> -static const struct pinctrl_map marzen_pinctrl_map[] = { -/* SCIF2 (CN18: DEBUG0) */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.2" ,"fffc0000.pfc" , -"scif2_data_c" ,"scif2" ), -/* SCIF4 (CN19: DEBUG1) */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"fffc0000.pfc" , -"scif4_data" ,"scif4" ), -/* SDHI0 */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" , -"sdhi0_data4" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" , -"sdhi0_ctrl" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" , -"sdhi0_cd" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh_mobile_sdhi.0" ,"fffc0000.pfc" , -"sdhi0_wp" ,"sdhi0" ), -/* SMSC */ -PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"fffc0000.pfc" , -"intc_irq1_b" ,"intc" ), -PIN_MAP_MUX_GROUP_DEFAULT ("smsc911x" ,"fffc0000.pfc" , -"lbsc_ex_cs0" ,"lbsc" ), -}; -static void __init marzen_init (void ) { -pinctrl_register_mappings (marzen_pinctrl_map, -ARRAY_SIZE (marzen_pinctrl_map)); -r8a7779_add_standard_devices_dt (); }
Signature · 1 line
1.7.10.4
PATCH 16/19 ARM: shmobile: marzen-reference: Add LED2-LED4 to the device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
LED2 to LED4 are GPIO LEDs. Add corresponding DT nodes.
--- arch/arm/boot/dts/r8a7779-marzen-reference.dts | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
arch/arm/boot/dts/r8a7779-marzen-reference.dts +14 -0
@@ -11,6 +11,7 @@ /dts-v1/; /include/ "r8a7779.dtsi" +#include <dt-bindings/gpio/gpio.h> / { model = "marzen";
@@ -47,6 +48,19 @@ vddvario-supply = <&fixedregulator3v3>; vdd33a-supply = <&fixedregulator3v3>; }; + + leds { + compatible = "gpio-leds"; + led2 { + gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>; + }; + led3 { + gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; + }; + led4 { + gpios = <&gpio4 31 GPIO_ACTIVE_HIGH>; + }; + }; }; &pfc {
Signature · 1 line
1.7.10.4
PATCH 17/19 ARM: shmobile: kzm9g-reference: Move pinctrl mappings to device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Replace the pinctrl mappings in board code by device tree mappings. For devices that are still instantiated from board code reference the mappings as the default pin controller state to apply them at boot time.
--- arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | 51 ++++++++++++++++++++++++ arch/arm/mach-shmobile/board-kzm9g-reference.c | 40 ------------------- 2 files changed, 51 insertions(+), 40 deletions(-)
arch/arm/boot/dts/sh73a0-kzm9g-reference.dts +51 -0
@@ -145,19 +145,70 @@ }; }; +&i2c3 { + pinctrl-0 = <&i2c3_pins>; + pinctrl-names = "default"; +}; + &mmcif { + pinctrl-0 = <&mmcif_pins>; + pinctrl-names = "default"; + bus-width = <8>; vmmc-supply = <®_1p8v>; status = "okay"; }; +&pfc { + pinctrl-0 = <&scifa4_pins>; + pinctrl-names = "default"; + + i2c3_pins: i2c3 { + renesas,groups = "i2c3_1"; + renesas,function = "i2c3"; + }; + + mmcif_pins: mmcif { + mux { + renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0"; + renesas,function = "mmc0"; + }; + cfg { + renesas,groups = "mmc0_data8_0"; + renesas,pins = "PORT279"; + bias-pull-up; + }; + }; + + scifa4_pins: scifa4 { + renesas,groups = "scifa4_data", "scifa4_ctrl"; + renesas,function = "scifa4"; + }; + + sdhi0_pins: sdhi0 { + renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp"; + renesas,function = "sdhi0"; + }; + + sdhi2_pins: sdhi2 { + renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; + renesas,function = "sdhi2"; + }; +}; + &sdhi0 { + pinctrl-0 = <&sdhi0_pins>; + pinctrl-names = "default"; + vmmc-supply = <®_3p3v>; bus-width = <4>; status = "okay"; }; &sdhi2 { + pinctrl-0 = <&sdhi2_pins>; + pinctrl-names = "default"; + vmmc-supply = <®_3p3v>; bus-width = <4>; broken-cd;
arch/arm/mach-shmobile/board-kzm9g-reference.c +0 -40
@@ -27,55 +27,15 @@#include <linux/irqchip.h> #include <linux/input.h> #include <linux/of_platform.h> -#include <linux/pinctrl/machine.h> -#include <linux/pinctrl/pinconf-generic.h> #include <mach/sh73a0.h> #include <mach/common.h> #include <asm/hardware/cache-l2x0.h> #include <asm/mach-types.h> #include <asm/mach/arch.h> -static unsigned long pin_pullup_conf[] = { -PIN_CONF_PACKED (PIN_CONFIG_BIAS_PULL_UP ,0 ), -}; - -static const struct pinctrl_map kzm_pinctrl_map[] = { -PIN_MAP_MUX_GROUP_DEFAULT ("e6826000.i2c" ,"e6050000.pfc" , -"i2c3_1" ,"i2c3" ), -/* MMCIF */ -PIN_MAP_MUX_GROUP_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" , -"mmc0_data8_0" ,"mmc0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" , -"mmc0_ctrl_0" ,"mmc0" ), -PIN_MAP_CONFIGS_PIN_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" , -"PORT279" , pin_pullup_conf), -PIN_MAP_CONFIGS_GROUP_DEFAULT ("e6bd0000.mmcif" ,"e6050000.pfc" , -"mmc0_data8_0" , pin_pullup_conf), -/* SCIFA4 */ -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"e6050000.pfc" , -"scifa4_data" ,"scifa4" ), -PIN_MAP_MUX_GROUP_DEFAULT ("sh-sci.4" ,"e6050000.pfc" , -"scifa4_ctrl" ,"scifa4" ), -/* SDHI0 */ -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" , -"sdhi0_data4" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" , -"sdhi0_ctrl" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" , -"sdhi0_cd" ,"sdhi0" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee100000.sdhi" ,"e6050000.pfc" , -"sdhi0_wp" ,"sdhi0" ), -/* SDHI2 */ -PIN_MAP_MUX_GROUP_DEFAULT ("ee140000.sdhi" ,"e6050000.pfc" , -"sdhi2_data4" ,"sdhi2" ), -PIN_MAP_MUX_GROUP_DEFAULT ("ee140000.sdhi" ,"e6050000.pfc" , -"sdhi2_ctrl" ,"sdhi2" ), -}; -static void __init kzm_init (void ) {sh73a0_add_standard_devices_dt (); -pinctrl_register_mappings (kzm_pinctrl_map,ARRAY_SIZE (kzm_pinctrl_map));/* enable SD */ gpio_request_one (15 ,GPIOF_OUT_INIT_HIGH ,NULL );/* power */
Signature · 1 line
1.7.10.4
PATCH 18/19 ARM: shmobile: kzm9g-reference: Move SDHI regulators to DT
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
Create two GPIO-controlled fixed-voltage regulators in the kzm9g-reference DT and remove manual configuration of the corresponding GPIOs from board code.
--- arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | 23 +++++++++++++++++++++-- arch/arm/mach-shmobile/board-kzm9g-reference.c | 6 ------ 2 files changed, 21 insertions(+), 8 deletions(-)
arch/arm/boot/dts/sh73a0-kzm9g-reference.dts +21 -2
@@ -13,6 +13,7 @@ /dts-v1/; /include/ "sh73a0.dtsi" +#include <dt-bindings/gpio/gpio.h> / { model = "KZM-A9-GT";
@@ -58,6 +59,24 @@ regulator-boot-on; }; + vmmc_sdhi0: regulator at 2 { + compatible = "regulator-fixed"; + regulator-name = "SDHI0 Vcc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&pfc 15 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + vmmc_sdhi2: regulator at 3 { + compatible = "regulator-fixed"; + regulator-name = "SDHI2 Vcc"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&pfc 14 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + lan9220 at 10000000 { compatible = "smsc,lan9220", "smsc,lan9115"; reg = <0x10000000 0x100>;
@@ -200,7 +219,7 @@ pinctrl-0 = <&sdhi0_pins>; pinctrl-names = "default"; - vmmc-supply = <®_3p3v>; + vmmc-supply = <&vmmc_sdhi0>; bus-width = <4>; status = "okay"; };
@@ -209,7 +228,7 @@ pinctrl-0 = <&sdhi2_pins>; pinctrl-names = "default"; - vmmc-supply = <®_3p3v>; + vmmc-supply = <&vmmc_sdhi2>; bus-width = <4>; broken-cd; status = "okay";
arch/arm/mach-shmobile/board-kzm9g-reference.c +0 -6
@@ -21,7 +21,6 @@*/ #include <linux/delay.h> -#include <linux/gpio.h> #include <linux/io.h> #include <linux/irq.h> #include <linux/irqchip.h>
@@ -37,11 +36,6 @@ static void __init kzm_init(void) {sh73a0_add_standard_devices_dt (); -/* enable SD */ -gpio_request_one (15 ,GPIOF_OUT_INIT_HIGH ,NULL );/* power */ - -gpio_request_one (14 ,GPIOF_OUT_INIT_HIGH ,NULL );/* power */ -#ifdef CONFIG_CACHE_L2X0 /* Early BRESP enable, Shared attribute override enable, 64K*8way */ l2x0_init (IOMEM (0xf0100000 ),0x40460000 ,0x82000fff );
Signature · 1 line
1.7.10.4
PATCH 19/19 ARM: shmobile: kzm9g-reference: Add LED1-LED4 to the device tree
In reply to Simon HormanFrom: Laurent Pinchart <[email protected]>
LED1 to LED4 are GPIO LEDs. Add corresponding DT nodes.
--- arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
arch/arm/boot/dts/sh73a0-kzm9g-reference.dts +16 -0
@@ -89,6 +89,22 @@ vddvario-supply = <®_1p8v>; vdd33a-supply = <®_3p3v>; }; + + leds { + compatible = "gpio-leds"; + led1 { + gpios = <&pfc 20 GPIO_ACTIVE_LOW>; + }; + led2 { + gpios = <&pfc 21 GPIO_ACTIVE_LOW>; + }; + led3 { + gpios = <&pfc 22 GPIO_ACTIVE_LOW>; + }; + led4 { + gpios = <&pfc 23 GPIO_ACTIVE_LOW>; + }; + }; }; &i2c0 {
Signature · 1 line
1.7.10.4
cover Renesas ARM based SoC pinmux updates for v3.12
In reply to Simon HormanHi,
please hold off on this. It appears that there is a problem with one of the patches.
Quoted 54 lines · Simon Horman
The following changes since commit
ad81f0545ef01ea651886dddac4bef6cec930092:Linux 3.11-rc1 (2013-07-14 15:18:27 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.gittags/renesas-pinmux-for-v3.12for you to fetch changes up to
838a7070ce8bfff11e19ed434edd9a4423b478bd:ARM: shmobile: kzm9g-reference: Add LED1-LED4 to the device tree (2013-07-16 12:55:04 +0900)
----------------------------------------------------------------
Renesas ARM based SoC pinmux updates for v3.12SH Mobile pinctrl DT support
----------------------------------------------------------------
Laurent Pinchart (19):
ARM: shmobile: r8a73a4: Add pin control device to device tree
ARM: shmobile: r8a7740: Add pin control device to device tree
ARM: shmobile: r8a7778: Add pin control device to device tree
ARM: shmobile: r8a7778: Add GPIO controller devices to device tree
ARM: shmobile: r8a7779: Add pin control device to device tree
ARM: shmobile: r8a7779: Add GPIO controller devices to device tree
ARM: shmobile: r8a7790: Add pin control device to device tree
ARM: shmobile: r8a7790: Add GPIO controller devices to device tree
ARM: shmobile: sh7372: Add pin control device to device tree
ARM: shmobile: sh73a0: Add pin control device to device tree
ARM: shmobile: armadillo-reference: Move pinctrl mappings to device tree
ARM: shmobile: armadillo-reference: Add st1232 pin mappings
ARM: shmobile: armadillo-reference: Move st1232 reset GPIO to DT
ARM: shmobile: armadillo-reference: Add LED1-LED4 to the device tree
ARM: shmobile: marzen-reference: Move pinctrl mappings to device tree
ARM: shmobile: marzen-reference: Add LED2-LED4 to the device tree
ARM: shmobile: kzm9g-reference: Move pinctrl mappings to device tree
ARM: shmobile: kzm9g-reference: Move SDHI regulators to DT
ARM: shmobile: kzm9g-reference: Add LED1-LED4 to the device treearch/arm/boot/dts/r8a73a4.dtsi | 88 +++++++++++++++++++ .../boot/dts/r8a7740-armadillo800eva-reference.dts | 34 ++++++++ arch/arm/boot/dts/r8a7740.dtsi | 8 ++ arch/arm/boot/dts/r8a7778.dtsi | 66 ++++++++++++++ arch/arm/boot/dts/r8a7779-marzen-reference.dts | 49 +++++++++++ arch/arm/boot/dts/r8a7779.dtsi | 90 ++++++++++++++++++++ arch/arm/boot/dts/r8a7790.dtsi | 78 +++++++++++++++++ arch/arm/boot/dts/sh7372.dtsi | 8 ++ arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | 90 +++++++++++++++++++- arch/arm/boot/dts/sh73a0.dtsi | 8 ++ .../board-armadillo800eva-reference.c | 18 +--- arch/arm/mach-shmobile/board-kzm9g-reference.c | 47 ---------- arch/arm/mach-shmobile/board-marzen-reference.c | 28 ------ 13 files changed, 518 insertions(+), 94 deletions(-)