From 0755c2d117060a252674191b98bc852ccd8840fe Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Fri, 1 Jul 2016 11:23:06 +0200 Subject: brcm63xx: add pinctrl support Add and enable pincontrol drivers, and update dts(i) files with appropriate hogs. Signed-off-by: Jonas Gorski --- target/linux/brcm63xx/dts/bcm6358.dtsi | 72 +++++++++++++++++++++++++++------- 1 file changed, 57 insertions(+), 15 deletions(-) (limited to 'target/linux/brcm63xx/dts/bcm6358.dtsi') diff --git a/target/linux/brcm63xx/dts/bcm6358.dtsi b/target/linux/brcm63xx/dts/bcm6358.dtsi index e4aecf7970..36b19e7710 100644 --- a/target/linux/brcm63xx/dts/bcm6358.dtsi +++ b/target/linux/brcm63xx/dts/bcm6358.dtsi @@ -5,8 +5,7 @@ aliases { pflash = &pflash; - gpio0 = &gpio0; - gpio1 = &gpio1; + pinctrl = &pinctrl; spi0 = &lsspi; }; @@ -86,31 +85,74 @@ interrupts = <20>, <21>; }; - gpio1: gpio-controller@fffe0080 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xfffe0080 4>, <0xfffe0088 4>; + pinctrl: pin-controller@fffe0080 { + compatible = "brcm,bcm6358-pinctrl"; + reg = <0xfffe0080 0x8>, + <0xfffe0088 0x8>; + reg-names = "dirout", "dat", "mode"; + brcm,gpiomode = <&gpiomode>; gpio-controller; #gpio-cells = <2>; - ngpios = <8>; - interrupts-extended = <&ext_intc1 0 0>, <&ext_intc1 1 0>, <&ext_intc0 0 0>, <&ext_intc0 1 0>, <&ext_intc0 2 0>, <&ext_intc0 3 0>; - interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3", - "gpio4", "gpio5"; + interrupt-names = "gpio32", "gpio33", "gpio34", "gpio35", + "gpio36", "gpio37"; + + pinctrl_ebi_cs: ebi_cs { + function = "ebi_cs"; + groups = "ebi_cs_grp"; + }; + + pinctrl_uart1: uart1 { + function = "uart1"; + groups = "uart1_grp"; + }; + + pinctrl_serial_led: serial_led { + function = "serial_led"; + groups = "serial_led_grp"; + }; + + pinctrl_legacy_led: legacy_led { + function = "legacy_led"; + groups = "legacy_led_grp"; + }; + + pinctrl_led: led { + function = "led"; + groups = "led_grp"; + }; + + pinctrl_spi_cs_23: spi_cs { + function = "spi_cs"; + groups = "spi_cs_grp"; + }; + + pinctrl_utopia: utopia { + function = "utopia"; + groups = "utopia_grp"; + }; + + pinctrl_pwm_syn_clk: pwm_syn_clk { + function = "pwm_syn_clk"; + groups = "pwm_syn_clk_grp"; + }; + + pinctrl_sys_irq: sys_irq { + function = "sys_irq"; + groups = "sys_irq_grp"; + }; }; - gpio0: gpio-controller@fffe0084 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xfffe0084 4>, <0xfffe008c 4>; - - gpio-controller; - #gpio-cells = <2>; + gpiomode: gpiomode@fffe0098 { + compatible = "brcm,bcm6358-gpiomode", "syscon"; + reg = <0xfffe0098 0x4>; }; lsspi: spi@fffe0800 { -- cgit v1.2.3