From b9963bbe804f12873a58cb2f4b675e68f5e92158 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Tue, 7 Jul 2015 13:44:58 +0000 Subject: [PATCH] lantiq: Add support for Arcadyan ARV8539PW22 (Speedport W 504V) lantiq: Add support for Arcadyan ARV8539PW22 (Speedport W 504V) Signed-off-by: Jannis Pinter SVN-Revision: 46224 --- .../base-files/etc/uci-defaults/01_leds | 7 + .../base-files/etc/uci-defaults/02_network | 2 +- target/linux/lantiq/dts/ARV8539PW22.dts | 162 ++++++++++++++++++ target/linux/lantiq/image/Makefile | 3 + target/linux/lantiq/xway/profiles/arv.mk | 12 ++ 5 files changed, 185 insertions(+), 1 deletion(-) create mode 100644 target/linux/lantiq/dts/ARV8539PW22.dts diff --git a/target/linux/lantiq/base-files/etc/uci-defaults/01_leds b/target/linux/lantiq/base-files/etc/uci-defaults/01_leds index 3e05ebaa87d..7ef88ea2c83 100644 --- a/target/linux/lantiq/base-files/etc/uci-defaults/01_leds +++ b/target/linux/lantiq/base-files/etc/uci-defaults/01_leds @@ -51,6 +51,13 @@ P2812HNUF*) ucidef_set_led_netdev "dsl" "dsl" "dsl" "nas0" ucidef_set_led_netdev "internet_green" "internet_green" "internet_green" "pppoe-wan" ;; +ARV8539PW22) + ucidef_set_led_default "power" "power" "soc:green:power" "1" + ucidef_set_led_default "power2" "power2" "soc:red:power" "0" + ucidef_set_led_wlan "wifi" "wifi" "soc:green:wireless" "phy0tpt" + ucidef_set_led_netdev "dsl" "dsl" "soc:green:dsl" "nas0" + ucidef_set_led_netdev "online" "online" "soc:green:online" "pppoe-wan" + ;; *) ;; esac diff --git a/target/linux/lantiq/base-files/etc/uci-defaults/02_network b/target/linux/lantiq/base-files/etc/uci-defaults/02_network index 6f9d9c022d7..ff21e02aea6 100644 --- a/target/linux/lantiq/base-files/etc/uci-defaults/02_network +++ b/target/linux/lantiq/base-files/etc/uci-defaults/02_network @@ -93,7 +93,7 @@ ACMP252|GIGASX76X) ;; # ar8316 -ARV4519PW|ARV7510PW22|ARV7518PW|ARV752DPW22) +ARV4519PW|ARV7510PW22|ARV7518PW|ARV752DPW22|ARV8539PW22) ucidef_set_interface_lan "eth0.1" ucidef_add_switch "switch0" "1" "1" ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5" diff --git a/target/linux/lantiq/dts/ARV8539PW22.dts b/target/linux/lantiq/dts/ARV8539PW22.dts new file mode 100644 index 00000000000..acca47f9ddc --- /dev/null +++ b/target/linux/lantiq/dts/ARV8539PW22.dts @@ -0,0 +1,162 @@ +/dts-v1/; + +/include/ "danube.dtsi" + +/ { + model = "ARV8539PW22 - Speedport W 504V Typ A"; + + memory@0 { + reg = <0x0 0x4000000>; + }; + + sram@1F000000 { + vmmc@107000 { + status = "okay"; + gpios = <&gpio 31 0>; + }; + }; + + fpi@10000000 { + localbus@0 { + nor-boot@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0 0x0 0x800000>; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "uboot"; + reg = <0x00000 0x30000>; /* 192 KiB */ + read-only; + }; + + partition@30000 { + label = "uboot"; + reg = <0x30000 0x10000>; /* 64 KiB */ + read-only; + }; + + partition@40000 { + label = "firmware"; + reg = <0x40000 0x7B0000>; /* 7872 KiB */ + }; + + partition@7F0000 { + label = "art"; + reg = <0x7F0000 0x10000>; /* 64 KiB*/ + read-only; + }; + }; + + mac_addr { + compatible = "lantiq,eth-mac"; + reg = <0 0x7f0016 0x6>; + mac-increment = <2>; + }; + + ath9k_eep { + compatible = "ath9k,eeprom"; + reg = <0 0x7f0400 0x1000 + 0 0x7f0016 0x6>; + ath,mac-increment = <1>; + ath,pci-slot = <14>; + ath,eep-endian; + ath,arv-ath9k-fix; + }; + }; + + gpio: pinmux@E100B10 { + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + + pci_in { + lantiq,groups = "req1"; + lantiq,function = "pci"; + lantiq,open-drain = <1>; + lantiq,pull = <2>; + lantiq,output = <0>; + }; + pci_out { + lantiq,groups = "gnt1"; + lantiq,function = "pci"; + lantiq,output = <1>; + }; + pci_rst { + lantiq,pins = "io21"; + lantiq,pull = <2>; + lantiq,output = <1>; + }; + relay { + lantiq,pins = "io31"; + lantiq,output = <1>; + }; + }; + }; + + etop@E180000 { + phy-mode = "mii"; + }; + + pci@E105400 { + status = "okay"; + gpio-reset = <&gpio 21 0>; + }; + + ifxhcd@E101000 { + status = "okay"; + gpios = <&gpio 14 0>; + lantiq,portmask = <0x3>; + }; + + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <100>; + + wlan { + label = "wlan"; + gpios = <&gpio 29 1>; + linux,code = <0x211>; + }; + reset { + label = "reset"; + gpios = <&gpio 30 1>; + linux,code = <0x198>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + power-green { + label = "power"; + gpios = <&gpio 24 1>; + }; + power-red { + label = "soc:red:power"; + gpios = <&gpio 4 1>; + }; + + dsl-green { + label = "soc:green:dsl"; + gpios = <&gpio 5 1>; + }; + + online-green { + label = "soc:green:online"; + gpios = <&gpio 6 1>; + }; + + wireless-green { + label = "soc:green:wireless"; + gpios = <&gpio 8 1>; + }; + }; +}; + diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index 726092db8f9..f89df52102e 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -367,6 +367,9 @@ Image/Build/Profile/ARV752DPW=$(call Image/Build/$(1),$(1),ARV752DPW) Image/BuildKernel/Profile/ARV752DPW22=$(call Image/BuildKernel/Template,ARV752DPW22) Image/Build/Profile/ARV752DPW22=$(call Image/Build/$(1),$(1),ARV752DPW22) +Image/BuildKernel/Profile/ARV8539PW22=$(call Image/BuildKernel/Template,ARV8539PW22) +Image/Build/Profile/ARV8539PW22=$(call Image/Build/$(1),$(1),ARV8539PW22) + Image/BuildKernel/Profile/GIGASX76X=$(call Image/BuildKernel/Template,GIGASX76X) Image/Build/Profile/GIGASX76X=$(call Image/Build/$(1),$(1),GIGASX76X) diff --git a/target/linux/lantiq/xway/profiles/arv.mk b/target/linux/lantiq/xway/profiles/arv.mk index 773243717e2..976cd194d0e 100644 --- a/target/linux/lantiq/xway/profiles/arv.mk +++ b/target/linux/lantiq/xway/profiles/arv.mk @@ -8,6 +8,18 @@ endef $(eval $(call Profile,ARV4525PW)) +define Profile/ARV8539PW22 + NAME:=Speedport W504V Typ A - ARV8539PW22 + PACKAGES:=kmod-ltq-hcd-danube \ + kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \ + kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \ + ltq-adsl-app ppp-mod-pppoa \ + kmod-ath9k wpad-mini \ + swconfig +endef + +$(eval $(call Profile,ARV8539PW22)) + define Profile/ARV7525PW NAME:=Speedport W303V Typ A - ARV7525PW PACKAGES:=kmod-rt2800-pci wpad-mini \