diff options
author | Jonas Gorski <jonas.gorski@gmail.com> | 2016-07-01 11:23:06 +0200 |
---|---|---|
committer | Jonas Gorski <jonas.gorski@gmail.com> | 2017-06-10 12:40:37 +0200 |
commit | 0755c2d117060a252674191b98bc852ccd8840fe (patch) | |
tree | e401b5b808066ea553fe9f5817378110ed91ffff /target/linux/brcm63xx/dts | |
parent | fd1096e351b7cfb0a7eb8bee7eceff52e7c7c499 (diff) | |
download | upstream-0755c2d117060a252674191b98bc852ccd8840fe.tar.gz upstream-0755c2d117060a252674191b98bc852ccd8840fe.tar.bz2 upstream-0755c2d117060a252674191b98bc852ccd8840fe.zip |
brcm63xx: add pinctrl support
Add and enable pincontrol drivers, and update dts(i) files with
appropriate hogs.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Diffstat (limited to 'target/linux/brcm63xx/dts')
84 files changed, 1501 insertions, 646 deletions
diff --git a/target/linux/brcm63xx/dts/a226g.dts b/target/linux/brcm63xx/dts/a226g.dts index dc24e5a03f..f7a0b72b74 100644 --- a/target/linux/brcm63xx/dts/a226g.dts +++ b/target/linux/brcm63xx/dts/a226g.dts @@ -21,12 +21,12 @@ wps { label = "wps"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_RESTART>; }; }; @@ -36,56 +36,56 @@ voip_red { label = "DWV-S0:red:VoIP"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; eth_red { label = "DWV-S0:red:ethernet"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; dsl_green { label = "DWV-S0:green:ADSL"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; usb_green { label = "DWV-S0:green:USB"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "DWV-S0:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "DWV-S0:red:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; inet_red { label = "DWV-S0:red:internet"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; inet_green { label = "DWV-S0:green:internet"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; eth_green { label = "DWV-S0:green:ethernet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; voip_green { label = "DWV-S0:green:VoIP"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; wifi_red { label = "DWV-S0:red:wifi"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; usb_red { label = "DWV-S0:red:USB"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; dsl_red { label = "DWV-S0:red:ADSL"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/a226m-fwb.dts b/target/linux/brcm63xx/dts/a226m-fwb.dts index ced66ddfcd..43a82bbe18 100644 --- a/target/linux/brcm63xx/dts/a226m-fwb.dts +++ b/target/linux/brcm63xx/dts/a226m-fwb.dts @@ -21,12 +21,12 @@ wps { label = "wps"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_RESTART>; }; }; @@ -36,56 +36,56 @@ voip_red { label = "DWV-S0:red:VoIP"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; eth_red { label = "DWV-S0:red:ethernet"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; dsl_green { label = "DWV-S0:green:ADSL"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; usb_green { label = "DWV-S0:green:USB"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "DWV-S0:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "DWV-S0:red:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; inet_red { label = "DWV-S0:red:internet"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; inet_green { label = "DWV-S0:green:internet"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; eth_green { label = "DWV-S0:green:ethernet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; voip_green { label = "DWV-S0:green:VoIP"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; wifi_red { label = "DWV-S0:red:wifi"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; usb_red { label = "DWV-S0:red:USB"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; dsl_red { label = "DWV-S0:red:ADSL"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/a226m.dts b/target/linux/brcm63xx/dts/a226m.dts index 9a9ec1e1ea..269c4edea6 100644 --- a/target/linux/brcm63xx/dts/a226m.dts +++ b/target/linux/brcm63xx/dts/a226m.dts @@ -21,12 +21,12 @@ wps { label = "wps"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_RESTART>; }; }; @@ -36,56 +36,56 @@ voip_red { label = "DWV-S0:red:VoIP"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; eth_red { label = "DWV-S0:red:ethernet"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; dsl_green { label = "DWV-S0:green:ADSL"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; usb_green { label = "DWV-S0:green:USB"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "DWV-S0:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "DWV-S0:red:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; inet_red { label = "DWV-S0:red:internet"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; inet_green { label = "DWV-S0:green:internet"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; eth_green { label = "DWV-S0:green:ethernet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; voip_green { label = "DWV-S0:green:VoIP"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; wifi_red { label = "DWV-S0:red:wifi"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; usb_red { label = "DWV-S0:red:USB"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; dsl_red { label = "DWV-S0:red:ADSL"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/a4001n.dts b/target/linux/brcm63xx/dts/a4001n.dts index 70eb8cec92..d29b834a3a 100644 --- a/target/linux/brcm63xx/dts/a4001n.dts +++ b/target/linux/brcm63xx/dts/a4001n.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,24 +36,24 @@ inet_red { label = "A4001N:red:inet"; - gpios = <&gpio0 1 0>; + gpios = <&pinctrl 1 0>; }; power_red { label = "A4001N:red:power"; - gpios = <&gpio0 4 0>; + gpios = <&pinctrl 4 0>; }; power_green { label = "A4001N:green:power"; - gpios = <&gpio0 8 0>; + gpios = <&pinctrl 8 0>; default-state = "on"; }; usb_green { label = "A4001N:green:usb"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; dsl_green { label = "A4001N:green:dsl"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/a4001n1.dts b/target/linux/brcm63xx/dts/a4001n1.dts index 8e206866f6..3254897302 100644 --- a/target/linux/brcm63xx/dts/a4001n1.dts +++ b/target/linux/brcm63xx/dts/a4001n1.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; wps { label = "wlan"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_WLAN>; }; }; @@ -36,52 +36,52 @@ inet_red { label = "A4001N1:red:inet"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "A4001N1:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "A4001N1:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; ppp_red { label = "A4001N1:red:ppp"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; usb_green { label = "A4001N1:green:3g"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; usb_red { label = "A4001N1:red:3g"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; power_red { label = "A4001N1:red:power"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; wlan_green { label = "A4001N1:green:wlan"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; wlan_red { label = "A4001N1:red:wlan"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; inet_green { label = "A4001N1:green:inet"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; eth_red { label = "A4001N1:red:eth"; - gpios = <&gpio0 20 1>; + gpios = <&pinctrl 20 1>; }; eth_green { label = "A4001N1:green:eth"; - gpios = <&gpio0 31 1>; + gpios = <&pinctrl 31 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/agpf-s0.dts b/target/linux/brcm63xx/dts/agpf-s0.dts index 3ff9cb2779..be1f9fb4f3 100644 --- a/target/linux/brcm63xx/dts/agpf-s0.dts +++ b/target/linux/brcm63xx/dts/agpf-s0.dts @@ -21,12 +21,12 @@ wps { label = "wps"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_RESTART>; }; }; @@ -36,60 +36,60 @@ power_green { label = "AGPF-S0:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "AGPF-S0:red:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; service_green { label = "AGPF-S0:green:service"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; service_red { label = "AGPF-S0:red:service"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; dsl_green { label = "AGPF-S0:green:adsl"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; dsl_red { label = "AGPF-S0:red:adsl"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; wifi_green { label = "AGPF-S0:green:wifi"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; wifi_red { label = "AGPF-S0:red:wifi"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; inet_red { label = "AGPF-S0:red:internet"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; }; inet_green { label = "AGPF-S0:green:internet"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; }; usr1_green { label = "AGPF-S0:green:usr1"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; usr1_red { label = "AGPF-S0:red:usr1"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; usr2_green { label = "AGPF-S0:green:usr2"; - gpios = <&gpio0 29 1>; + gpios = <&pinctrl 29 1>; }; usr2_red { label = "AGPF-S0:red:usr2"; - gpios = <&gpio0 30 1>; + gpios = <&pinctrl 30 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/ar-5381u.dts b/target/linux/brcm63xx/dts/ar-5381u.dts index 1912fca584..883198c6b0 100644 --- a/target/linux/brcm63xx/dts/ar-5381u.dts +++ b/target/linux/brcm63xx/dts/ar-5381u.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,15 +31,15 @@ alarm_red { label = "AR-5381u:red:alarm"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_green { label = "AR-5381u:green:inet"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "AR-5381u:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; }; diff --git a/target/linux/brcm63xx/dts/ar-5387un.dts b/target/linux/brcm63xx/dts/ar-5387un.dts index bfcd71e627..a0e07fb4fe 100644 --- a/target/linux/brcm63xx/dts/ar-5387un.dts +++ b/target/linux/brcm63xx/dts/ar-5387un.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ inet_red { label = "AR-5387un:red:inet"; - gpios = <&gpio0 1 0>; + gpios = <&pinctrl 1 0>; }; power_red { label = "AR-5387un:red:power"; - gpios = <&gpio0 4 0>; + gpios = <&pinctrl 4 0>; }; inet_green { label = "AR-5387un:green:inet"; - gpios = <&gpio0 7 0>; + gpios = <&pinctrl 7 0>; }; power_green { label = "AR-5387un:green:power"; - gpios = <&gpio0 8 0>; + gpios = <&pinctrl 8 0>; default-state = "on"; }; dsl_green { label = "AR-5387un:green:dsl"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/ar1004g.dts b/target/linux/brcm63xx/dts/ar1004g.dts index 479c934ed5..eb6d9a2b20 100644 --- a/target/linux/brcm63xx/dts/ar1004g.dts +++ b/target/linux/brcm63xx/dts/ar1004g.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,16 +31,16 @@ power_green { label = "AR1004G:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; inet_green { label = "AR1004G:green:inet"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_red { label = "AR1004G:red:power"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; }; }; @@ -66,3 +66,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ext_mii &pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/av4202n.dts b/target/linux/brcm63xx/dts/av4202n.dts index 960e233e3b..a105f3674e 100644 --- a/target/linux/brcm63xx/dts/av4202n.dts +++ b/target/linux/brcm63xx/dts/av4202n.dts @@ -22,12 +22,12 @@ reset { label = "reset"; - gpios = <&gpio1 2 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 34 GPIO_ACTIVE_LOW>; linux,code = <KEY_RESTART>; }; wlan { label = "wlan"; - gpios = <&gpio1 5 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 37 GPIO_ACTIVE_LOW>; linux,code = <KEY_WLAN>; }; }; @@ -37,32 +37,32 @@ power_white { label = "AV4202N:white:power"; - gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 10 GPIO_ACTIVE_LOW>; default-state = "on"; }; power_red { label = "AV4202N:red:power"; - gpios = <&gpio0 11 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 11 GPIO_ACTIVE_LOW>; }; wan_white { label = "AV4202N:white:wan"; - gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 26 GPIO_ACTIVE_LOW>; }; wan_red { label = "AV4202N:red:wan"; - gpios = <&gpio0 27 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 27 GPIO_ACTIVE_LOW>; }; phone_white { label = "AV4202N:white:phone"; - gpios = <&gpio0 24 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 24 GPIO_ACTIVE_LOW>; }; phone_red { label = "AV4202N:red:phone"; - gpios = <&gpio0 25 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 25 GPIO_ACTIVE_LOW>; }; wifi { label = "AV4202N:blue:wifi"; - gpios = <&gpio0 22 GPIO_ACTIVE_LOW>; + gpios = <&pinctrl 22 GPIO_ACTIVE_LOW>; }; }; }; diff --git a/target/linux/brcm63xx/dts/bcm6318.dtsi b/target/linux/brcm63xx/dts/bcm6318.dtsi index a199b03cc0..c1dcad3ced 100644 --- a/target/linux/brcm63xx/dts/bcm6318.dtsi +++ b/target/linux/brcm63xx/dts/bcm6318.dtsi @@ -4,8 +4,7 @@ compatible = "brcm,bcm6318"; aliases { - gpio0 = &gpio0; - gpio1 = &gpio1; + pinctrl = &pinctrl; spi1 = &hsspi; }; @@ -58,26 +57,113 @@ interrupts = <2>; }; - gpio1: gpio-controller@10000080 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000080 4>, <0x10000088 4>; + pinctrl: pin-controller@10000080 { + compatible = "brcm,bcm6318-pinctrl"; + reg = <0x10000080 0x08>, + <0x10000088 0x08>, + <0x10000098 0x04>, + <0x1000009c 0x0c>, + <0x100000d4 0x18>; + reg-names = "dirout", "dat", "mode", "mux", "pad"; gpio-controller; #gpio-cells = <2>; - ngpios = <18>; - interrupt-parent = <&ext_intc>; interrupts = <0 0>, <1 0>; - interrupt-names = "gpio1", "gpio2"; - }; - - gpio0: gpio-controller@10000084 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000084 4>, <0x1000008c 4>; - - gpio-controller; - #gpio-cells = <2>; + interrupt-names = "gpio33", "gpio34"; + + pinctrl_ephy0_spd_led: ephy0_spd_led { + function = "ephy0_spd_led"; + pins = "gpio0"; + }; + + pinctrl_ephy1_spd_led: ephy1_spd_led { + function = "ephy1_spd_led"; + pins = "gpio1"; + }; + + pinctrl_ephy2_spd_led: ephy2_spd_led { + function = "ephy2_spd_led"; + pins = "gpio2"; + }; + + pinctrl_ephy3_spd_led: ephy3_spd_led { + function = "ephy3_spd_led"; + pins = "gpio3"; + }; + + pinctrl_ephy0_act_led: ephy0_act_led { + function = "ephy0_act_led"; + pins = "gpio4"; + }; + + pinctrl_ephy1_act_led: ephy1_act_led { + function = "ephy1_act_led"; + pins = "gpio5"; + }; + + pinctrl_ephy2_act_led: ephy2_act_led { + function = "ephy2_act_led"; + pins = "gpio6"; + }; + + pinctrl_ephy3_act_led: ephy3_act_led { + function = "ephy3_act_led"; + pins = "gpio7"; + }; + + pinctrl_serial_led: serial_led { + pinctrl_serial_led_data: serial_led_data { + function = "serial_led_data"; + pins = "gpio6"; + }; + + pinctrl_serial_led_clk: serial_led_clk { + function = "serial_led_clk"; + pins = "gpio7"; + }; + }; + + pinctrl_inet_act_led: inet_act_led { + function = "inet_act_led"; + pins = "gpio8"; + }; + + pinctrl_inet_fail_led: inet_fail_led { + function = "inet_fail_led"; + pins = "gpio9"; + }; + + pinctrl_dsl_led: dsl_led { + function = "dsl_led"; + pins = "gpio10"; + }; + + pinctrl_post_fail_led: post_fail_led { + function = "post_fail_led"; + pins = "gpio11"; + }; + + pinctrl_wlan_wps_led: wlan_wps_led { + function = "wlan_wps_led"; + pins = "gpio12"; + }; + + pinctrl_usb_pwron: usb_pwron { + function = "usb_pwron"; + pins = "gpio13"; + }; + + pinctrl_usb_device_led: usb_device_led { + function = "usb_device_led"; + pins = "gpio13"; + }; + + pinctrl_usb_active: usb_active { + function = "usb_active"; + pins = "gpio40"; + }; }; hsspi: spi@10003000 { diff --git a/target/linux/brcm63xx/dts/bcm63268.dtsi b/target/linux/brcm63xx/dts/bcm63268.dtsi index a2b683af77..d64fe19d0e 100644 --- a/target/linux/brcm63xx/dts/bcm63268.dtsi +++ b/target/linux/brcm63xx/dts/bcm63268.dtsi @@ -4,8 +4,7 @@ compatible = "brcm,bcm63268"; aliases { - gpio0 = &gpio0; - gpio1 = &gpio1; + pinctrl = &pinctrl; spi0 = &lsspi; spi1 = &hsspi; }; @@ -66,26 +65,132 @@ interrupts = <2>, <3>; }; - gpio1: gpio-controller@100000c0 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x100000c0 4>, <0x100000c8 4>; + pinctrl: pin-controller@100000c0 { + compatible = "brcm,bcm63268-pinctrl"; + reg = <0x100000c0 0x8>, + <0x100000c8 0x8>, + <0x100000d0 0x4>, + <0x100000d8 0x4>, + <0x100000dc 0x4>, + <0x100000f8 0x4>; + reg-names = "dirout", "dat", "led", "mode", + "ctrl", "basemode"; gpio-controller; #gpio-cells = <2>; - ngpios = <20>; - interrupt-parent = <&periph_intc>; interrupts = <0 0>, <1 0>, <2 0>, <3 0>; - interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3"; - }; - - gpio0: gpio-controller@100000c4 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x100000c4 4>, <0x100000cc 4>; - - gpio-controller; - #gpio-cells = <2>; + interrupt-names = "gpio32", "gpio33", "gpio34", "gpio35"; + + pinctrl_serial_led: serial_led { + pinctrl_serial_led_clk: serial_led_clk { + function = "serial_led_clk"; + pins = "gpio0"; + }; + + pinctrl_serial_led_data: serial_led_data { + function = "serial_led_data"; + pins = "gpio1"; + }; + }; + + pinctrl_hsspi_cs4: hsspi_cs4 { + function = "hsspi_cs4"; + pins = "gpio16"; + }; + + pinctrl_hsspi_cs5: hsspi_cs5 { + function = "hsspi_cs5"; + pins = "gpio17"; + }; + + pinctrl_hsspi_cs6: hsspi_cs6 { + function = "hsspi_cs6"; + pins = "gpio8"; + }; + + pinctrl_hsspi_cs7: hsspi_cs7 { + function = "hsspi_cs7"; + pins = "gpio9"; + }; + + pinctrl_adsl_spi: adsl_spi { + pinctrl_adsl_spi_miso: adsl_spi_miso { + function = "adsl_spi_miso"; + pins = "gpio18"; + }; + + pinctrl_adsl_spi_mosi: adsl_spi_mosi { + function = "adsl_spi_mosi"; + pins = "gpio19"; + }; + }; + + pinctrl_vreq_clk: vreq_clk { + function = "vreq_clk"; + pins = "gpio22"; + }; + + pinctrl_pcie_clkreq_b: pcie_clkreq_b { + function = "pcie_clkreq_b"; + pins = "gpio23"; + }; + + pinctrl_robosw_led_clk: robosw_led_clk { + function = "robosw_led_clk"; + pins = "gpio30"; + }; + + pinctrl_robosw_led_data: robosw_led_data { + function = "robosw_led_data"; + pins = "gpio31"; + }; + + pinctrl_nand: nand { + function = "nand"; + group = "nand_grp"; + }; + + pinctrl_gpio35_alt: gpio35_alt { + function = "gpio35_alt"; + pin = "gpio35"; + }; + + pinctrl_dectpd: dectpd { + function = "dectpd"; + group = "dectpd_grp"; + }; + + pinctrl_vdsl_phy_override_0: vdsl_phy_override_0 { + function = "vdsl_phy_override_0"; + group = "vdsl_phy_override_0_grp"; + }; + + pinctrl_vdsl_phy_override_1: vdsl_phy_override_1 { + function = "vdsl_phy_override_1"; + group = "vdsl_phy_override_1_grp"; + }; + + pinctrl_vdsl_phy_override_2: vdsl_phy_override_2 { + function = "vdsl_phy_override_2"; + group = "vdsl_phy_override_2_grp"; + }; + + pinctrl_vdsl_phy_override_3: vdsl_phy_override_3 { + function = "vdsl_phy_override_3"; + group = "vdsl_phy_override_3_grp"; + }; + + pinctrl_dsl_gpio8: dsl_gpio8 { + function = "dsl_gpio8"; + group = "dsl_gpio8"; + }; + + pinctrl_dsl_gpio9: dsl_gpio9 { + function = "dsl_gpio9"; + group = "dsl_gpio9"; + }; }; lsspi: spi@10000800 { diff --git a/target/linux/brcm63xx/dts/bcm6328.dtsi b/target/linux/brcm63xx/dts/bcm6328.dtsi index 9a17869f0b..0bb41cfb87 100644 --- a/target/linux/brcm63xx/dts/bcm6328.dtsi +++ b/target/linux/brcm63xx/dts/bcm6328.dtsi @@ -4,7 +4,7 @@ compatible = "brcm,bcm6328"; aliases { - gpio0 = &gpio0; + pinctrl = &pinctrl; spi1 = &hsspi; }; @@ -57,9 +57,13 @@ interrupts = <2>; }; - gpio0: gpio-controller@10000084 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000084 4>, <0x1000008c 4>; + pinctrl: pin-controller@10000080 { + compatible = "brcm,bcm6328-pinctrl"; + reg = <0x10000080 0x8>, + <0x10000088 0x8>, + <0x10000098 0x4>, + <0x1000009c 0xc>; + reg-names = "dirout", "dat", "mode", "mux"; gpio-controller; #gpio-cells = <2>; @@ -68,6 +72,83 @@ interrupts = <3 0>, <2 0>, <0 0>, <1 0>; interrupt-names = "gpio12", "gpio15", "gpio23", "gpio24"; + + pinctrl_serial_led: serial_led { + pinctrl_serial_led_data: serial_led_data { + function = "serial_led_data"; + pins = "gpio6"; + }; + + pinctrl_serial_led_clk: serial_led_clk { + function = "serial_led_clk"; + pins = "gpio7"; + }; + }; + + pinctrl_inet_act_led: inet_act_led { + function = "inet_act_led"; + pins = "gpio11"; + }; + + pinctrl_pcie_clkreq: pcie_clkreq { + function = "pcie_clkreq"; + pins = "gpio16"; + }; + + pinctrl_ephy0_spd_led: ephy0_spd_led { + function = "led"; + pins = "gpio17"; + }; + + pinctrl_ephy1_spd_led: ephy1_spd_led { + function = "led"; + pins = "gpio18"; + }; + + pinctrl_ephy2_spd_led: ephy2_spd_led { + function = "led"; + pins = "gpio19"; + }; + + pinctrl_ephy3_spd_led: ephy3_spd_led { + function = "led"; + pins = "gpio20"; + }; + + pinctrl_ephy0_act_led: ephy0_act_led { + function = "ephy0_act_led"; + pins = "gpio25"; + }; + + pinctrl_ephy1_act_led: ephy1_act_led { + function = "ephy1_act_led"; + pins = "gpio26"; + }; + + pinctrl_ephy2_act_led: ephy2_act_led { + function = "ephy2_act_led"; + pins = "gpio27"; + }; + + pinctrl_ephy3_act_led: ephy3_act_led { + function = "ephy3_act_led"; + pins = "gpio28"; + }; + + pinctrl_hsspi_cs1: hsspi_cs1 { + function = "hsspi_cs1"; + pins = "hsspi_cs1"; + }; + + pinctrl_usb_port1_device: usb_port1_device { + function = "usb_device_port"; + pins = "usb_port1"; + }; + + pinctrl_usb_port1_host: usb_port1_host { + function = "usb_host_port"; + pins = "usb_port1"; + }; }; hsspi: spi@10001000 { diff --git a/target/linux/brcm63xx/dts/bcm6348.dtsi b/target/linux/brcm63xx/dts/bcm6348.dtsi index 47c06d0ce0..b6dafeeae3 100644 --- a/target/linux/brcm63xx/dts/bcm6348.dtsi +++ b/target/linux/brcm63xx/dts/bcm6348.dtsi @@ -5,8 +5,7 @@ aliases { pflash = &pflash; - gpio0 = &gpio0; - gpio1 = &gpio1; + pinctrl = &pinctrl; spi0 = &lsspi; }; @@ -72,26 +71,59 @@ brcm,field-width = <5>; }; - gpio1: gpio-controller@fffe0400 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xfffe0400 4>, <0xfffe0408 4>; + pinctrl: pin-controller@fffe0400 { + compatible = "brcm,bcm6348-pinctrl"; + reg = <0xfffe0400 0x8>, + <0xfffe0408 0x8>, + <0xfffe0418 0x4>; + reg-names = "dirout", "dat", "mode"; gpio-controller; #gpio-cells = <2>; - ngpios = <5>; - interrupt-parent = <&ext_intc>; interrupts = <0 0>, <1 0>, <2 0>, <3 0>; - interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3"; - }; - - gpio0: gpio-controller@fffe0404 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xfffe0404 4>, <0xfffe040c 4>; - - gpio-controller; - #gpio-cells = <2>; + interrupt-names = "gpio32", "gpio33", "gpio34", "gpio35"; + + pinctrl_ext_ephy: ext_ephy { + function = "ext_ephy"; + groups = "group1", "group4"; + }; + + pinctrl_mii_snoop: mii_snoop { + function = "ext_ephy"; + groups = "group1", "group4"; + }; + + pinctrl_legacy_led: legacy_led { + function = "legacy_led"; + groups = "group4"; + }; + + pinctrl_mii_pccard: mii_pccard { + function = "mii_pccard"; + groups = "group1"; + }; + + pinctrl_pci: pci { + function = "pci"; + groups = "group2"; + }; + + pinctrl_spi_master_uart: spi_master_uart { + function = "spi_master_uart"; + groups = "group1"; + }; + + pinctrl_ext_mii: ext_mii { + function = "ext_mii"; + groups = "group0", "group3"; + }; + + pinctrl_utopia: utopia { + function = "utopia"; + groups = "group0", "group1", "group3"; + }; }; lsspi: spi@fffe0c00 { 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 { diff --git a/target/linux/brcm63xx/dts/bcm6362.dtsi b/target/linux/brcm63xx/dts/bcm6362.dtsi index 2085fd53bf..11edf71aa9 100644 --- a/target/linux/brcm63xx/dts/bcm6362.dtsi +++ b/target/linux/brcm63xx/dts/bcm6362.dtsi @@ -4,8 +4,7 @@ compatible = "brcm,bcm6362"; aliases { - gpio0 = &gpio0; - gpio1 = &gpio1; + pinctrl = &pinctrl; spi0 = &lsspi; spi1 = &hsspi; }; @@ -66,19 +65,16 @@ interrupts = <2>, <3>; }; - gpio1: gpio-controller@10000080 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000080 4>, <0x10000088 4>; - - gpio-controller; - #gpio-cells = <2>; - - ngpios = <16>; - }; - - gpio0: gpio-controller@10000084 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000084 4>, <0x1000008c 4>; + pinctrl: pin-controller@10000080 { + compatible = "brcm,bcm6362-pinctrl"; + reg = <0x10000080 0x8>, + <0x10000088 0x8>, + <0x10000090 0x4>, + <0x10000098 0x4>, + <0x1000009c 0x4>, + <0x100000b8 0x4>; + reg-names = "dirout", "dat", "led", + "mode", "ctrl", "basemode"; gpio-controller; #gpio-cells = <2>; @@ -87,6 +83,158 @@ interrupts = <0 0>, <1 0>, <2 0>, <3 0>; interrupt-names = "gpio24", "gpio25", "gpio26", "gpio27"; + + pinctrl_usb_device_led: usb_device_led { + function = "usb_device_led"; + pins = "gpio0"; + }; + + pinctrl_sys_irq: sys_irq { + function = "sys_irq"; + pins = "gpio1"; + }; + + pinctrl_serial_led: serial_led { + pinctrl_serial_led_clk: serial_led_clk { + function = "serial_led_clk"; + pins = "gpio2"; + }; + + pinctrl_serial_led_data: serial_led_data { + function = "serial_led_data"; + pins = "gpio3"; + }; + }; + + pinctrl_robosw_led_data: robosw_led_data { + function = "robosw_led_data"; + pins = "gpio4"; + }; + + pinctrl_robosw_led_clk: robosw_led_clk { + function = "robosw_led_clk"; + pins = "gpio5"; + }; + + pinctrl_robosw_led0: robosw_led0 { + function = "robosw_led0"; + pins = "gpio6"; + }; + + pinctrl_robosw_led1: robosw_led1 { + function = "robosw_led1"; + pins = "gpio7"; + }; + + pinctrl_inet_led: inet_led { + function = "inet_led"; + pins = "gpio8"; + }; + + pinctrl_spi_cs2: spi_cs2 { + function = "spi_cs2"; + pins = "gpio9"; + }; + + pinctrl_spi_cs3: spi_cs3 { + function = "spi_cs3"; + pins = "gpio10"; + }; + + pinctrl_ntr_pulse: ntr_pulse { + function = "ntr_pulse"; + pins = "gpio11"; + }; + + pinctrl_uart1_scts: uart1_scts { + function = "uart1_scts"; + pins = "gpio12"; + }; + + pinctrl_uart1_srts: uart1_srts { + function = "uart1_srts"; + pins = "gpio13"; + }; + + + pinctrl_uart1: uart1 { + pinctrl_uart1_sdin: uart1_sdin { + function = "uart1_sdin"; + pins = "gpio14"; + }; + + pinctrl_uart1_sdout: uart1_sdout { + function = "uart1_sdout"; + pins = "gpio15"; + }; + }; + + pinctrl_adsl_spi: adsl_spi { + pinctrl_adsl_spi_miso: adsl_spi_miso { + function = "adsl_spi_miso"; + pins = "gpio16"; + }; + + pinctrl_adsl_spi_mosi: adsl_spi_mosi { + function = "adsl_spi_mosi"; + pins = "gpio17"; + }; + + pinctrl_adsl_spi_clk: adsl_spi_clk { + function = "adsl_spi_clk"; + pins = "gpio18"; + }; + + pinctrl_adsl_spi_cs: adsl_spi_cs { + function = "adsl_spi_cs"; + pins = "gpio19"; + }; + }; + + pinctrl_ephy0_led: ephy0_led { + function = "ephy0_led"; + pins = "gpio20"; + }; + + pinctrl_ephy1_led: ephy1_led { + function = "ephy1_led"; + pins = "gpio21"; + }; + + pinctrl_ephy2_led: ephy2_led { + function = "ephy2_led"; + pins = "gpio22"; + }; + + pinctrl_ephy3_led: ephy3_led { + function = "ephy3_led"; + pins = "gpio23"; + }; + + pinctrl_ext_irq0: ext_irq0 { + function = "ext_irq0"; + pins = "gpio24"; + }; + + pinctrl_ext_irq1: ext_irq1 { + function = "ext_irq1"; + pins = "gpio25"; + }; + + pinctrl_ext_irq2: ext_irq2 { + function = "ext_irq2"; + pins = "gpio26"; + }; + + pinctrl_ext_irq3: ext_irq3 { + function = "ext_irq3"; + pins = "gpio27"; + }; + + pinctrl_nand: nand { + function = "nand"; + group = "nand_grp"; + }; }; lsspi: spi@10000800 { diff --git a/target/linux/brcm63xx/dts/bcm6368.dtsi b/target/linux/brcm63xx/dts/bcm6368.dtsi index 40f2f0f07a..a49f24a96c 100644 --- a/target/linux/brcm63xx/dts/bcm6368.dtsi +++ b/target/linux/brcm63xx/dts/bcm6368.dtsi @@ -5,8 +5,7 @@ aliases { pflash = &pflash; - gpio0 = &gpio0; - gpio1 = &gpio1; + pinctrl = &pinctrl; spi0 = &lsspi; }; @@ -76,31 +75,191 @@ interrupts = <2>, <3>; }; - gpio1: gpio-controller@10000080 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000080 4>, <0x10000088 4>; + pinctrl: pin-controller@10000080 { + compatible = "brcm,bcm6368-pinctrl"; + reg = <0x10000080 0x8>, + <0x10000088 0x8>, + <0x10000098 0x4>; + reg-names = "dirout", "dat", "mode"; + brcm,gpiobasemode = <&gpiobasemode>; gpio-controller; #gpio-cells = <2>; - ngpios = <6>; - 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"; - gpio0: gpio-controller@10000084 { - compatible = "brcm,bcm6345-gpio"; - reg = <0x10000084 4>, <0x1000008c 4>; + pinctrl_analog_afe_0: analog_afe_0 { + function = "analog_afe_0"; + pins = "gpio0"; + }; - gpio-controller; - #gpio-cells = <2>; + pinctrl_analog_afe_1: analog_afe_1 { + function = "analog_afe_1"; + pins = "gpio1"; + }; + + pinctrl_sys_irq: sys_irq { + function = "sys_irq"; + pins = "gpio2"; + }; + + pinctrl_serial_led: serial_led { + pinctrl_serial_led_data: serial_led_data { + function = "serial_led_data"; + pins = "gpio3"; + }; + + pinctrl_serial_led_clk: serial_led_clk { + function = "serial_led_clk"; + pins = "gpio4"; + }; + }; + + pinctrl_inet_led: inet_led { + function = "inet_led"; + pins = "gpio5"; + }; + + pinctrl_ephy0_led: ephy0_led { + function = "ephy0_led"; + pins = "gpio6"; + }; + + pinctrl_ephy1_led: ephy1_led { + function = "ephy1_led"; + pins = "gpio7"; + }; + + pinctrl_ephy2_led: ephy2_led { + function = "ephy2_led"; + pins = "gpio8"; + }; + + pinctrl_ephy3_led: ephy3_led { + function = "ephy3_led"; + pins = "gpio9"; + }; + + pinctrl_robosw_led_data: robosw_led_data { + function = "robosw_led_data"; + pins = "gpio10"; + }; + + pinctrl_robosw_led_clk: robosw_led_clk { + function = "robosw_led_clk"; + pins = "gpio11"; + }; + + pinctrl_robosw_led0: robosw_led0 { + function = "robosw_led0"; + pins = "gpio12"; + }; + + pinctrl_robosw_led1: robosw_led1 { + function = "robosw_led1"; + pins = "gpio13"; + }; + + pinctrl_usb_device_led: usb_device_led { + function = "usb_device_led"; + pins = "gpio14"; + }; + + pinctrl_pci: pci { + pinctrl_pci_req1: pci_req1 { + function = "pci_req1"; + pins = "gpio16"; + }; + + pinctrl_pci_gnt1: pci_gnt1 { + function = "pci_gnt1"; + pins = "gpio17"; + }; + + pinctrl_pci_intb: pci_intb { + function = "pci_intb"; + pins = "gpio18"; + }; + + pinctrl_pci_req0: pci_req0 { + function = "pci_req0"; + pins = "gpio19"; + }; + + pinctrl_pci_gnt0: pci_gnt0 { + function = "pci_gnt0"; + pins = "gpio20"; + }; + }; + + pinctrl_pcmcia: pcmcia { + pinctrl_pcmcia_cd1: pcmcia_cd1 { + function = "pcmcia_cd1"; + pins = "gpio22"; + }; + + pinctrl_pcmcia_cd2: pcmcia_cd2 { + function = "pcmcia_cd2"; + pins = "gpio23"; + }; + + pinctrl_pcmcia_vs1: pcmcia_vs1 { + function = "pcmcia_vs1"; + pins = "gpio24"; + }; + + pinctrl_pcmcia_vs2: pcmcia_vs2 { + function = "pcmcia_vs2"; + pins = "gpio25"; + }; + }; + + pinctrl_ebi_cs2: ebi_cs2 { + function = "ebi_cs2"; + pins = "gpio26"; + }; + + pinctrl_ebi_cs3: ebi_cs3 { + function = "ebi_cs2"; + pins = "gpio27"; + }; + + pinctrl_spi_cs2: spi_cs2 { + function = "spi_cs2"; + pins = "gpio28"; + }; + + pinctrl_spi_cs3: spi_cs3 { + function = "spi_cs3"; + pins = "gpio29"; + }; + + pinctrl_spi_cs4: spi_cs4 { + function = "spi_cs4"; + pins = "gpio30"; + }; + + pinctrl_spi_cs5: spi_cs5 { + function = "spi_cs5"; + pins = "gpio31"; + }; + + pinctrl_uart1: uart1 { + function = "uart1"; + group = "uart1_grp"; + }; + }; + + gpiobasemode: gpiobasemode@100000b8 { + compatible = "brcm,bcm6368-gpiobasemode", "syscon"; + reg = <0x100000b8 0x4>; }; lsspi: spi@10000800 { diff --git a/target/linux/brcm63xx/dts/bcm96318ref.dts b/target/linux/brcm63xx/dts/bcm96318ref.dts index 11d67fa0e6..5780ccba47 100644 --- a/target/linux/brcm63xx/dts/bcm96318ref.dts +++ b/target/linux/brcm63xx/dts/bcm96318ref.dts @@ -21,13 +21,13 @@ wps { label = "wps"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -37,17 +37,17 @@ inet { label = "96318REF:green:inet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; inet_fail { label = "96318REF:red:inet-fail"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; post_failed { label = "96318REF:red:post-failed"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; @@ -68,3 +68,8 @@ linux,part-probe = "bcm63xxpart"; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_pwron>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96318ref_p300.dts b/target/linux/brcm63xx/dts/bcm96318ref_p300.dts index cb648a33ed..8fae7fa78a 100644 --- a/target/linux/brcm63xx/dts/bcm96318ref_p300.dts +++ b/target/linux/brcm63xx/dts/bcm96318ref_p300.dts @@ -21,13 +21,13 @@ wps { label = "wps"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -37,22 +37,22 @@ inet { label = "96318REF_P300:green:inet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; inet_fail { label = "96318REF_P300:red:inet-fail"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; post_failed { label = "96318REF_P300:red:post-failed"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; usb_pwron { label = "96318REF_P300::usb-pwron"; - gpios = <&gpio0 13 1>; + gpios = <&pinctrl 13 1>; default-state = "on"; }; }; @@ -74,3 +74,8 @@ linux,part-probe = "bcm63xxpart"; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_pwron>; +}; diff --git a/target/linux/brcm63xx/dts/bcm963268bu_p300.dts b/target/linux/brcm63xx/dts/bcm963268bu_p300.dts index eba47d7542..a96bed7612 100644 --- a/target/linux/brcm63xx/dts/bcm963268bu_p300.dts +++ b/target/linux/brcm63xx/dts/bcm963268bu_p300.dts @@ -21,13 +21,13 @@ reset { label = "reset"; - gpios = <&gpio1 0 0>; + gpios = <&pinctrl 32 0>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 1 0>; + gpios = <&pinctrl 33 0>; linux,code = <KEY_WPS_BUTTON>; }; }; diff --git a/target/linux/brcm63xx/dts/bcm963269bhr.dts b/target/linux/brcm63xx/dts/bcm963269bhr.dts index 68c17ebabf..4984f8fe76 100644 --- a/target/linux/brcm63xx/dts/bcm963269bhr.dts +++ b/target/linux/brcm63xx/dts/bcm963269bhr.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 0 0>; + gpios = <&pinctrl 32 0>; linux,code = <KEY_RESTART>; }; }; @@ -31,12 +31,12 @@ usb1 { label = "963269BHR:green:usb1"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; usb2 { label = "963269BHR:green:usb2"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/bcm963281TAN.dts b/target/linux/brcm63xx/dts/bcm963281TAN.dts index 468a855c7c..a1c5d7ad7f 100644 --- a/target/linux/brcm63xx/dts/bcm963281TAN.dts +++ b/target/linux/brcm63xx/dts/bcm963281TAN.dts @@ -17,28 +17,28 @@ inet { label = "963281TAN::internet"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; power { label = "963281TAN::power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; inet_fail { label = "963281TAN::internet-fail"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; power_fail { label = "963281TAN::power-fail"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; wps { label = "963281TAN::wps"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; dsl { label = "963281TAN::dsl"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/bcm96328avng.dts b/target/linux/brcm63xx/dts/bcm96328avng.dts index 37f289b31e..e74a60a1fc 100644 --- a/target/linux/brcm63xx/dts/bcm96328avng.dts +++ b/target/linux/brcm63xx/dts/bcm96328avng.dts @@ -17,28 +17,28 @@ inet_fail { label = "96328avng::internet-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; dsl { label = "96328avng::dsl"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power { label = "96328avng::power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_fail { label = "96328avng::power-fail"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; wps { label = "96328avng::wps"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; inet { label = "96328avng::internet"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; @@ -59,3 +59,8 @@ linux,part-probe = "bcm63xxpart"; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_port1_device>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96348GW-10.dts b/target/linux/brcm63xx/dts/bcm96348GW-10.dts index 5648d03396..d788057875 100644 --- a/target/linux/brcm63xx/dts/bcm96348GW-10.dts +++ b/target/linux/brcm63xx/dts/bcm96348GW-10.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "96348GW-10:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348GW-10:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348GW-10:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348GW-10:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348GW-10:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -58,3 +58,8 @@ linux,part-probe = "bcm63xxpart"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96348GW-11.dts b/target/linux/brcm63xx/dts/bcm96348GW-11.dts index 78fba83cac..9ef82e62a1 100644 --- a/target/linux/brcm63xx/dts/bcm96348GW-11.dts +++ b/target/linux/brcm63xx/dts/bcm96348GW-11.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "96348GW-11:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348GW-11:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348GW-11:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348GW-11:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348GW-11:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -58,3 +58,8 @@ linux,part-probe = "bcm63xxpart"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96348GW.dts b/target/linux/brcm63xx/dts/bcm96348GW.dts index 76995621db..d7511b0528 100644 --- a/target/linux/brcm63xx/dts/bcm96348GW.dts +++ b/target/linux/brcm63xx/dts/bcm96348GW.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "96348GW:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348GW:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348GW:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348GW:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348GW:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -58,3 +58,8 @@ linux,part-probe = "bcm63xxpart"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96348R.dts b/target/linux/brcm63xx/dts/bcm96348R.dts index b103ece9ac..3042693b06 100644 --- a/target/linux/brcm63xx/dts/bcm96348R.dts +++ b/target/linux/brcm63xx/dts/bcm96348R.dts @@ -17,24 +17,24 @@ power_green { label = "96348R:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348R:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348R:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348R:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348R:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -44,3 +44,8 @@ linux,part-probe = "bcm63xxpart"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96358VW.dts b/target/linux/brcm63xx/dts/bcm96358VW.dts index f916d9db66..c2fe5b01b3 100644 --- a/target/linux/brcm63xx/dts/bcm96358VW.dts +++ b/target/linux/brcm63xx/dts/bcm96358VW.dts @@ -17,24 +17,24 @@ power_green { label = "96358VW:green:power"; - gpios = <&gpio0 4 0>; + gpios = <&pinctrl 4 0>; default-state = "on"; }; stop_green { label = "96358VW:green:stop"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; adsl_fail_green { label = "96358VW:green:adsl-fail"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; }; ppp_green { label = "96358VW:green:ppp"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; ppp_fail_green { label = "96358VW:green:ppp-fail"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/bcm96358VW2.dts b/target/linux/brcm63xx/dts/bcm96358VW2.dts index 20af61a5a1..cc4a8b5812 100644 --- a/target/linux/brcm63xx/dts/bcm96358VW2.dts +++ b/target/linux/brcm63xx/dts/bcm96358VW2.dts @@ -17,20 +17,20 @@ stop_green { label = "96358VW2:green:stop"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; power_green { label = "96358VW2:green:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; default-state = "on"; }; adsl_green { label = "96358VW2:green:adsl"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; ppp_fail_green { label = "96358VW2:green:ppp-fail"; - gpios = <&gpio0 23 0>; + gpios = <&pinctrl 23 0>; }; }; }; diff --git a/target/linux/brcm63xx/dts/bcm96368MVNgr.dts b/target/linux/brcm63xx/dts/bcm96368MVNgr.dts index ca07b65405..1078be713e 100644 --- a/target/linux/brcm63xx/dts/bcm96368MVNgr.dts +++ b/target/linux/brcm63xx/dts/bcm96368MVNgr.dts @@ -17,24 +17,24 @@ dsl_green { label = "96368MVNgr:green:adsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_fail_green { label = "96368MVNgr:green:inet-fail"; - gpios = <&gpio0 3 0>; + gpios = <&pinctrl 3 0>; }; inet_green { label = "96368MVNgr:green:inet"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; power_green { label = "96368MVNgr:green:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; default-state = "on"; }; wps_green { label = "96368MVNgr:green:wps"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; }; }; @@ -44,3 +44,8 @@ linux,part-probe = "bcm63xxpart"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/bcm96368MVWG.dts b/target/linux/brcm63xx/dts/bcm96368MVWG.dts index 9f13ca4d17..0f7c42b3cb 100644 --- a/target/linux/brcm63xx/dts/bcm96368MVWG.dts +++ b/target/linux/brcm63xx/dts/bcm96368MVWG.dts @@ -17,24 +17,24 @@ dsl_green { label = "96368MVWG:green:adsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96368MVWG:green:ppp"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; power_green { label = "96368MVWG:green:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; default-state = "on"; }; wps_green { label = "96368MVWG:green:wps"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; ppp_fail_red { label = "96368MVWG:red:ppp-fail"; - gpios = <&gpio0 31 0>; + gpios = <&pinctrl 31 0>; }; }; }; @@ -44,3 +44,8 @@ linux,part-probe = "bcm63xxpart"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/cpva502plus.dts b/target/linux/brcm63xx/dts/cpva502plus.dts index 3ddc459836..dbe7aae97c 100644 --- a/target/linux/brcm63xx/dts/cpva502plus.dts +++ b/target/linux/brcm63xx/dts/cpva502plus.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,12 +31,12 @@ phone_green { label = "CPVA502+:green:phone"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; link_amber { label = "CPVA502+:amber:link"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; }; }; @@ -62,3 +62,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/cpva642.dts b/target/linux/brcm63xx/dts/cpva642.dts index 1a0522de0b..108997df78 100644 --- a/target/linux/brcm63xx/dts/cpva642.dts +++ b/target/linux/brcm63xx/dts/cpva642.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 5 0>; + gpios = <&pinctrl 37 0>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,44 +36,44 @@ eth_green { label = "CPVA642:green:ether"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; phone2_green { label = "CPVA642:green:phone2"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; usb_green { label = "CPVA642:green:usb"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; phone1_green { label = "CPVA642:green:phone1"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; wifi_red { label = "CPVA642:red:wifi"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; link_red { label = "CPVA642:red:link"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; link_green { label = "CPVA642:green:link"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; power_green { label = "CPVA642:green:power"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; default-state = "on"; }; power_red { label = "CPVA642:red:power"; - gpios = <&gpio0 14 1>; + gpios = <&pinctrl 14 1>; }; wifi_green { label = "CPVA642:green:wifi"; - gpios = <&gpio0 28 0>; + gpios = <&pinctrl 28 0>; }; }; }; diff --git a/target/linux/brcm63xx/dts/ct-5365.dts b/target/linux/brcm63xx/dts/ct-5365.dts index 8187be6970..f0676497d7 100644 --- a/target/linux/brcm63xx/dts/ct-5365.dts +++ b/target/linux/brcm63xx/dts/ct-5365.dts @@ -21,17 +21,17 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; wlan { label = "wlan"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_WLAN>; }; wps { label = "wps"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -41,16 +41,16 @@ power_green { label = "96348A-122:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; alarm_red { label = "96348A-122:red:alarm"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; wps_green { label = "96348A-122:green:wps"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; }; }; @@ -76,3 +76,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/ct-6373.dts b/target/linux/brcm63xx/dts/ct-6373.dts index f2a5842c69..8e6eb453a7 100644 --- a/target/linux/brcm63xx/dts/ct-6373.dts +++ b/target/linux/brcm63xx/dts/ct-6373.dts @@ -17,8 +17,8 @@ #size-cells = <0>; compatible = "spi-gpio"; - gpio-mosi = <&gpio0 7 0>; - gpio-sck = <&gpio0 6 0>; + gpio-mosi = <&pinctrl 7 0>; + gpio-sck = <&pinctrl 6 0>; num-chipselects = <0>; hc595: gpio-spi-controller@0 { @@ -41,7 +41,7 @@ reset { label = "reset"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; linux,code = <KEY_RESTART>; }; }; @@ -51,16 +51,16 @@ power_green { label = "CT6373-1:green:power"; - gpios = <&gpio0 0 0>; + gpios = <&pinctrl 0 0>; default-state = "on"; }; usb_green { label = "CT6373-1:green:usb"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; wlan_green { label = "CT6373-1:green:wlan"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; dsl_green { label = "CT6373-1:green:adsl"; diff --git a/target/linux/brcm63xx/dts/ct536plus.dts b/target/linux/brcm63xx/dts/ct536plus.dts index 8be494048d..8aa47575be 100644 --- a/target/linux/brcm63xx/dts/ct536plus.dts +++ b/target/linux/brcm63xx/dts/ct536plus.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,12 +31,12 @@ power_green { label = "CT536_CT5621:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; adsl_fail_green { label = "CT536_CT5621:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; }; }; @@ -62,3 +62,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/dg834g_v4.dts b/target/linux/brcm63xx/dts/dg834g_v4.dts index ee63473e3c..0af695d902 100644 --- a/target/linux/brcm63xx/dts/dg834g_v4.dts +++ b/target/linux/brcm63xx/dts/dg834g_v4.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,20 +31,20 @@ power_green { label = "96348W3:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; status { label = "96348W3:red:power"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; inet_green { label = "96348W3::adsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_red { label = "96348W3::internet"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; }; }; @@ -70,3 +70,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/dg834gtpn.dts b/target/linux/brcm63xx/dts/dg834gtpn.dts index 9bd67f4190..84ef9b2c04 100644 --- a/target/linux/brcm63xx/dts/dg834gtpn.dts +++ b/target/linux/brcm63xx/dts/dg834gtpn.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "96348GW-10:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348GW-10:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348GW-10:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348GW-10:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348GW-10:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -74,3 +74,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/dgnd3700v1.dts b/target/linux/brcm63xx/dts/dgnd3700v1.dts index 2b6248b19a..7701bd013a 100644 --- a/target/linux/brcm63xx/dts/dgnd3700v1.dts +++ b/target/linux/brcm63xx/dts/dgnd3700v1.dts @@ -21,17 +21,17 @@ wlan { label = "wlan"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; linux,code = <KEY_WLAN>; }; reset { label = "reset"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -41,48 +41,48 @@ dsl_green { label = "DGND3700v1_3800B:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_red { label = "DGND3700v1_3800B:red:inet"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; inet_green { label = "DGND3700v1_3800B:green:inet"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; wps_green { label = "DGND3700v1_3800B:green:wps"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; usbfront_green { label = "DGND3700v1_3800B:green:usb-front"; - gpios = <&gpio0 13 1>; + gpios = <&pinctrl 13 1>; }; usbback_green { label = "DGND3700v1_3800B:green:usb-back"; - gpios = <&gpio0 14 1>; + gpios = <&pinctrl 14 1>; }; power_red { label = "DGND3700v1_3800B:red:power"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; lan_green { label = "DGND3700v1_3800B:green:lan"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; power_green { label = "DGND3700v1_3800B:green:power"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; default-state = "on"; }; wifi2g_green { label = "DGND3700v1_3800B:green:wifi2g"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; wifi5g_blue { label = "DGND3700v1_3800B:blue:wifi5g"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; }; }; @@ -113,4 +113,9 @@ label = "nvram"; reg = <0x1fe0000 0x20000>; }; +}; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; }; diff --git a/target/linux/brcm63xx/dts/dsl-2640b-b.dts b/target/linux/brcm63xx/dts/dsl-2640b-b.dts index 767586dfb8..fce774d321 100644 --- a/target/linux/brcm63xx/dts/dsl-2640b-b.dts +++ b/target/linux/brcm63xx/dts/dsl-2640b-b.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,20 +31,20 @@ power_green { label = "D-4P-W:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; status { label = "D-4P-W::status"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; inet_green { label = "D-4P-W:green:internet"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; inet_red { label = "D-4P-W:red:internet"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; }; }; @@ -70,3 +70,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/dsl-2650u.dts b/target/linux/brcm63xx/dts/dsl-2650u.dts index ed42f63346..4b45151031 100644 --- a/target/linux/brcm63xx/dts/dsl-2650u.dts +++ b/target/linux/brcm63xx/dts/dsl-2650u.dts @@ -17,20 +17,20 @@ stop_green { label = "96358VW2:green:stop"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; power_green { label = "96358VW2:green:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; default-state = "on"; }; adsl_green { label = "96358VW2:green:adsl"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; ppp_fail_green { label = "96358VW2:green:ppp-fail"; - gpios = <&gpio0 23 0>; + gpios = <&pinctrl 23 0>; }; }; }; diff --git a/target/linux/brcm63xx/dts/dsl-274xb-c.dts b/target/linux/brcm63xx/dts/dsl-274xb-c.dts index 10bf9a54af..fb67fc9851 100644 --- a/target/linux/brcm63xx/dts/dsl-274xb-c.dts +++ b/target/linux/brcm63xx/dts/dsl-274xb-c.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ inet_green { label = "dsl-274xb:green:internet"; - gpios = <&gpio0 2 0>; + gpios = <&pinctrl 2 0>; }; power_red { label = "dsl-274xb:red:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; power_green { label = "dsl-274xb:green:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; default-state = "on"; }; dsl_green { label = "dsl-274xb:green:adsl"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; inet_red { label = "dsl-274xb:red:internet"; - gpios = <&gpio0 10 0>; + gpios = <&pinctrl 10 0>; }; }; }; diff --git a/target/linux/brcm63xx/dts/dsl-274xb-f.dts b/target/linux/brcm63xx/dts/dsl-274xb-f.dts index 08a55923d5..be1d16b36d 100644 --- a/target/linux/brcm63xx/dts/dsl-274xb-f.dts +++ b/target/linux/brcm63xx/dts/dsl-274xb-f.dts @@ -21,17 +21,17 @@ wifi { label = "wifi"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; linux,code = <KEY_WLAN>; }; reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -41,28 +41,28 @@ inet_red { label = "dsl-274xb:red:internet"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; dsl_green { label = "dsl-274xb:green:dsl"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "dsl-274xb:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "dsl-274xb:red:power"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; wps_blue { label = "dsl-274xb:blue:wps"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; inet_green { label = "dsl-274xb:green:internet"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/dsl-275xb-d.dts b/target/linux/brcm63xx/dts/dsl-275xb-d.dts index cae6f37ad7..bbcce3c30d 100644 --- a/target/linux/brcm63xx/dts/dsl-275xb-d.dts +++ b/target/linux/brcm63xx/dts/dsl-275xb-d.dts @@ -21,19 +21,19 @@ wifi { label = "wifi"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; linux,code = <KEY_WLAN>; }; wps { label = "wps"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -43,39 +43,39 @@ power_green { label = "dsl-275xb:green:power"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; default-state = "on"; }; inet_green { label = "dsl-275xb:green:inet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; inet_red { label = "dsl-275xb:red:inet-fail"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; power_red { label = "dsl-275xb:red:post-failed"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; wps_blue { label = "dsl-275xb:blue:wps"; - gpios = <&gpio0 16 1>; + gpios = <&pinctrl 16 1>; }; dsl_green { label = "dsl-275xb:green:dsl"; - gpios = <&gpio0 17 1>; + gpios = <&pinctrl 17 1>; }; usb_green { /* not user controllable? */ label = "dsl-275xb:green:usb"; - gpios = <&gpio1 17 1>; + gpios = <&pinctrl 49 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/dv-201amr.dts b/target/linux/brcm63xx/dts/dv-201amr.dts index 9d96e7471e..e6955190f6 100644 --- a/target/linux/brcm63xx/dts/dv-201amr.dts +++ b/target/linux/brcm63xx/dts/dv-201amr.dts @@ -34,3 +34,8 @@ reg = <0x410000 0x3f0000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts b/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts index abd358e1ae..4ebb25d01e 100644 --- a/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts +++ b/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ voip { label = "DVAG3810BN::voip"; - gpios = <&gpio0 1 0>; + gpios = <&pinctrl 1 0>; }; power { label = "DVAG3810BN::power"; - gpios = <&gpio0 4 0>; + gpios = <&pinctrl 4 0>; default-state = "on"; }; stop { label = "DVAG3810BN::stop"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; dsl { label = "DVAG3810BN::dsl"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; inet { label = "DVAG3810BN::internet"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/evg2000.dts b/target/linux/brcm63xx/dts/evg2000.dts index 79f26b9850..07c98f11a0 100644 --- a/target/linux/brcm63xx/dts/evg2000.dts +++ b/target/linux/brcm63xx/dts/evg2000.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,44 +36,44 @@ voip1_green { label = "EVG2000:green:voip1"; - gpios = <&gpio0 14 1>; + gpios = <&pinctrl 14 1>; }; voip2_green { label = "EVG2000:green:voip2"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_red { label = "EVG2000:red:inet"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; inet_green { label = "EVG2000:green:inet"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; usb_green { label = "EVG2000:green:usb"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; }; power_green { label = "EVG2000:green:power"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; default-state = "on"; }; power_red { label = "EVG2000:red:power"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; lan_green { label = "EVG2000:green:lan"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; }; wireless_green { label = "EVG2000:green:wireless"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; wan_green { label = "EVG2000:green:wan"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; }; }; @@ -105,3 +105,8 @@ reg = <0x00fe0000 0x00020000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/f5d7633.dts b/target/linux/brcm63xx/dts/f5d7633.dts index 2dae1aff72..27e81a3e58 100644 --- a/target/linux/brcm63xx/dts/f5d7633.dts +++ b/target/linux/brcm63xx/dts/f5d7633.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "96348GW-10:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348GW-10:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348GW-10:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348GW-10:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348GW-10:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -74,3 +74,8 @@ reg = <0x3e0000 0x020000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/fast2404.dts b/target/linux/brcm63xx/dts/fast2404.dts index 29211e6d17..ce52af6d42 100644 --- a/target/linux/brcm63xx/dts/fast2404.dts +++ b/target/linux/brcm63xx/dts/fast2404.dts @@ -34,3 +34,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/fast2504n.dts b/target/linux/brcm63xx/dts/fast2504n.dts index 54923388d9..296bc0993d 100644 --- a/target/linux/brcm63xx/dts/fast2504n.dts +++ b/target/linux/brcm63xx/dts/fast2504n.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,28 +36,28 @@ power_orange { label = "fast2504n:orange:power"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; power_green { label = "fast2504n:green:power"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; default-state = "on"; }; inet_red { label = "fast2504n:red:internet"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; ok_green { label = "fast2504n:green:ok"; - gpios = <&gpio0 28 1>; + gpios = <&pinctrl 28 1>; }; ok_orange { label = "fast2504n:orange:ok"; - gpios = <&gpio0 29 1>; + gpios = <&pinctrl 29 1>; }; wlan_orangee { label = "fast2504n:orange:wlan"; - gpios = <&gpio0 30 1>; + gpios = <&pinctrl 30 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/fast2604.dts b/target/linux/brcm63xx/dts/fast2604.dts index 5d7192fc05..952b668118 100644 --- a/target/linux/brcm63xx/dts/fast2604.dts +++ b/target/linux/brcm63xx/dts/fast2604.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,20 +31,20 @@ power_green { label = "F@ST2604:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; power_red { label = "F@ST2604:red:power"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; inet_red { label = "F@ST2604:red:inet"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; wps_green { label = "F@ST2604:green:wps"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; }; }; @@ -70,3 +70,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/fast2704n.dts b/target/linux/brcm63xx/dts/fast2704n.dts index 8a3c05b9ac..ee343a6334 100644 --- a/target/linux/brcm63xx/dts/fast2704n.dts +++ b/target/linux/brcm63xx/dts/fast2704n.dts @@ -21,17 +21,17 @@ wlan { label = "wlan"; - gpios = <&gpio0 1 0>; + gpios = <&pinctrl 1 0>; linux,code = <KEY_WLAN>; }; wps { label = "wps"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_WPS_BUTTON>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -41,48 +41,48 @@ wps_green { label = "F@ST2704N:green:wps"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; lan1_green { label = "F@ST2704N:green:lan1"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; lan2_green { label = "F@ST2704N:green:lan2"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; lan3_green { label = "F@ST2704N:green:lan3"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; lan4_green { label = "F@ST2704N:green:lan4"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; inet_green { label = "F@ST2704N:green:inet"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; }; inet_red { label = "F@ST2704N:red:inet"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; }; dsl_green { label = "F@ST2704N:green:dsl"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; power_red { label = "F@ST2704N:red:power"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; power_green { label = "F@ST2704N:green:power"; - gpios = <&gpio1 15 1>; + gpios = <&pinctrl 47 1>; default-state = "on"; }; usb_green { label = "F@ST2704N:green:usb"; - gpios = <&gpio1 17 1>; + gpios = <&pinctrl 49 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/fast2704v2.dts b/target/linux/brcm63xx/dts/fast2704v2.dts index 617b1ed1a2..bbd23da361 100644 --- a/target/linux/brcm63xx/dts/fast2704v2.dts +++ b/target/linux/brcm63xx/dts/fast2704v2.dts @@ -21,17 +21,17 @@ rfkill { label = "rfkill"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; linux,code = <KEY_WLAN>; }; reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -41,32 +41,32 @@ usb_green { label = "F@ST2704V2:green:usb"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; inet_red { label = "F@ST2704V2:red:inet"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; dsl_green { label = "F@ST2704V2:green:dsl"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "F@ST2704V2:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "F@ST2704V2:red:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; wps_green { label = "F@ST2704V2:green:wps"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; inet_green { label = "F@ST2704V2:green:inet"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/gw6000.dts b/target/linux/brcm63xx/dts/gw6000.dts index 14c6330680..5645ae0a8c 100644 --- a/target/linux/brcm63xx/dts/gw6000.dts +++ b/target/linux/brcm63xx/dts/gw6000.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_RESTART>; }; }; @@ -48,3 +48,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/gw6200.dts b/target/linux/brcm63xx/dts/gw6200.dts index c02975ee8d..3e0037a868 100644 --- a/target/linux/brcm63xx/dts/gw6200.dts +++ b/target/linux/brcm63xx/dts/gw6200.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,19 +31,19 @@ line1_green { label = "GW6200:green:line1"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; line2_green { label = "GW6200:green:line2"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; line3_green { label = "GW6200:green:line3"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; tel_green { label = "GW6200:green:tel"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; }; }; }; @@ -69,3 +69,8 @@ reg = <0x7f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/hg520v.dts b/target/linux/brcm63xx/dts/hg520v.dts index a86311f08e..f0eefc0c0f 100644 --- a/target/linux/brcm63xx/dts/hg520v.dts +++ b/target/linux/brcm63xx/dts/hg520v.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,7 +31,7 @@ inet_green { label = "HW520:green:net"; - gpios = <&gpio1 0 1>; + gpios = <&pinctrl 32 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/hg553.dts b/target/linux/brcm63xx/dts/hg553.dts index cc6b331511..a00821fb15 100644 --- a/target/linux/brcm63xx/dts/hg553.dts +++ b/target/linux/brcm63xx/dts/hg553.dts @@ -21,13 +21,13 @@ rfkill { label = "rfkill"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; linux,code = <KEY_RFKILL>; }; reset { label = "reset"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_RESTART>; }; }; @@ -37,40 +37,40 @@ power_green { label = "HW553:blue:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_red { label = "HW553:red:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; hspa_red { label = "HW553:red:hspa"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; hspa_blue { label = "HW553:blue:hspa"; - gpios = <&gpio0 13 1>; + gpios = <&pinctrl 13 1>; }; lan_red { label = "HW553:red:lan"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; lan_blue { label = "HW553:blue:lan"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; wifi_red { label = "HW553:red:wifi"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; }; dsl_red { label = "HW553:red:adsl"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; }; dsl_blue { label = "HW553:blue:adsl"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/hg556a-a.dts b/target/linux/brcm63xx/dts/hg556a-a.dts index b9f5842b07..de17500ceb 100644 --- a/target/linux/brcm63xx/dts/hg556a-a.dts +++ b/target/linux/brcm63xx/dts/hg556a-a.dts @@ -21,22 +21,22 @@ help { label = "help"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; linux,code = <KEY_HELP>; }; wlan { label = "wlan"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; linux,code = <KEY_WLAN>; }; restart { label = "restart"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; linux,code = <KEY_RESTART>; }; reset { label = "reset"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; linux,code = <KEY_CONFIG>; }; }; @@ -46,57 +46,57 @@ message_red { label = "HW556:red:message"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; hspa_red { label = "HW556:red:hspa"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; dsl_red { label = "HW556:red:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; power_red { label = "HW556:red:power"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; default-state = "on"; }; all_red { label = "HW556:red:all"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; default-state = "on"; }; lan1_green { label = "HW556:green:lan1"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; lan1_red { label = "HW556:red:lan1"; - gpios = <&gpio0 13 1>; + gpios = <&pinctrl 13 1>; }; lan2_green { label = "HW556:green:lan2"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; }; lan2_red { label = "HW556:red:lan2"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; lan3_green { label = "HW556:green:lan3"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; lan3_red { label = "HW556:red:lan3"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; lan4_green { label = "HW556:green:lan4"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; lan4_red { label = "HW556:red:lan4"; - gpios = <&gpio0 28 1>; + gpios = <&pinctrl 28 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/hg556a-b.dts b/target/linux/brcm63xx/dts/hg556a-b.dts index 40f79cd135..782beda982 100644 --- a/target/linux/brcm63xx/dts/hg556a-b.dts +++ b/target/linux/brcm63xx/dts/hg556a-b.dts @@ -21,22 +21,22 @@ help { label = "help"; - gpios = <&gpio0 8 1>; + gpios = <&pinctrl 8 1>; linux,code = <KEY_HELP>; }; wlan { label = "wlan"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; linux,code = <KEY_WLAN>; }; restart { label = "restart"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; linux,code = <KEY_RESTART>; }; reset { label = "reset"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; linux,code = <KEY_CONFIG>; }; }; @@ -46,57 +46,57 @@ message_red { label = "HW556:red:message"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; hspa_red { label = "HW556:red:hspa"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; dsl_red { label = "HW556:red:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; power_red { label = "HW556:red:power"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; default-state = "on"; }; all_red { label = "HW556:red:all"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; default-state = "on"; }; lan1_green { label = "HW556:green:lan1"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; lan1_red { label = "HW556:red:lan1"; - gpios = <&gpio0 13 1>; + gpios = <&pinctrl 13 1>; }; lan2_green { label = "HW556:green:lan2"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; }; lan2_red { label = "HW556:red:lan2"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; lan3_green { label = "HW556:green:lan3"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; lan3_red { label = "HW556:red:lan3"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; lan4_green { label = "HW556:green:lan4"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; lan4_red { label = "HW556:red:lan4"; - gpios = <&gpio0 28 1>; + gpios = <&pinctrl 28 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/hg556a-c.dts b/target/linux/brcm63xx/dts/hg556a-c.dts index ada2a8ca0c..36f298be64 100644 --- a/target/linux/brcm63xx/dts/hg556a-c.dts +++ b/target/linux/brcm63xx/dts/hg556a-c.dts @@ -21,22 +21,22 @@ help { label = "help"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_HELP>; }; wlan { label = "wlan"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; linux,code = <KEY_WLAN>; }; restart { label = "restart"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; linux,code = <KEY_RESTART>; }; reset { label = "reset"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; linux,code = <KEY_CONFIG>; }; }; @@ -46,52 +46,52 @@ lan1_green { label = "HW556:green:lan1"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; lan2_green { label = "HW556:green:lan2"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; dsl_red { label = "HW556:red:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; power_red { label = "HW556:red:power"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; default-state = "on"; }; message_red { label = "HW556:red:message"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; lan1_red { label = "HW556:red:lan1"; - gpios = <&gpio0 13 1>; + gpios = <&pinctrl 13 1>; }; hspa_red { label = "HW556:red:hspa"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; }; lan2_red { label = "HW556:red:lan2"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; lan3_green { label = "HW556:green:lan3"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; lan3_red { label = "HW556:red:lan3"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; lan4_green { label = "HW556:green:lan4"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; lan4_red { label = "HW556:red:lan4"; - gpios = <&gpio0 28 1>; + gpios = <&pinctrl 28 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/hg622.dts b/target/linux/brcm63xx/dts/hg622.dts index 6dee418edb..f96af2bf26 100644 --- a/target/linux/brcm63xx/dts/hg622.dts +++ b/target/linux/brcm63xx/dts/hg622.dts @@ -22,7 +22,7 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -32,19 +32,19 @@ dsl_green { label = "HG622:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_green { label = "HG622:green:inet"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; usb_green { label = "HG622:green:usb"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; power_green { label = "HG622:green:power"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; default-state = "on"; }; }; @@ -77,3 +77,10 @@ reg = <0xfe0000 0x020000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci_gnt0 &pinctrl_pci_req0 + &pinctrl_pci_intb &pinctrl_pci_gnt1 + &pinctrl_pci_req1>; +}; diff --git a/target/linux/brcm63xx/dts/hg655b.dts b/target/linux/brcm63xx/dts/hg655b.dts index 58ef715a93..63e13090ce 100644 --- a/target/linux/brcm63xx/dts/hg655b.dts +++ b/target/linux/brcm63xx/dts/hg655b.dts @@ -21,17 +21,17 @@ wps { label = "wps"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; linux,code = <KEY_WPS_BUTTON>; }; wlan { label = "wlan"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_WLAN>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -41,28 +41,29 @@ dsl_green { label = "HW65x:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; internet_green { label = "HW65x:green:internet"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; + usb_green { label = "HW65x:green:usb"; - gpios = <&gpio0 14 1>; + gpios = <&pinctrl 14 1>; }; power_green { label = "HW65x:green:power"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; default-state = "on"; }; voip_green { label = "HW65x:green:voip"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; }; wps_green { label = "HW65x:green:wps"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; }; }; @@ -98,3 +99,9 @@ reg = <0x7e0000 0x020000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led + &pinctrl_ephy2_led &pinctrl_ephy3_led>; +}; diff --git a/target/linux/brcm63xx/dts/homehub2a.dts b/target/linux/brcm63xx/dts/homehub2a.dts index b86a48fe40..0d51c870a1 100644 --- a/target/linux/brcm63xx/dts/homehub2a.dts +++ b/target/linux/brcm63xx/dts/homehub2a.dts @@ -17,9 +17,9 @@ #size-cells = <0>; compatible = "spi-gpio"; - gpio-mosi = <&gpio0 7 0>; - gpio-sck = <&gpio0 6 0>; - cs-gpios = <&gpio0 5 0>; + gpio-mosi = <&pinctrl 7 0>; + gpio-sck = <&pinctrl 6 0>; + cs-gpios = <&pinctrl 5 0>; num-chipselects = <1>; hc595: gpio-spi-controller@0 { @@ -42,17 +42,17 @@ phone { label = "phone"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; linux,code = <KEY_PHONE>; }; reset { label = "reset"; - gpios = <&gpio0 9 1>; + gpios = <&pinctrl 9 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; linux,code = <KEY_WPS_BUTTON>; }; }; diff --git a/target/linux/brcm63xx/dts/livebox-blue-5g.dts b/target/linux/brcm63xx/dts/livebox-blue-5g.dts index c0ef0d48d1..8a060736c9 100644 --- a/target/linux/brcm63xx/dts/livebox-blue-5g.dts +++ b/target/linux/brcm63xx/dts/livebox-blue-5g.dts @@ -22,13 +22,13 @@ button1 { label = "1"; - gpios = <&gpio1 4 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_RESTART>; }; button2 { label = "2"; - gpios = <&gpio0 7 1>; + gpios = <&pinctrl 7 1>; linux,code = <BTN_2>; }; }; @@ -38,28 +38,28 @@ red_adsl_fail { label = "Livebox1:red:adsl-fail-power"; - gpios = <&gpio0 0 0>; + gpios = <&pinctrl 0 0>; default-state = "on"; }; red_adsl { label = "Livebox1:red:adsl"; - gpios = <&gpio0 1 0>; + gpios = <&pinctrl 1 0>; }; red_traffic { label = "Livebox1:red:traffic"; - gpios = <&gpio0 2 0>; + gpios = <&pinctrl 2 0>; }; red_phone { label = "Livebox1:red:phone"; - gpios = <&gpio0 3 0>; + gpios = <&pinctrl 3 0>; }; red_wifi { label = "Livebox1:red:wifi"; - gpios = <&gpio0 4 0>; + gpios = <&pinctrl 4 0>; }; }; }; @@ -70,3 +70,8 @@ linux,part-probe = "RedBoot"; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/magic.dts b/target/linux/brcm63xx/dts/magic.dts index be10524094..9053c26e65 100644 --- a/target/linux/brcm63xx/dts/magic.dts +++ b/target/linux/brcm63xx/dts/magic.dts @@ -17,38 +17,38 @@ power { label = "MAGIC:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop { label = "MAGIC:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; hpna { label = "MAGIC:green:hpna"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; status { label = "MAGIC:green:adsl"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; voip { label = "MAGIC:green:voip"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; wifi { label = "MAGIC:green:wifi"; - gpios = <&gpio0 28 0>; + gpios = <&pinctrl 28 0>; }; usb { label = "MAGIC:green:usb"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; }; }; }; @@ -74,3 +74,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/nb4-fxc-r1.dts b/target/linux/brcm63xx/dts/nb4-fxc-r1.dts index d94bf0e48e..4960afb49c 100644 --- a/target/linux/brcm63xx/dts/nb4-fxc-r1.dts +++ b/target/linux/brcm63xx/dts/nb4-fxc-r1.dts @@ -17,8 +17,8 @@ #size-cells = <0>; compatible = "spi-gpio"; - gpio-mosi = <&gpio0 7 0>; - gpio-sck = <&gpio0 6 0>; + gpio-mosi = <&pinctrl 7 0>; + gpio-sck = <&pinctrl 6 0>; num-chipselects = <0>; hc595: gpio-spi-controller@0 { @@ -41,22 +41,22 @@ service { label = "service"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; linux,code = <BTN_0>; }; clip { label = "clip"; - gpios = <&gpio0 31 1>; + gpios = <&pinctrl 31 1>; linux,code = <BTN_1>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -66,23 +66,23 @@ traffic_white { label = "NB4-FXC-r1:white:traffic"; - gpios = <&gpio0 2 0>; + gpios = <&pinctrl 2 0>; }; service_blue { label = "NB4-FXC-r1:blue:service"; - gpios = <&gpio0 4 0>; + gpios = <&pinctrl 4 0>; }; wifi_white { label = "NB4-FXC-r1:white:wifi"; - gpios = <&gpio0 15 0>; + gpios = <&pinctrl 15 0>; }; service_red { label = "NB4-FXC-r1:red:service"; - gpios = <&gpio0 29 0>; + gpios = <&pinctrl 29 0>; }; service_green { label = "NB4-FXC-r1:green:service"; - gpios = <&gpio0 30 0>; + gpios = <&pinctrl 30 0>; }; alarm_white { label = "NB4-FXC-r1:white:alarm"; diff --git a/target/linux/brcm63xx/dts/nb4-ser-r0.dts b/target/linux/brcm63xx/dts/nb4-ser-r0.dts index 75cb214e44..128a16aa01 100644 --- a/target/linux/brcm63xx/dts/nb4-ser-r0.dts +++ b/target/linux/brcm63xx/dts/nb4-ser-r0.dts @@ -17,8 +17,8 @@ #size-cells = <0>; compatible = "spi-gpio"; - gpio-mosi = <&gpio0 7 0>; - gpio-sck = <&gpio0 6 0>; + gpio-mosi = <&pinctrl 7 0>; + gpio-sck = <&pinctrl 6 0>; num-chipselects = <0>; hc595: gpio-spi-controller@0 { @@ -41,22 +41,22 @@ service { label = "service"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; linux,code = <BTN_0>; }; clip { label = "clip"; - gpios = <&gpio0 31 1>; + gpios = <&pinctrl 31 1>; linux,code = <BTN_1>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -66,23 +66,23 @@ traffic_white { label = "NB4-SER-r0:white:traffic"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; service_blue { label = "NB4-SER-r0:blue:service"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; wifi_white { label = "NB4-SER-r0:white:wifi"; - gpios = <&gpio0 15 1>; + gpios = <&pinctrl 15 1>; }; service_red { label = "NB4-SER-r0:red:service"; - gpios = <&gpio0 29 1>; + gpios = <&pinctrl 29 1>; }; service_green { label = "NB4-SER-r0:green:service"; - gpios = <&gpio0 30 1>; + gpios = <&pinctrl 30 1>; }; alarm_white { label = "NB4-SER-r0:white:alarm"; diff --git a/target/linux/brcm63xx/dts/nb6-ser-r0.dts b/target/linux/brcm63xx/dts/nb6-ser-r0.dts index c0182f33e1..8fb434f344 100644 --- a/target/linux/brcm63xx/dts/nb6-ser-r0.dts +++ b/target/linux/brcm63xx/dts/nb6-ser-r0.dts @@ -21,30 +21,30 @@ service { label = "service"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; linux,code = <BTN_0>; }; wlan { label = "wlan"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; linux,code = <KEY_WLAN>; }; reset { label = "reset"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; linux,code = <KEY_WPS_BUTTON>; }; }; switch { compatible = "realtek,rtl8367"; - gpio-sda = <&gpio0 18 0>; - gpio-sck = <&gpio0 20 0>; + gpio-sda = <&pinctrl 18 0>; + gpio-sck = <&pinctrl 20 0>; realtek,extif0 = <1 5 1 1 1 1 1 1 2>; }; diff --git a/target/linux/brcm63xx/dts/p870hw-51a-v2.dts b/target/linux/brcm63xx/dts/p870hw-51a-v2.dts index 962d474398..eea30219e0 100644 --- a/target/linux/brcm63xx/dts/p870hw-51a-v2.dts +++ b/target/linux/brcm63xx/dts/p870hw-51a-v2.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 35 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 36 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,24 +36,24 @@ power_green { label = "P870HW-51a:green:power"; - gpios = <&gpio0 0 0>; + gpios = <&pinctrl 0 0>; default-state = "on"; }; dsl_green { label = "P870HW-51a:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_green { label = "P870HW-51a:green:inet"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; wps_orange { label = "P870HW-51a:orange:wps"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; }; inet_red { label = "P870HW-51a:red:inet"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; }; }; }; @@ -79,3 +79,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/r5010unv2.dts b/target/linux/brcm63xx/dts/r5010unv2.dts index cce861b313..0bd88b2e44 100644 --- a/target/linux/brcm63xx/dts/r5010unv2.dts +++ b/target/linux/brcm63xx/dts/r5010unv2.dts @@ -22,12 +22,12 @@ reset { label = "reset"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio0 24 1>; + gpios = <&pinctrl 24 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -37,32 +37,32 @@ inet_green { label = "R5010UNv2:green:inet"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; inet_fail_red { label = "R5010UNv2:red:inet-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; dsl_red { label = "R5010UNv2:green:dsl"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; power_green { label = "R5010UNv2:green:power"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; default-state = "on"; }; power_fail_red { label = "R5010UNv2:red:power-fail"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; wps_green { label = "R5010UNv2:green:wps"; - gpios = <&gpio0 10 1>; + gpios = <&pinctrl 10 1>; }; usb_green { label = "R5010UNv2:green:usb"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/rg100a.dts b/target/linux/brcm63xx/dts/rg100a.dts index 770ceee356..e96e310fd3 100644 --- a/target/linux/brcm63xx/dts/rg100a.dts +++ b/target/linux/brcm63xx/dts/rg100a.dts @@ -17,20 +17,20 @@ stop_green { label = "96358VW2:green:stop"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; power_green { label = "96358VW2:green:power"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; default-state = "on"; }; adsl_green { label = "96358VW2:green:adsl"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; }; ppp_fail_green { label = "96358VW2:green:ppp-fail"; - gpios = <&gpio0 23 0>; + gpios = <&pinctrl 23 0>; }; }; }; diff --git a/target/linux/brcm63xx/dts/rta1025w.dts b/target/linux/brcm63xx/dts/rta1025w.dts index 4758ab3a23..16c3abf854 100644 --- a/target/linux/brcm63xx/dts/rta1025w.dts +++ b/target/linux/brcm63xx/dts/rta1025w.dts @@ -34,3 +34,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/spw303v.dts b/target/linux/brcm63xx/dts/spw303v.dts index 8128fbdfb6..0040540a49 100644 --- a/target/linux/brcm63xx/dts/spw303v.dts +++ b/target/linux/brcm63xx/dts/spw303v.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio0 11 0>; + gpios = <&pinctrl 11 0>; linux,code = <KEY_RESTART>; }; ses { label = "ses"; - gpios = <&gpio1 5 1>; + gpios = <&pinctrl 37 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,28 +36,28 @@ ses_green { label = "spw303v:green:ses"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; power_adsl_red { label = "spw303v:red:power+adsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "spw303v:green:ppp"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; power_adsl_green { label = "spw303v:green:power+adsl"; - gpios = <&gpio0 22 1>; + gpios = <&pinctrl 22 1>; default-state = "on"; }; voip_green { label = "spw303v:green:voip"; - gpios = <&gpio0 27 1>; + gpios = <&pinctrl 27 1>; }; pots_green { label = "spw303v:green:pots"; - gpios = <&gpio0 31 1>; + gpios = <&pinctrl 31 1>; }; }; }; diff --git a/target/linux/brcm63xx/dts/spw500v.dts b/target/linux/brcm63xx/dts/spw500v.dts index 4fe32d6f16..a9603b3889 100644 --- a/target/linux/brcm63xx/dts/spw500v.dts +++ b/target/linux/brcm63xx/dts/spw500v.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "SPW500V:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; power_red { label = "SPW500V:red:power"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; ppp_green { label = "SPW500V:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; pstn_green { label = "SPW500V:green:pstn"; - gpios = <&gpio0 28 1>; + gpios = <&pinctrl 28 1>; }; voip_green { label = "SPW500V:green:voip"; - gpios = <&gpio1 0 1>; + gpios = <&pinctrl 32 1>; }; }; }; @@ -74,3 +74,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; diff --git a/target/linux/brcm63xx/dts/td-w8900gb.dts b/target/linux/brcm63xx/dts/td-w8900gb.dts index 6e13f3f52c..b52670b9bb 100644 --- a/target/linux/brcm63xx/dts/td-w8900gb.dts +++ b/target/linux/brcm63xx/dts/td-w8900gb.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ power_green { label = "96348GW-11:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; default-state = "on"; }; stop_green { label = "96348GW-11:green:stop"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_fail_green { label = "96348GW-11:green:adsl-fail"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "96348GW-11:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; ppp_fail_green { label = "96348GW-11:green:ppp-fail"; - gpios = <&gpio0 4 1>; + gpios = <&pinctrl 4 1>; }; }; }; @@ -74,3 +74,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>; +}; diff --git a/target/linux/brcm63xx/dts/usr9108.dts b/target/linux/brcm63xx/dts/usr9108.dts index 25415abe04..81af20bcd1 100644 --- a/target/linux/brcm63xx/dts/usr9108.dts +++ b/target/linux/brcm63xx/dts/usr9108.dts @@ -17,11 +17,11 @@ usb { label = "96348GW-A::usb"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; dsl { label = "96348GW-A::adsl"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; }; }; @@ -47,3 +47,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/v2110.dts b/target/linux/brcm63xx/dts/v2110.dts index 13230a05ba..23378a4721 100644 --- a/target/linux/brcm63xx/dts/v2110.dts +++ b/target/linux/brcm63xx/dts/v2110.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 1 1>; + gpios = <&pinctrl 33 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,23 +31,23 @@ power_green { label = "V2110:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; power_red { label = "V2110:red:power"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_green { label = "V2110:green:adsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "V2110:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; wireless_green { label = "V2110:green:wireless"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; }; }; @@ -73,3 +73,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/v2500v-bb.dts b/target/linux/brcm63xx/dts/v2500v-bb.dts index bc1a717e06..b6370ee1c6 100644 --- a/target/linux/brcm63xx/dts/v2500v-bb.dts +++ b/target/linux/brcm63xx/dts/v2500v-bb.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio0 31 1>; + gpios = <&pinctrl 31 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,23 +31,23 @@ power_green { label = "V2500V_BB:green:power"; - gpios = <&gpio0 0 1>; + gpios = <&pinctrl 0 1>; }; power_red { label = "V2500V_BB:red:power"; - gpios = <&gpio0 1 1>; + gpios = <&pinctrl 1 1>; }; adsl_green { label = "V2500V_BB:green:adsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; ppp_green { label = "V2500V_BB:green:ppp"; - gpios = <&gpio0 3 1>; + gpios = <&pinctrl 3 1>; }; wireless_green { label = "V2500V_BB:green:wireless"; - gpios = <&gpio0 6 1>; + gpios = <&pinctrl 6 1>; }; }; }; @@ -73,3 +73,8 @@ reg = <0x3f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>; +}; diff --git a/target/linux/brcm63xx/dts/vg50.dts b/target/linux/brcm63xx/dts/vg50.dts index 0eb7eb6691..2180802db3 100644 --- a/target/linux/brcm63xx/dts/vg50.dts +++ b/target/linux/brcm63xx/dts/vg50.dts @@ -21,13 +21,13 @@ reset { label = "reset"; - gpios = <&gpio1 0 0>; + gpios = <&pinctrl 32 0>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 2 0>; + gpios = <&pinctrl 34 0>; linux,code = <KEY_WPS_BUTTON>; }; }; diff --git a/target/linux/brcm63xx/dts/vh4032n.dts b/target/linux/brcm63xx/dts/vh4032n.dts index 8b8abd9b4a..1b646ce5c5 100644 --- a/target/linux/brcm63xx/dts/vh4032n.dts +++ b/target/linux/brcm63xx/dts/vh4032n.dts @@ -21,12 +21,12 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -36,41 +36,41 @@ dsl_blue { label = "VH4032N:blue:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; dsl_red { label = "VH4032N:red:dsl"; - gpios = <&gpio0 5 1>; + gpios = <&pinctrl 5 1>; }; hspa_blue { label = "VH4032N:blue:hspa"; - gpios = <&gpio0 11 1>; + gpios = <&pinctrl 11 1>; }; hspa_red { label = "VH4032N:red:hspa"; - gpios = <&gpio0 12 1>; + gpios = <&pinctrl 12 1>; }; power_blue { label = "VH4032N:blue:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; }; power_red { label = "VH4032N:red:power"; - gpios = <&gpio0 24 0>; + gpios = <&pinctrl 24 0>; default-state = "on"; }; voice_blue { label = "VH4032N:blue:voice"; - gpios = <&gpio0 25 1>; + gpios = <&pinctrl 25 1>; }; voice_red { label = "VH4032N:red:voice"; - gpios = <&gpio0 26 1>; + gpios = <&pinctrl 26 1>; }; }; }; -&gpio0 { +&pinctrl { usb_hub_reset { gpio-hog; gpios = <27 0>; diff --git a/target/linux/brcm63xx/dts/vr-3025u.dts b/target/linux/brcm63xx/dts/vr-3025u.dts index 63b1427704..2c53f516b7 100644 --- a/target/linux/brcm63xx/dts/vr-3025u.dts +++ b/target/linux/brcm63xx/dts/vr-3025u.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ dsl_green { label = "VR-3025u:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_green { label = "VR-3025u:green:inet"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; power_green { label = "VR-3025u:green:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; default-state = "on"; }; power_red { label = "VR-3025u:red:power"; - gpios = <&gpio0 24 0>; + gpios = <&pinctrl 24 0>; }; inet_red { label = "VR-3025u:red:inet"; - gpios = <&gpio0 31 0>; + gpios = <&pinctrl 31 0>; }; }; }; @@ -74,3 +74,9 @@ reg = <0x1fe0000 0x020000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led + &pinctrl_ephy2_led &pinctrl_ephy3_led>; +}; diff --git a/target/linux/brcm63xx/dts/vr-3025un.dts b/target/linux/brcm63xx/dts/vr-3025un.dts index 864eb8216e..f9aed51755 100644 --- a/target/linux/brcm63xx/dts/vr-3025un.dts +++ b/target/linux/brcm63xx/dts/vr-3025un.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ dsl_green { label = "VR-3025un:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_green { label = "VR-3025un:green:inet"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; power_green { label = "VR-3025un:green:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; default-state = "on"; }; power_red { label = "VR-3025un:red:power"; - gpios = <&gpio0 24 0>; + gpios = <&pinctrl 24 0>; }; inet_red { label = "VR-3025un:red:inet"; - gpios = <&gpio0 31 0>; + gpios = <&pinctrl 31 0>; }; }; }; @@ -74,3 +74,9 @@ reg = <0x7f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led + &pinctrl_ephy2_led &pinctrl_ephy3_led>; +}; diff --git a/target/linux/brcm63xx/dts/vr-3026e.dts b/target/linux/brcm63xx/dts/vr-3026e.dts index eecbf56d12..da75df8a1e 100644 --- a/target/linux/brcm63xx/dts/vr-3026e.dts +++ b/target/linux/brcm63xx/dts/vr-3026e.dts @@ -21,7 +21,7 @@ reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; }; @@ -31,24 +31,24 @@ dsl_green { label = "VR-3026e:green:dsl"; - gpios = <&gpio0 2 1>; + gpios = <&pinctrl 2 1>; }; inet_green { label = "VR-3026e:green:inet"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; power_green { label = "VR-3026e:green:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; default-state = "on"; }; power_red { label = "VR-3026e:red:power"; - gpios = <&gpio0 24 0>; + gpios = <&pinctrl 24 0>; }; inet_red { label = "VR-3026e:red:inet"; - gpios = <&gpio0 31 0>; + gpios = <&pinctrl 31 0>; }; }; }; @@ -74,3 +74,9 @@ reg = <0x7f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led + &pinctrl_ephy2_led &pinctrl_ephy3_led>; +}; diff --git a/target/linux/brcm63xx/dts/wap-5813n.dts b/target/linux/brcm63xx/dts/wap-5813n.dts index 9312bedb47..d5c0a5f1b7 100644 --- a/target/linux/brcm63xx/dts/wap-5813n.dts +++ b/target/linux/brcm63xx/dts/wap-5813n.dts @@ -21,17 +21,17 @@ wlan { label = "wlan"; - gpios = <&gpio1 0 1>; + gpios = <&pinctrl 32 1>; linux,code = <KEY_WLAN>; }; reset { label = "reset"; - gpios = <&gpio1 2 1>; + gpios = <&pinctrl 34 1>; linux,code = <KEY_RESTART>; }; wps { label = "wps"; - gpios = <&gpio1 3 1>; + gpios = <&pinctrl 35 1>; linux,code = <KEY_WPS_BUTTON>; }; }; @@ -41,24 +41,24 @@ inet_green { label = "WAP-5813n:green:inet"; - gpios = <&gpio0 5 0>; + gpios = <&pinctrl 5 0>; }; power_green { label = "WAP-5813n:green:power"; - gpios = <&gpio0 22 0>; + gpios = <&pinctrl 22 0>; default-state = "on"; }; wps_green { label = "WAP-5813n:green:wps"; - gpios = <&gpio0 23 1>; + gpios = <&pinctrl 23 1>; }; power_red { label = "WAP-5813n:red:power"; - gpios = <&gpio0 24 0>; + gpios = <&pinctrl 24 0>; }; inet_red { label = "WAP-5813n:red:inet"; - gpios = <&gpio0 31 0>; + gpios = <&pinctrl 31 0>; }; }; }; @@ -84,3 +84,8 @@ reg = <0x7f0000 0x010000>; }; }; + +&pinctrl { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pci>; +}; |