From 5fba0f0c0c873e0d7179225273ceac89a5d39914 Mon Sep 17 00:00:00 2001 From: Roger Pueyo Centelles Date: Thu, 23 Jun 2016 10:58:08 +0200 Subject: [PATCH] ramips: add suport for ZBT APE522II The ZBT APE522II is a dual-radio outdoor CPE based on the MT7620a SoC. It has 64 MB RAM, 8 MB flash, 2 Fast Ethernet ports via internal switch (one with 802.3af 48V PoE support), a 802.11b/g/n SoC 2.4 GHz radio and an 802.11a/n/ac MT7612E-based 5 GHz radio. Signed-off-by: Roger Pueyo Centelles --- .../ramips/base-files/etc/board.d/01_leds | 5 + .../ramips/base-files/etc/board.d/02_network | 1 + target/linux/ramips/base-files/lib/ramips.sh | 3 + .../ramips/base-files/lib/upgrade/platform.sh | 1 + target/linux/ramips/dts/ZBT-APE522II.dts | 143 ++++++++++++++++++ target/linux/ramips/image/mt7620.mk | 8 + 6 files changed, 161 insertions(+) create mode 100644 target/linux/ramips/dts/ZBT-APE522II.dts diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds index 3aac1e45f5..460253c9ff 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -296,6 +296,11 @@ y1s) set_usb_led "$board:blue:usb" set_wifi_led "$board:blue:wifi" ;; +zbt-ape522ii) + ucidef_set_led_netdev "wlan2g4" "wlan1-link" "$board:green:wlan2g4" "wlan1" + ucidef_set_led_netdev "sys1" "wlan1" "$board:green:sys1" "wlan1" "tx rx" + ucidef_set_led_netdev "sys2" "wlan0" "$board:green:sys2" "wlan0" "tx rx" + ;; zbt-wa05) ucidef_set_led_default "power" "power" "$board:blue:power" "1" set_wifi_led "$board:blue:air" diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network index be1912a1b0..dbb5fb43e0 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -224,6 +224,7 @@ ramips_setup_interfaces() ucidef_add_switch "switch0" \ "1:lan" "2:lan" "0:wan" "6@eth0" ;; + zbt-ape522ii|\ zbt-we826|\ zbt-wr8305rt) ucidef_add_switch "switch0" \ diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index bd4f33d3d5..10139d7fc6 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -523,6 +523,9 @@ ramips_board_detect() { *"Y1S") name="y1s" ;; + *"ZBT-APE522II") + name="zbt-ape522ii" + ;; *"ZBT-WA05") name="zbt-wa05" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index 0b3d8c7406..e3bea004fa 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -155,6 +155,7 @@ platform_check_image() { x8|\ y1|\ y1s|\ + zbt-ape522ii|\ zbt-wa05|\ zbt-we826|\ zbt-wg2626|\ diff --git a/target/linux/ramips/dts/ZBT-APE522II.dts b/target/linux/ramips/dts/ZBT-APE522II.dts new file mode 100644 index 0000000000..eff27c2a15 --- /dev/null +++ b/target/linux/ramips/dts/ZBT-APE522II.dts @@ -0,0 +1,143 @@ +/dts-v1/; + +#include "mt7620a.dtsi" + +/ { + compatible = "zbtlink,zbt-ape522ii", "ralink,mt7620a-soc"; + model = "ZBT-APE522II"; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + gpio-leds { + compatible = "gpio-leds"; + + sys1 { + label = "zbt-ape522ii:green:sys1"; + gpios = <&gpio0 11 1>; + }; + + sys2 { + label = "zbt-ape522ii:green:sys2"; + gpios = <&gpio0 12 1>; + }; + + sys3 { + label = "zbt-ape522ii:green:sys3"; + gpios = <&gpio0 9 1>; + }; + + sys4 { + label = "zbt-ape522ii:green:sys4"; + gpios = <&gpio0 14 1>; + }; + + wlan2g4 { + label = "zbt-ape522ii:green:wlan2g4"; + gpios = <&gpio3 0 1>; + }; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + + reset { + label = "reset"; + gpios = <&gpio0 2 0>; + linux,code = <0x198>; + }; + }; +}; + +&gpio0 { + status = "okay"; +}; + +&gpio1 { + status = "okay"; +}; + +&gpio2 { + status = "okay"; +}; + +&gpio3 { + status = "okay"; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + linux,modalias = "m25p80", "w25q64"; + spi-max-frequency = <10000000>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + read-only; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + label = "firmware"; + reg = <0x50000 0xf80000>; + }; + }; +}; + +ðernet { + pinctrl-names = "default"; + pinctrl-0 = <&ephy_pins>; + mtd-mac-address = <&factory 0x4>; + mediatek,portmap = "wllll"; +}; + +&wmac { + ralink,mtd-eeprom = <&factory 0>; +}; + +&pcie { + status = "okay"; + + pcie-bridge { + mt76@0,0 { + reg = <0x0000 0 0 0 0>; + device_type = "pci"; + mediatek,mtd-eeprom = <&factory 0x8000>; + mediatek,2ghz = <0>; + }; + }; +}; + +&pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "wled", "i2c", "uartf", "wdt"; + ralink,function = "gpio"; + }; + + pa { + ralink,group = "pa"; + ralink,function = "pa"; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk index 33f94a48e9..b1afb82c00 100644 --- a/target/linux/ramips/image/mt7620.mk +++ b/target/linux/ramips/image/mt7620.mk @@ -376,6 +376,14 @@ define Device/youku-yk1 endef TARGET_DEVICES += youku-yk1 +define Device/zbt-ape522ii + DTS := ZBT-APE522II + IMAGE_SIZE := $(ralink_default_fw_size_8M) + DEVICE_TITLE := Zbtlink ZBT-APE522II + DEVICE_PACKAGES := kmod-mt76 +endef +TARGET_DEVICES += zbt-ape522ii + define Device/zbt-wa05 DTS := ZBT-WA05 IMAGE_SIZE := $(ralink_default_fw_size_8M) -- 2.25.1