From 053d59629742741d9309dddb441b18fd054c1a05 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Wed, 15 Jan 2014 19:16:51 +0000 Subject: [PATCH] lantiq: Add support for Astoria ARV7510PW22 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This board is pretty similar to ARV752DPW22. Signed-off-by: Álvaro Fernández Rojas SVN-Revision: 39303 --- .../etc/hotplug.d/firmware/10-rt2x00-eeprom | 2 +- .../base-files/etc/uci-defaults/02_network | 2 +- target/linux/lantiq/dts/ARV7510PW22.dts | 179 ++++++++++++++++++ target/linux/lantiq/image/Makefile | 3 + target/linux/lantiq/xway/profiles/arv.mk | 14 ++ 5 files changed, 198 insertions(+), 2 deletions(-) create mode 100644 target/linux/lantiq/dts/ARV7510PW22.dts diff --git a/target/linux/lantiq/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom b/target/linux/lantiq/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom index 7ec8d6fd21..2d5e09d015 100644 --- a/target/linux/lantiq/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom +++ b/target/linux/lantiq/base-files/etc/hotplug.d/firmware/10-rt2x00-eeprom @@ -29,7 +29,7 @@ case "$FIRMWARE" in "RT2860.eeprom" ) local board=$(lantiq_board_id) case $board in - ARV7525PW|ARV752DPW|ARV752DPW22) + ARV7510PW22|ARV7525PW|ARV752DPW|ARV752DPW22) rt2x00_eeprom_extract "board_config" 1040 512 ;; *) 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 41785f4ba0..6e17d4dde2 100644 --- a/target/linux/lantiq/base-files/etc/uci-defaults/02_network +++ b/target/linux/lantiq/base-files/etc/uci-defaults/02_network @@ -68,7 +68,7 @@ ACMP252|GIGASX76X) ;; # ar8316 -ARV4519PW|ARV7518PW|ARV752DPW22) +ARV4519PW|ARV7510PW22|ARV7518PW|ARV752DPW22) 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/ARV7510PW22.dts b/target/linux/lantiq/dts/ARV7510PW22.dts new file mode 100644 index 0000000000..0bddce7d64 --- /dev/null +++ b/target/linux/lantiq/dts/ARV7510PW22.dts @@ -0,0 +1,179 @@ +/dts-v1/; + +/include/ "danube.dtsi" + +/ { + model = "ARV7510PW22 - Astoria Networks"; + + chosen { + bootargs = "console=ttyLTQ0,115200 init=/etc/preinit"; + }; + + memory@0 { + reg = <0x0 0x4000000>; + }; + + sram@1F000000 { + vmmc@107000 { + status = "okay"; + gpios = <&gpio 9 0>; + }; + }; + + fpi@10000000 { + localbus@0 { + nor-boot@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0 0x0 0x1000000>; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "uboot"; + reg = <0x00000 0x40000>; + read-only; + }; + + partition@40000 { + label = "uboot_env"; + reg = <0x40000 0x20000>; + read-only; + }; + + partition@60000 { + label = "firmware"; + reg = <0x60000 0xf80000>; + }; + + partition@fe0000 { + label = "board_config"; + reg = <0xfe0000 0x20000>; + read-only; + }; + }; + + mac_addr { + compatible = "lantiq,eth-mac"; + reg = <0 0xfe0016 0x6>; + mac-increment = <2>; + }; + }; + + gpio: pinmux@E100B10 { + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + exin { + lantiq,groups = "exin1"; + lantiq,function = "exin"; + lantiq,pull = <2>; + lantiq,output = <0>; + }; + pci_in { + lantiq,groups = "req1", "req2"; + 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>; + }; + pins_out { + lantiq,pins = "io2", "io4", "io8", "io9", "io10", "io15", "io20"; + lantiq,output = <1>; + }; + pins_in { + lantiq,pins = "io11", "io12", "io28"; + lantiq,open-drain = <1>; + lantiq,pull = <2>; + lantiq,output = <0>; + }; + }; + }; + + ifxhcd@E101000 { + status = "okay"; + gpios = <&gpio 8 0>; + }; + + etop@E180000 { + phy-mode = "rmii"; + /* Switch reset 19 */ + }; + + pci@E105400 { + status = "okay"; + lantiq,external-clock; + interrupt-map = < + 0x7000 0 0 1 &icu0 30 + 0x7800 0 0 1 &icu0 135 + 0x7800 0 0 2 &icu0 135 + 0x7800 0 0 3 &icu0 135 + >; + gpio-reset = <&gpio 21 0>; + req-mask = <0x3>; + }; + }; + + ralink_eep { + compatible = "ralink,eeprom"; + ralink,eeprom = "RT2860.eeprom"; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <100>; + + rfkill { + label = "rfkill"; + gpios = <&gpio 11 1>; + linux,code = <0xf7>; + }; + restart { + label = "restart"; + gpios = <&gpio 12 1>; + linux,code = <0x100>; + }; + reset { + label = "reset"; + gpios = <&gpio 28 1>; + linux,code = <0x198>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + power { + label = "power"; + gpios = <&gpio 2 1>; + }; + internet { + label = "internet"; + gpios = <&gpio 4 1>; + }; + wlan { + label = "wlan"; + gpios = <&gpio 10 1>; + }; + 3g { + label = "3g"; + gpios = <&gpio 15 1>; + }; + message { + label = "message"; + gpios = <&gpio 20 1>; + }; + }; +}; diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index c9b6913668..094588868f 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -224,6 +224,9 @@ Image/Build/Profile/ARV4520PW=$(call Image/Build/$(1),$(1),ARV4520PW) Image/BuildKernel/Profile/ARV452CQW=$(call Image/BuildKernel/Template,ARV452CQW) Image/Build/Profile/ARV452CQW=$(call Image/Build/$(1),$(1),ARV452CQW) +Image/BuildKernel/Profile/ARV7510PW22=$(call Image/BuildKernel/Template,ARV7510PW22) +Image/Build/Profile/ARV7510PW22=$(call Image/Build/$(1),$(1),ARV7510PW22) + Image/BuildKernel/Profile/ARV7518PW=$(call Image/BuildKernel/Template,ARV7518PW) Image/Build/Profile/ARV7518PW=$(call Image/Build/$(1),$(1),ARV7518PW) diff --git a/target/linux/lantiq/xway/profiles/arv.mk b/target/linux/lantiq/xway/profiles/arv.mk index ea611fddcf..9b172f266e 100644 --- a/target/linux/lantiq/xway/profiles/arv.mk +++ b/target/linux/lantiq/xway/profiles/arv.mk @@ -66,6 +66,20 @@ endef $(eval $(call Profile,ARV4519PW)) +define Profile/ARV7510PW22 + NAME:=Astoria - ARV7510PW22 + PACKAGES:=kmod-ltq-hcd-danube kmod-ledtrig-usbdev \ + kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \ + kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \ + ltq-adsl-app ppp-mod-pppoa \ + kmod-ltq-tapi kmod-ltq-vmmc \ + kmod-rt2800-pci wpad-mini \ + kmod-uhci kmod-usb2 kmod-usb2-pci \ + swconfig +endef + +$(eval $(call Profile,ARV7510PW22)) + define Profile/ARV7518PW NAME:=Astoria - ARV7518PW PACKAGES:=kmod-ltq-hcd-danube kmod-ledtrig-usbdev \ -- 2.25.1