Convert Kirkwood to pinctrl
Subsystems (6)
Andrew Lunn
maintainercover Convert Kirkwood to pinctrl
This patchset converts all kirkwood DT boards to pinctrl. It is an RFC for a number of reasons:
Do we want to enable the use of mvebu GPIO driver
outside of mach-mvebu?
Do we want to enable the use of mvebu pinctrl driver outside of mach-mvebu?
The old MPP code would probe the hardware to determine what kirkwood variant it was running on. The new pinctrl driver does not do this, it uses a DT compatibility string. We are only part way through checking what CPU each board has, and probably some of the DT compatibility strings are wrong.
board-kw_kirkwood is an oddball. The SoC on this board is a Marvell Ethernet switch with an embedded kirkwood. The pinctrl-kirkwood.c sub-driver does not yet support this kirkwood variant, so the board file has not been converted yet. It is possible that the second patch in this series breaks this board.
Andrew Lunn (11):
ARM: Kirkwood: Allow use of pinctrl
ARM: Kirkwood: Allow use of MVEBU GPIO driver.
ARM: Kirkwood: Convert TS219 to pinctrl.
ARM: Kirkwood: Convert iConnect to pinctrl.
ARM: Kirkwood: Convert dnskw to pinctrl
ARM: Kirkwood: Convert dockstar to pinctrl.
ARM: Kirkwood: Convert dreamplug to pinctrl.
ARM: Kirkwood: Convert GoFlex Net to pinctrl.
ARM: Kirkwood: Convert ib62x0 to pinctrl.
ARM: Kirkwood: Convert lsxl boards to pinctrl.
ARM: Kirkwood: Convert IX2-200 to pinctrl.
arch/arm/Kconfig | 3 + arch/arm/boot/dts/kirkwood-dnskw.dtsi | 136 +++++++++++++++++++++++++ arch/arm/boot/dts/kirkwood-dockstar.dts | 21 ++++ arch/arm/boot/dts/kirkwood-dreamplug.dts | 26 +++++ arch/arm/boot/dts/kirkwood-goflexnet.dts | 57 +++++++++++ arch/arm/boot/dts/kirkwood-ib62x0.dts | 41 ++++++++ arch/arm/boot/dts/kirkwood-iconnect.dts | 52 ++++++++++ arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts | 90 ++++++++++++++++ arch/arm/boot/dts/kirkwood-lsxl.dtsi | 67 ++++++++++++ arch/arm/boot/dts/kirkwood-ts219-6281.dts | 56 ++++++++++ arch/arm/boot/dts/kirkwood-ts219-6282.dts | 56 ++++++++++ arch/arm/boot/dts/kirkwood.dtsi | 11 +- arch/arm/mach-kirkwood/board-dnskw.c | 37 ------- arch/arm/mach-kirkwood/board-dockstar.c | 10 -- arch/arm/mach-kirkwood/board-dreamplug.c | 14 --- arch/arm/mach-kirkwood/board-goflexnet.c | 18 ---- arch/arm/mach-kirkwood/board-ib62x0.c | 21 ---- arch/arm/mach-kirkwood/board-iconnect.c | 17 ---- arch/arm/mach-kirkwood/board-iomega_ix2_200.c | 24 ----- arch/arm/mach-kirkwood/board-lsxl.c | 19 ---- arch/arm/mach-kirkwood/board-ts219.c | 25 ----- arch/arm/plat-orion/irq.c | 5 +- drivers/gpio/Kconfig | 2 +- drivers/pinctrl/Kconfig | 2 +- 24 files changed, 617 insertions(+), 193 deletions(-)
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 1/11 ARM: Kirkwood: Allow use of pinctrl
We now have a pinctrl driver for arch-mvebu. It supports kirkwood out of the box. Allow ARCH_KIRKWOOD to select it, and make ARCH_KIRKWOOD select it. This then allows the convertion of board-*.c files away from MPP to pinctrl in DT, before they get moved over into mach-mvebu.
--- arch/arm/Kconfig | 2 ++ drivers/pinctrl/Kconfig | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-)
arch/arm/Kconfig +2 -0
@@ -548,6 +548,8 @@ config ARCH_KIRKWOOD select GENERIC_CLOCKEVENTS select PCI select PLAT_ORION_LEGACY + select PINCTRL + select PINCTRL_KIRKWOOD help Support for the following Marvell Kirkwood series SoCs: 88F6180, 88F6192 and 88F6281.
drivers/pinctrl/Kconfig +1 -1
@@ -188,7 +188,7 @@ config PINCTRL_EXYNOS4 config PINCTRL_MVEBU bool - depends on ARCH_MVEBU + depends on ARCH_MVEBU || ARCH_KIRKWOOD select PINMUX select PINCONF
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 2/11 ARM: Kirkwood: Allow use of MVEBU GPIO driver.
In reply to Andrew LunnThis GPIO driver is generic to all Marvel Orion/XP/370 SoCs. Allow Kirkwood to enable and use it. Fix the kirkwood DT to pass the expected properties and remove the old gpio probing code.
--- arch/arm/Kconfig | 1 + arch/arm/boot/dts/kirkwood.dtsi | 11 +++++++++-- arch/arm/plat-orion/irq.c | 5 +---- drivers/gpio/Kconfig | 2 +- 4 files changed, 12 insertions(+), 7 deletions(-)
arch/arm/Kconfig +1 -0
@@ -550,6 +550,7 @@ config ARCH_KIRKWOOD select PLAT_ORION_LEGACY select PINCTRL select PINCTRL_KIRKWOOD + select ARCH_WANT_OPTIONAL_GPIOLIB help Support for the following Marvell Kirkwood series SoCs: 88F6180, 88F6192 and 88F6281.
arch/arm/boot/dts/kirkwood.dtsi +9 -2
@@ -4,6 +4,11 @@ compatible = "marvell,kirkwood"; interrupt-parent = <&intc>; + aliases { + gpio0 = &gpio0; + gpio1 = &gpio1; + }; + intc: interrupt-controller { compatible = "marvell,orion-intc", "marvell,intc"; interrupt-controller;
@@ -24,7 +29,8 @@ #gpio-cells = <2>; gpio-controller; reg = <0x10100 0x40>; - ngpio = <32>; + ngpios = <32>; + interrupt-controller; interrupts = <35>, <36>, <37>, <38>; };
@@ -33,7 +39,8 @@ #gpio-cells = <2>; gpio-controller; reg = <0x10140 0x40>; - ngpio = <18>; + ngpios = <18>; + interrupt-controller; interrupts = <39>, <40>, <41>; };
arch/arm/plat-orion/irq.c +1 -4
@@ -41,7 +41,7 @@ void __init orion_irq_init(unsigned int irq_start, void __iomem *maskaddr)static int __init orion_add_irq_domain (struct device_node *np,struct device_node *interrupt_parent) { -int i =0 , irq_gpio; +int i =0 ;void __iomem *base; do {
@@ -55,9 +55,6 @@ static int __init orion_add_irq_domain(struct device_node *np,irq_domain_add_legacy (np, i *32 ,0 ,0 , &irq_domain_simple_ops,NULL ); - irq_gpio = i *32 ; -orion_gpio_of_init (irq_gpio); -return 0 ; }
drivers/gpio/Kconfig +1 -1
@@ -152,7 +152,7 @@ config GPIO_MSM_V2 config GPIO_MVEBU def_bool y - depends on ARCH_MVEBU + depends on ARCH_MVEBU || ARCH_KIRKWOOD select GPIO_GENERIC select GENERIC_IRQ_CHIP
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 3/11 ARM: Kirkwood: Convert TS219 to pinctrl.
In reply to Andrew LunnMake use of the pinctrl driver for configuring all the pins, instead of using the Orion mpp code.
--- arch/arm/boot/dts/kirkwood-ts219-6281.dts | 56 +++++++++++++++++++++++++++++ arch/arm/boot/dts/kirkwood-ts219-6282.dts | 56 +++++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-ts219.c | 25 ------------- 3 files changed, 112 insertions(+), 25 deletions(-)
arch/arm/boot/dts/kirkwood-ts219-6281.dts +56 -0
@@ -3,6 +3,62 @@ /include/ "kirkwood-ts219.dtsi" / { + ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_uart0 &pmx_uart1 &pmx_spi + &pmx_twsi0 &pmx_sata0 &pmx_sata1 + &pmx_ram_size &pmx_reset_button + &pmx_USB_copy_button &pmx_board_id>; + pinctrl-names = "default"; + + pmx_uart0: pmx-uart0 { + marvell,pins = "mpp10", "mpp11"; + marvell,function = "uart0"; + }; + pmx_uart1: pmx-uart1 { + marvell,pins = "mpp13", "mpp14"; + marvell,function = "uart1"; + }; + pmx_spi: pmx-spi { + marvell,pins = "mpp0", "mpp1", "mpp2", "mpp3"; + marvell,function = "spi"; + }; + pmx_twsi0: pmx-twsi0 { + marvell,pins = "mpp8", "mpp9"; + marvell,function = "twsi0"; + }; + pmx_sata0: pmx-sata0 { + marvell,pins = "mpp5", "mpp21", "mpp23"; + marvell,function = "sata0"; + }; + pmx_sata1: pmx-sata1 { + marvell,pins = "mpp4", "mpp20", "mpp22"; + marvell,function = "sata1"; + }; + pmx_ram_size: pmx-ram-size { + /* RAM: 0: 256 MB, 1: 512 MB */ + marvell,pins = "mpp36"; + marvell,function = "gpio"; + }; + pmx_USB_copy_button: pmx-USB-copy-button { + marvell,pins = "mpp15"; + marvell,function = "gpio"; + }; + pmx_reset_button: pmx-reset-button { + marvell,pins = "mpp16"; + marvell,function = "gpio"; + }; + pmx_board_id: pmx-board-id { + /* 0: TS-11x, 1: TS-21x */ + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + }; + }; + gpio_keys { compatible = "gpio-keys"; #address-cells = <1>;
arch/arm/boot/dts/kirkwood-ts219-6282.dts +56 -0
62 lines not on this page · raw message
arch/arm/mach-kirkwood/board-ts219.c +0 -25
@@ -26,41 +26,16 @@#include <asm/mach/arch.h> #include <mach/kirkwood.h> #include "common.h" -#include "mpp.h" #include "tsx1x-common.h" static struct mv643xx_eth_platform_data qnap_ts219_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (8 ), }; -static unsigned int qnap_ts219_mpp_config[]__initdata = { - MPP0_SPI_SCn, -MPP1_SPI_MOSI , -MPP2_SPI_SCK , -MPP3_SPI_MISO , - MPP4_SATA1_ACTn, - MPP5_SATA0_ACTn, -MPP8_TW0_SDA , -MPP9_TW0_SCK , -MPP10_UART0_TXD , -MPP11_UART0_RXD , -MPP13_UART1_TXD ,/* PIC controller */ -MPP14_UART1_RXD ,/* PIC controller */ -MPP15_GPIO ,/* USB Copy button (on devices with 88F6281) */ -MPP16_GPIO ,/* Reset button (on devices with 88F6281) */ -MPP36_GPIO ,/* RAM: 0: 256 MB, 1: 512 MB */ -MPP37_GPIO ,/* Reset button (on devices with 88F6282) */ -MPP43_GPIO ,/* USB Copy button (on devices with 88F6282) */ -MPP44_GPIO ,/* Board ID: 0: TS-11x, 1: TS-21x */ -0 -}; -void __init qnap_dt_ts219_init (void ) {u32 dev, rev; -kirkwood_mpp_conf (qnap_ts219_mpp_config); -kirkwood_pcie_id (&dev, &rev);if (dev ==MV88F6282_DEV_ID ) qnap_ts219_ge00_data.phy_addr =MV643XX_ETH_PHY_ADDR (0 );
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 4/11 ARM: Kirkwood: Convert iConnect to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-iconnect.dts | 52 +++++++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-iconnect.c | 17 ---------- 2 files changed, 52 insertions(+), 17 deletions(-)
arch/arm/boot/dts/kirkwood-iconnect.dts +52 -0
@@ -18,6 +18,58 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_gpio_12 &pmx_gpio_35 + &pmx_gpio_41 &pmx_gpio_42 + &pmx_gpio_43 &pmx_gpio_44 + &pmx_gpio_45 &pmx_gpio_46 + &pmx_gpio_47 &pmx_gpio_48 >; + pinctrl-names = "default"; + + pmx_gpio_12: pmx-gpio-12 { + marvell,pins = "mpp12"; + marvell,function = "gpio"; + }; + pmx_gpio_35: pmx-gpio-35 { + marvell,pins = "mpp35"; + marvell,function = "gpio"; + }; + pmx_gpio_41: pmx-gpio-41 { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + pmx_gpio_42: pmx-gpio-42 { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + pmx_gpio_43: pmx-gpio-43 { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + pmx_gpio_44: pmx-gpio-44 { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + pmx_gpio_45: pmx-gpio-45 { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + pmx_gpio_46: pmx-gpio-46 { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + pmx_gpio_47: pmx-gpio-47 { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + pmx_gpio_48: pmx-gpio-48 { + marvell,pins = "mpp48"; + marvell,function = "gpio"; + }; + }; i2c at 11000 { status = "okay";
arch/arm/mach-kirkwood/board-iconnect.c +0 -17
@@ -21,30 +21,13 @@#include <asm/mach/arch.h> #include <mach/kirkwood.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data iconnect_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (11 ), }; -static unsigned int iconnect_mpp_config[]__initdata = { -MPP12_GPIO , -MPP35_GPIO , -MPP41_GPIO , -MPP42_GPIO , -MPP43_GPIO , -MPP44_GPIO , -MPP45_GPIO , -MPP46_GPIO , -MPP47_GPIO , -MPP48_GPIO , -0 -}; -void __init iconnect_init (void ) { -kirkwood_mpp_conf (iconnect_mpp_config); -kirkwood_ehci_init ();kirkwood_ge00_init (&iconnect_ge00_data); }
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 5/11 ARM: Kirkwood: Convert dnskw to pinctrl
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-dnskw.dtsi | 136 +++++++++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-dnskw.c | 37 --------- 2 files changed, 136 insertions(+), 37 deletions(-)
arch/arm/boot/dts/kirkwood-dnskw.dtsi +136 -0
@@ -36,6 +36,142 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_uart1 &pmx_sata1 + &pmx_gpio_24 &pmx_gpio_25 + &pmx_led_power &pmx_led_power + &pmx_led_red_right_hdd + &pmx_led_red_left_hdd + &pmx_led_red_usb_325 + &pmx_gpio_30 &pmx_gpio_31 + &pmx_gpio_32 &pmx_gpio_33 + &pmx_button_power + &pmx_led_red_usb_320 + &pmx_power_off &pmx_power_back_on + &pmx_power_sata0 &pmx_power_sata1 + &pmx_present_sata0 &pmx_present_sata1 + &pmx_led_white_usb &pmx_fan_tacho + &pmx_fan_high_speed &pmx_fan_low_speed + &pmx_button_unmount &pmx_button_reset + &pmx_temp_alarm >; + pinctrl-names = "default"; + + pmx_uart1: pmx-uart1 { + marvell,pins = "mpp13", "mpp14"; + marvell,function = "uart1"; + }; + pmx_sata1: pmx-sata1 { + marvell,pins = "mpp4", "mpp20", "mpp22"; + marvell,function = "sata1"; + }; + pmx_gpio_24: pmx-gpio-24 { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + pmx_gpio_25: pmx-gpio-25 { + marvell,pins = "mpp25"; + marvell,function = "gpio"; + }; + pmx_led_power: pmx-led-power { + marvell,pins = "mpp26"; + marvell,function = "gpio"; + }; + pmx_led_red_right_hdd: pmx-led-red-right-hdd { + marvell,pins = "mpp27"; + marvell,function = "gpio"; + }; + pmx_led_red_left_hdd: pmx-led-red-left-hdd { + marvell,pins = "mpp28"; + marvell,function = "gpio"; + }; + pmx_led_red_usb_325: pmx-led-red-usb-325 { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + pmx_gpio_30: pmx-gpio-30 { + marvell,pins = "mpp30"; + marvell,function = "gpio"; + }; + pmx_gpio_31: pmx-gpio-31 { + marvell,pins = "mpp31"; + marvell,function = "gpio"; + }; + pmx_gpio_32: pmx-gpio-32 { + marvell,pins = "mpp32"; + marvell,function = "gpio"; + }; + pmx_gpio_33: pmx-gpio-33 { + marvell,pins = "mpp33"; + marvell,function = "gpio"; + }; + pmx_button_power: pmx-button-power { + marvell,pins = "mpp34"; + marvell,function = "gpio"; + }; + pmx_led_red_usb_320: pmx-led-red-usb-320 { + marvell,pins = "mpp35"; + marvell,function = "gpio"; + }; + pmx_power_off: pmx-power-off { + marvell,pins = "mpp36"; + marvell,function = "gpio"; + }; + pmx_power_back_on: pmx-power-back-on { + marvell,pins = "mpp37"; + marvell,function = "gpio"; + }; + pmx_gpio_38: pmx-gpio-38 { + marvell,pins = "mpp38"; + marvell,function = "gpio"; + }; + pmx_power_sata0: pmx-power-sata0 { + marvell,pins = "mpp39"; + marvell,function = "gpio"; + }; + pmx_power_sata1: pmx-power-sata1 { + marvell,pins = "mpp40"; + marvell,function = "gpio"; + }; + pmx_present_sata0: pmx-present-sata0 { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + pmx_present_sata1: pmx-present-sata1 { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + pmx_led_white_usb: pmx-led-white-usb { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + pmx_fan_tacho: pmx-fan-tacho { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + pmx_fan_high_speed: pmx-fan-high-speed { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + pmx_fan_low_speed: pmx-fan-low-speed { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + pmx_button_unmount: pmx-button-unmount { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + pmx_button_reset: pmx-button-reset { + marvell,pins = "mpp48"; + marvell,function = "gpio"; + }; + pmx_temp_alarm: pmx-temp-alarm { + marvell,pins = "mpp49"; + marvell,function = "gpio"; + }; + }; sata at 80000 { status = "okay"; nr-ports = <2>;
arch/arm/mach-kirkwood/board-dnskw.c +0 -37
@@ -17,46 +17,11 @@#include <linux/mv643xx_eth.h> #include <linux/gpio.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data dnskw_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (8 ), }; -static unsigned int dnskw_mpp_config[]__initdata = { -MPP13_UART1_TXD ,/* Custom ... */ -MPP14_UART1_RXD ,/* ... Controller (DNS-320 only) */ - MPP20_SATA1_ACTn,/* LED: White Right HDD */ - MPP21_SATA0_ACTn,/* LED: White Left HDD */ -MPP24_GPIO , -MPP25_GPIO , -MPP26_GPIO ,/* LED: Power */ -MPP27_GPIO ,/* LED: Red Right HDD */ -MPP28_GPIO ,/* LED: Red Left HDD */ -MPP29_GPIO ,/* LED: Red USB (DNS-325 only) */ -MPP30_GPIO , -MPP31_GPIO , -MPP32_GPIO , -MPP33_GPO , -MPP34_GPIO ,/* Button: Front power */ -MPP35_GPIO ,/* LED: Red USB (DNS-320 only) */ -MPP36_GPIO ,/* Power: Turn off board */ -MPP37_GPIO ,/* Power: Turn back on after power failure */ -MPP38_GPIO , -MPP39_GPIO ,/* Power: SATA0 */ -MPP40_GPIO ,/* Power: SATA1 */ -MPP41_GPIO ,/* SATA0 present */ -MPP42_GPIO ,/* SATA1 present */ -MPP43_GPIO ,/* LED: White USB */ -MPP44_GPIO ,/* Fan: Tachometer Pin */ -MPP45_GPIO ,/* Fan: high speed */ -MPP46_GPIO ,/* Fan: low speed */ -MPP47_GPIO ,/* Button: Back unmount */ -MPP48_GPIO ,/* Button: Back reset */ -MPP49_GPIO ,/* Temp Alarm (DNS-325) Pin of U5 (DNS-320) */ -0 -}; -static void dnskw_power_off (void ) {gpio_set_value (36 ,1 );
@@ -76,8 +41,6 @@ static void __init dnskw_gpio_register(unsigned gpio, char *name, int def)void __init dnskw_init (void ) { -kirkwood_mpp_conf (dnskw_mpp_config); -kirkwood_ehci_init ();kirkwood_ge00_init (&dnskw_ge00_data);
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 6/11 ARM: Kirkwood: Convert dockstar to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-dockstar.dts | 21 +++++++++++++++++++++ arch/arm/mach-kirkwood/board-dockstar.c | 10 ---------- 2 files changed, 21 insertions(+), 10 deletions(-)
arch/arm/boot/dts/kirkwood-dockstar.dts +21 -0
@@ -16,6 +16,27 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_usb_power_enable + &pmx_led_green &pmx_led_orange >; + pinctrl-names = "default"; + + pmx_usb_power_enable: pmx-usb-power-enable { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + pmx_led_green: pmx-led-green { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + pmx_led_orange: pmx-led-orange { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + }; serial at 12000 { clock-frequency = <200000000>; status = "ok";
arch/arm/mach-kirkwood/board-dockstar.c +0 -10
@@ -32,26 +32,16 @@#include <mach/bridge-regs.h> #include <linux/platform_data/mmc-mvsdio.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data dockstar_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (0 ), }; -static unsigned int dockstar_mpp_config[]__initdata = { -MPP29_GPIO ,/* USB Power Enable */ -MPP46_GPIO ,/* LED green */ -MPP47_GPIO ,/* LED orange */ -0 -}; -void __init dockstar_dt_init (void ) {/* * Basic setup. Needs to be called early. */ -kirkwood_mpp_conf (dockstar_mpp_config); -if (gpio_request (29 ,"USB Power Enable" ) !=0 ||gpio_direction_output (29 ,1 ) !=0 )pr_err ("can't setup GPIO 29 (USB Power Enable)\n" );
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 7/11 ARM: Kirkwood: Convert dreamplug to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-dreamplug.dts | 26 ++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-dreamplug.c | 14 -------------- 2 files changed, 26 insertions(+), 14 deletions(-)
arch/arm/boot/dts/kirkwood-dreamplug.dts +26 -0
@@ -16,6 +16,32 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_spi + &pmx_led_bluetooth &pmx_led_wifi + &pmx_led_wifi_ap >; + pinctrl-names = "default"; + + pmx_spi: pmx-spi { + marvell,pins = "mpp0", "mpp1", "mpp2", "mpp3"; + marvell,function = "spi"; + }; + pmx_led_bluetooth: pmx-led-bluetooth { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + pmx_led_wifi: pmx-led-wifi { + marvell,pins = "mpp48"; + marvell,function = "gpio"; + }; + pmx_led_wifi_ap: pmx-led-wifi-ap { + marvell,pins = "mpp49"; + marvell,function = "gpio"; + }; + }; serial at 12000 { clock-frequency = <200000000>; status = "ok";
arch/arm/mach-kirkwood/board-dreamplug.c +0 -14
@@ -32,7 +32,6 @@#include <mach/bridge-regs.h> #include <linux/platform_data/mmc-mvsdio.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data dreamplug_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (0 ),
@@ -46,24 +45,11 @@ static struct mvsdio_platform_data dreamplug_mvsdio_data = {/* unfortunately the CD signal has not been connected */ }; -static unsigned int dreamplug_mpp_config[]__initdata = { - MPP0_SPI_SCn, -MPP1_SPI_MOSI , -MPP2_SPI_SCK , -MPP3_SPI_MISO , -MPP47_GPIO ,/* Bluetooth LED */ -MPP48_GPIO ,/* Wifi LED */ -MPP49_GPIO ,/* Wifi AP LED */ -0 -}; -void __init dreamplug_init (void ) {/* * Basic setup. Needs to be called early. */ -kirkwood_mpp_conf (dreamplug_mpp_config); -kirkwood_ehci_init ();kirkwood_ge00_init (&dreamplug_ge00_data);kirkwood_ge01_init (&dreamplug_ge01_data);
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 8/11 ARM: Kirkwood: Convert GoFlex Net to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-goflexnet.dts | 57 ++++++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-goflexnet.c | 18 ---------- 2 files changed, 57 insertions(+), 18 deletions(-)
arch/arm/boot/dts/kirkwood-goflexnet.dts +57 -0
@@ -16,6 +16,63 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_usb_power_enable &pmx_led_orange + &pmx_led_left_cap_0 &pmx_led_left_cap_1 + &pmx_led_left_cap_2 &pmx_led_left_cap_3 + &pmx_led_right_cap_0 &pmx_led_right_cap_1 + &pmx_led_right_cap_2 &pmx_led_right_cap_3 + >; + pinctrl-names = "default"; + + pmx_usb_power_enable: pmx-usb-power-enable { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + pmx_led_right_cap_0: pmx-led_right_cap_0 { + marvell,pins = "mpp38"; + marvell,function = "gpio"; + }; + pmx_led_right_cap_1: pmx-led_right_cap_1 { + marvell,pins = "mpp39"; + marvell,function = "gpio"; + }; + pmx_led_right_cap_2: pmx-led_right_cap_2 { + marvell,pins = "mpp40"; + marvell,function = "gpio"; + }; + pmx_led_right_cap_3: pmx-led_right_cap_3 { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + pmx_led_left_cap_0: pmx-led_left_cap_0 { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + pmx_led_left_cap_1: pmx-led_left_cap_1 { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + pmx_led_left_cap_2: pmx-led_left_cap_2 { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + pmx_led_left_cap_3: pmx-led_left_cap_3 { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + pmx_led_green: pmx-led_green { + marvell,pins = "mpp46"; + marvell,function = "gpio"; + }; + pmx_led_orange: pmx-led_orange { + marvell,pins = "mpp47"; + marvell,function = "gpio"; + }; + }; serial at 12000 { clock-frequency = <200000000>; status = "ok";
arch/arm/mach-kirkwood/board-goflexnet.c +0 -18
@@ -34,34 +34,16 @@#include <mach/bridge-regs.h> #include <linux/platform_data/mmc-mvsdio.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data goflexnet_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (0 ), }; -static unsigned int goflexnet_mpp_config[]__initdata = { -MPP29_GPIO ,/* USB Power Enable */ -MPP47_GPIO ,/* LED Orange */ -MPP46_GPIO ,/* LED Green */ -MPP45_GPIO ,/* LED Left Capacity 3 */ -MPP44_GPIO ,/* LED Left Capacity 2 */ -MPP43_GPIO ,/* LED Left Capacity 1 */ -MPP42_GPIO ,/* LED Left Capacity 0 */ -MPP41_GPIO ,/* LED Right Capacity 3 */ -MPP40_GPIO ,/* LED Right Capacity 2 */ -MPP39_GPIO ,/* LED Right Capacity 1 */ -MPP38_GPIO ,/* LED Right Capacity 0 */ -0 -}; -void __init goflexnet_init (void ) {/* * Basic setup. Needs to be called early. */ -kirkwood_mpp_conf (goflexnet_mpp_config); -if (gpio_request (29 ,"USB Power Enable" ) !=0 ||gpio_direction_output (29 ,1 ) !=0 )pr_err ("can't setup GPIO 29 (USB Power Enable)\n" );
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 9/11 ARM: Kirkwood: Convert ib62x0 to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-ib62x0.dts | 41 +++++++++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-ib62x0.c | 21 ----------------- 2 files changed, 41 insertions(+), 21 deletions(-)
arch/arm/boot/dts/kirkwood-ib62x0.dts +41 -0
@@ -16,6 +16,47 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_nand + &pmx_led_os_red &pmx_power_off + &pmx_led_os_green &pmx_led_usb_transfer + &pmx_button_reset &pmx_button_usb_copy >; + pinctrl-names = "default"; + + pmx_nand: pmx-nand { + marvell,pins = "mpp0", "mpp1", "mpp2", "mpp3", + "mpp04", "mpp5", "mpp18", + "mpp19"; + marvell,function = "nand"; + }; + pmx_led_os_red: pmx-led-os-red { + marvell,pins = "mpp22"; + marvell,function = "gpio"; + }; + pmx_power_off: pmx-power-off { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + pmx_led_os_green: pmx-led-os-green { + marvell,pins = "mpp25"; + marvell,function = "gpio"; + }; + pmx_led_usb_transfer: pmx-led-usb-transfer { + marvell,pins = "mpp27"; + marvell,function = "gpio"; + }; + pmx_button_reset: pmx-button-reset { + marvell,pins = "mpp28"; + marvell,function = "gpio"; + }; + pmx_button_usb_copy: pmx-button-usb-copy { + marvell,pins = "mpp29"; + marvell,function = "gpio"; + }; + }; serial at 12000 { clock-frequency = <200000000>; status = "okay";
arch/arm/mach-kirkwood/board-ib62x0.c +0 -21
@@ -23,7 +23,6 @@#include <asm/mach/arch.h> #include <mach/kirkwood.h> #include "common.h" -#include "mpp.h" #define IB62X0_GPIO_POWER_OFF 24
@@ -31,24 +30,6 @@ static struct mv643xx_eth_platform_data ib62x0_ge00_data = { .phy_addr = MV643XX_ETH_PHY_ADDR(8), }; -static unsigned int ib62x0_mpp_config[]__initdata = { -MPP0_NF_IO2 , -MPP1_NF_IO3 , -MPP2_NF_IO4 , -MPP3_NF_IO5 , -MPP4_NF_IO6 , -MPP5_NF_IO7 , -MPP18_NF_IO0 , -MPP19_NF_IO1 , -MPP22_GPIO ,/* OS LED red */ -MPP24_GPIO ,/* Power off device */ -MPP25_GPIO ,/* OS LED green */ -MPP27_GPIO ,/* USB transfer LED */ -MPP28_GPIO ,/* Reset button */ -MPP29_GPIO ,/* USB Copy button */ -0 -}; -static void ib62x0_power_off (void ) {gpio_set_value (IB62X0_GPIO_POWER_OFF ,1 );
@@ -59,8 +40,6 @@ void __init ib62x0_init(void)/* * Basic setup. Needs to be called early. */ -kirkwood_mpp_conf (ib62x0_mpp_config); -kirkwood_ehci_init ();kirkwood_ge00_init (&ib62x0_ge00_data); if (gpio_request(IB62X0_GPIO_POWER_OFF, "ib62x0:power:off") == 0 &&
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 10/11 ARM: Kirkwood: Convert lsxl boards to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-lsxl.dtsi | 67 ++++++++++++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-lsxl.c | 19 ---------- 2 files changed, 67 insertions(+), 19 deletions(-)
arch/arm/boot/dts/kirkwood-lsxl.dtsi +67 -0
@@ -6,6 +6,73 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_power_hdd &pmx_usb_vbus + &pmx_fan_low &pmx_fan_high + &pmx_led_function_red &pmx_led_alarm + &pmx_led_info &pmx_led_power + &pmx_fan_lock &pmx_button_function + &pmx_power_switch &pmx_power_auto_switch + &pmx_led_function_blue >; + pinctrl-names = "default"; + + pmx_power_hdd: pmx-power-hdd { + marvell,pins = "mpp10"; + marvell,function = "gpio"; + }; + pmx_usb_vbus: pmx-usb-vbus { + marvell,pins = "mpp11"; + marvell,function = "gpio"; + }; + pmx_fan_high: pmx-fan-high { + marvell,pins = "mpp18"; + marvell,function = "gpo"; + }; + pmx_fan_low: pmx-fan-low { + marvell,pins = "mpp19"; + marvell,function = "gpo"; + }; + pmx_led_function_blue: pmx-led-function-blue { + marvell,pins = "mpp36"; + marvell,function = "gpio"; + }; + pmx_led_alarm: pmx-led-alarm { + marvell,pins = "mpp37"; + marvell,function = "gpio"; + }; + pmx_led_info: pmx-led-info { + marvell,pins = "mpp38"; + marvell,function = "gpio"; + }; + pmx_led_power: pmx-led-power { + marvell,pins = "mpp39"; + marvell,function = "gpio"; + }; + pmx_fan_lock: pmx-fan-lock { + marvell,pins = "mpp40"; + marvell,function = "gpo"; + }; + pmx_button_function: pmx-button-function { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + pmx_power_switch: pmx-power-switch { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + pmx_power_auto_switch: pmx-power-auto-switch { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + pmx_led_function_red: pmx-led-function_red { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + + }; sata at 80000 { status = "okay"; nr-ports = <1>;
arch/arm/mach-kirkwood/board-lsxl.c +0 -19
@@ -26,7 +26,6 @@#include <asm/mach/arch.h> #include <mach/kirkwood.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data lsxl_ge00_data = { .phy_addr =MV643XX_ETH_PHY_ADDR (0 ),
@@ -36,23 +35,6 @@ static struct mv643xx_eth_platform_data lsxl_ge01_data = { .phy_addr = MV643XX_ETH_PHY_ADDR(8), }; -static unsigned int lsxl_mpp_config[]__initdata = { -MPP10_GPO ,/* HDD Power Enable */ -MPP11_GPIO ,/* USB Vbus Enable */ -MPP18_GPO ,/* FAN High Enable# */ -MPP19_GPO ,/* FAN Low Enable# */ -MPP36_GPIO ,/* Function Blue LED */ -MPP37_GPIO ,/* Alarm LED */ -MPP38_GPIO ,/* Info LED */ -MPP39_GPIO ,/* Power LED */ -MPP40_GPIO ,/* Fan Lock */ -MPP41_GPIO ,/* Function Button */ -MPP42_GPIO ,/* Power Switch */ -MPP43_GPIO ,/* Power Auto Switch */ -MPP48_GPIO ,/* Function Red LED */ -0 -}; -#define LSXL_GPIO_FAN_HIGH 18#define LSXL_GPIO_FAN_LOW 19#define LSXL_GPIO_FAN_LOCK 40
@@ -119,7 +101,6 @@ void __init lsxl_init(void)/* * Basic setup. Needs to be called early. */ -kirkwood_mpp_conf (lsxl_mpp_config);/* usb and sata power on */ gpio_set_value (LSXL_GPIO_USB_POWER ,1 );
Signature · 1 line
1.7.10.4
Andrew Lunn
maintainerRFC 11/11 ARM: Kirkwood: Convert IX2-200 to pinctrl.
In reply to Andrew Lunn--- arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts | 90 +++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-iomega_ix2_200.c | 24 ------- 2 files changed, 90 insertions(+), 24 deletions(-)
arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts +90 -0
@@ -16,6 +16,96 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>; + + pinctrl-0 = < &pmx_button_reset &pmx_button_power + &pmx_led_backup &pmx_led_power + &pmx_button_otb &pmx_led_rebuild + &pmx_led_health + &pmx_led_sata_brt_ctrl_1 + &pmx_led_sata_brt_ctrl_2 + &pmx_led_backup_brt_ctrl_1 + &pmx_led_backup_brt_ctrl_2 + &pmx_led_power_brt_ctrl_1 + &pmx_led_power_brt_ctrl_2 + &pmx_led_health_brt_ctrl_1 + &pmx_led_health_brt_ctrl_2 + &pmx_led_rebuild_brt_ctrl_1 + &pmx_led_rebuild_brt_ctrl_2 >; + pinctrl-names = "default"; + + pmx_button_reset: pmx-button-reset { + marvell,pins = "mpp12"; + marvell,function = "gpio"; + }; + pmx_button_power: pmx-button-power { + marvell,pins = "mpp14"; + marvell,function = "gpio"; + }; + pmx_led_backup: pmx-led-backup { + marvell,pins = "mpp15"; + marvell,function = "gpio"; + }; + pmx_led_power: pmx-led-power { + marvell,pins = "mpp16"; + marvell,function = "gpio"; + }; + pmx_button_otb: pmx-button-otb { + marvell,pins = "mpp35"; + marvell,function = "gpio"; + }; + pmx_led_rebuild: pmx-led-rebuild { + marvell,pins = "mpp36"; + marvell,function = "gpio"; + }; + pmx_led_health: pmx-led_health { + marvell,pins = "mpp37"; + marvell,function = "gpio"; + }; + pmx_led_sata_brt_ctrl_1: pmx-led-sata-brt-ctrl-1 { + marvell,pins = "mpp38"; + marvell,function = "gpio"; + }; + pmx_led_sata_brt_ctrl_2: pmx-led-sata-brt-ctrl-2 { + marvell,pins = "mpp39"; + marvell,function = "gpio"; + }; + pmx_led_backup_brt_ctrl_1: pmx-led-backup-brt-ctrl-1 { + marvell,pins = "mpp40"; + marvell,function = "gpio"; + }; + pmx_led_backup_brt_ctrl_2: pmx-led-backup-brt-ctrl-2 { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + pmx_led_power_brt_ctrl_1: pmx-led-power-brt-ctrl-1 { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + pmx_led_power_brt_ctrl_2: pmx-led-power-brt-ctrl-2 { + marvell,pins = "mpp43"; + marvell,function = "gpio"; + }; + pmx_led_health_brt_ctrl_1: pmx-led-health-brt-ctrl-1 { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + pmx_led_health_brt_ctrl_2: pmx-led-health-brt-ctrl-2 { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + pmx_led_rebuild_brt_ctrl_1: pmx-led-rebuild-brt-ctrl-1 { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + pmx_led_rebuild_brt_ctrl_2: pmx-led-rebuild-brt-ctrl-2 { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + + }; i2c at 11000 { status = "okay";
arch/arm/mach-kirkwood/board-iomega_ix2_200.c +0 -24
@@ -15,7 +15,6 @@#include <linux/ethtool.h> #include <mach/kirkwood.h> #include "common.h" -#include "mpp.h" static struct mv643xx_eth_platform_data iomega_ix2_200_ge00_data = { .phy_addr =MV643XX_ETH_PHY_NONE ,
@@ -23,34 +22,11 @@ static struct mv643xx_eth_platform_data iomega_ix2_200_ge00_data = { .duplex = DUPLEX_FULL, }; -static unsigned int iomega_ix2_200_mpp_config[]__initdata = { -MPP12_GPIO ,/* Reset Button */ -MPP14_GPIO ,/* Power Button */ -MPP15_GPIO ,/* Backup LED (blue) */ -MPP16_GPIO ,/* Power LED (white) */ -MPP35_GPIO ,/* OTB Button */ -MPP36_GPIO ,/* Rebuild LED (white) */ -MPP37_GPIO ,/* Health LED (red) */ -MPP38_GPIO ,/* SATA LED brightness control 1 */ -MPP39_GPIO ,/* SATA LED brightness control 2 */ -MPP40_GPIO ,/* Backup LED brightness control 1 */ -MPP41_GPIO ,/* Backup LED brightness control 2 */ -MPP42_GPIO ,/* Power LED brightness control 1 */ -MPP43_GPIO ,/* Power LED brightness control 2 */ -MPP44_GPIO ,/* Health LED brightness control 1 */ -MPP45_GPIO ,/* Health LED brightness control 2 */ -MPP46_GPIO ,/* Rebuild LED brightness control 1 */ -MPP47_GPIO ,/* Rebuild LED brightness control 2 */ -0 -}; -void __init iomega_ix2_200_init (void ) {/* * Basic setup. Needs to be called early. */ -kirkwood_mpp_conf (iomega_ix2_200_mpp_config); -kirkwood_ehci_init ();kirkwood_ge01_init (&iomega_ix2_200_ge00_data);
Signature · 1 line
1.7.10.4
A message that is not in the archive (sent off-list or not yet received): [email protected]
Andrew Lunn
maintainercover Convert Kirkwood to pinctrl
Quoted 11 lines · Simon Baatz
Hi Andrew,
Quoted 3 lines · Andrew Lunn
This patchset converts all kirkwood DT boards to pinctrl. It is an RFC for a number of reasons:
It seems that the mails with the actual patches somehow got lost. If it is not too much work, could you provide these patches also via your git repository on github?
Hi Simon
Yes, the list server did not like them for some reason. Seams to work sometimes, not others.
Anyway:
git://github.com/lunn/linux.git v3.7-rc1-pinctrl
Once i have all the CPU variants, i will repost the patchset.
Andrew
cover Convert Kirkwood to pinctrl
In reply to Andrew LunnDear Andrew Lunn,
Quoted 2 lines · Andrew Lunn
This patchset converts all kirkwood DT boards to pinctrl. It is an RFC for a number of reasons:
Thanks for doing this work!
Quoted 2 lines
Do we want to enable the use of mvebu GPIO driver
outside of mach-mvebu?
Yes.
Quoted 2 lines
Do we want to enable the use of mvebu pinctrl driver outside of mach-mvebu?
Yes.
Generally speaking, I think it is a good idea for mach-{mvebu,kirkwood,dove,mv78xx0,orion5x} to share as much infrastructure code as possible. A first step is obviously to migrate everybody to use the drivers/gpio mvebu driver and the drivers/pinctrl mvebu driver, and get rid of plat-orion/{gpio,mpp}.c once this work is done.
Best regards,
Thomas
Signature · 4 lines
Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com
Andrew Lunn
maintainercover Convert Kirkwood to pinctrl
Quoted 14 lines · Thomas Petazzoni
Dear Andrew Lunn,
Quoted 2 lines · Andrew Lunn
This patchset converts all kirkwood DT boards to pinctrl. It is an RFC for a number of reasons:
Thanks for doing this work!
Quoted 2 lines
Do we want to enable the use of mvebu GPIO driver
outside of mach-mvebu?Yes.
Quoted 8 lines
Quoted 2 lines
Do we want to enable the use of mvebu pinctrl driver outside of mach-mvebu?
Yes.
Generally speaking, I think it is a good idea for mach-{mvebu,kirkwood,dove,mv78xx0,orion5x} to share as much infrastructure code as possible.
Definitely.
However, i _think_ Sebastian had a different opinion to your two yes's. Maybe its just for Dove?
I hope Sebastian will comment soon.
Andrew
Sebastian Hesselbarth
maintainercover Convert Kirkwood to pinctrl
Quoted 14 lines · Andrew Lunn
Quoted 5 lines
Quoted 2 lines
Do we want to enable the use of mvebu GPIO driver
outside of mach-mvebu?Yes.
Quoted 8 lines
Quoted 2 lines
Do we want to enable the use of mvebu pinctrl driver outside of mach-mvebu?
Yes.
Generally speaking, I think it is a good idea for mach-{mvebu,kirkwood,dove,mv78xx0,orion5x} to share as much infrastructure code as possible.
Quoted 6 lines
Definitely.
However, i _think_ Sebastian had a different opinion to your two yes's. Maybe its just for Dove?
I hope Sebastian will comment soon.
Andrew, Thomas,
we had long discussions about this some time ago. I agree to both of Thomas' "yes" above as you convinced me that this is the best way of merging plat-orion and mach-mvebu.
Do you want to add dove pinctrl to your patch set? If yes, when do you want to post v1 of this RFC?
Sebastian
Andrew Lunn
maintainercover Convert Kirkwood to pinctrl
Quoted 10 lines
Quoted 4 lines
However, i _think_ Sebastian had a different opinion to your two yes's. Maybe its just for Dove?
I hope Sebastian will comment soon.
Andrew, Thomas,
we had long discussions about this some time ago. I agree to both of Thomas' "yes" above as you convinced me that this is the best way of merging plat-orion and mach-mvebu.
O.K, great.
Quoted 3 lines
Do you want to add dove pinctrl to your patch set? If yes, when do you want to post v1 of this RFC?
Maybe we should split this into three patchsets.
1) Enable pinctl and gpio for both Dove and Kirkwood
2) Convert all the kirkwood boards
3) Convert all the Dove boards.
The conversion of kirkwood could take some time, since i would like a
tested-by: for each board. I think you have all the current Dove boards, so could test very quickly. So this split of patchsets should not hold you up much.
I will post the first two patches in my current set today, so you can extend it with Dove.
Andrew