ramips: add support for ZyXEL Keenetic Viva
Factory image can be installed via Zyxel WebUI. Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com> [removed linux,modalias parameter from flash node in dts] [removed sdhci node from dts; no sd card slot here] Signed-off-by: Mathias Kresin <dev@kresin.me>
This commit is contained in:
parent
a4814c744c
commit
348344874c
7 changed files with 184 additions and 0 deletions
|
@ -203,6 +203,10 @@ ht-tm02)
|
||||||
ucidef_set_led_netdev "eth" "Ethernet" "$board:green:lan" "eth0"
|
ucidef_set_led_netdev "eth" "Ethernet" "$board:green:lan" "eth0"
|
||||||
set_wifi_led "$board:blue:wlan"
|
set_wifi_led "$board:blue:wlan"
|
||||||
;;
|
;;
|
||||||
|
kng_rc)
|
||||||
|
set_usb_led "$board:green:usb"
|
||||||
|
set_wifi_led "$board:green:wifi"
|
||||||
|
;;
|
||||||
m2m)
|
m2m)
|
||||||
set_wifi_led "$board:blue:wifi"
|
set_wifi_led "$board:blue:wifi"
|
||||||
ucidef_set_led_netdev "eth" "Ethernet" "$board:green:wan" "eth0"
|
ucidef_set_led_netdev "eth" "Ethernet" "$board:green:wan" "eth0"
|
||||||
|
|
|
@ -204,6 +204,10 @@ ramips_setup_interfaces()
|
||||||
ucidef_add_switch "switch0" \
|
ucidef_add_switch "switch0" \
|
||||||
"1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
|
"1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
|
||||||
;;
|
;;
|
||||||
|
kng_rc)
|
||||||
|
ucidef_add_switch "switch1" \
|
||||||
|
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
|
||||||
|
;;
|
||||||
mlwg2|\
|
mlwg2|\
|
||||||
wizard8800|\
|
wizard8800|\
|
||||||
wl-330n)
|
wl-330n)
|
||||||
|
@ -320,6 +324,9 @@ ramips_setup_macs()
|
||||||
[ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
|
[ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
wan_mac=$(macaddr_add "$lan_mac" 1)
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
||||||
;;
|
;;
|
||||||
|
kng_rc)
|
||||||
|
wan_mac=$(mtd_get_mac_binary factory 28)
|
||||||
|
;;
|
||||||
linkits7688 | \
|
linkits7688 | \
|
||||||
linkits7688d)
|
linkits7688d)
|
||||||
wan_mac=$(mtd_get_mac_binary factory 4)
|
wan_mac=$(mtd_get_mac_binary factory 4)
|
||||||
|
|
|
@ -24,6 +24,7 @@ get_status_led() {
|
||||||
dir-860l-b1|\
|
dir-860l-b1|\
|
||||||
e1700|\
|
e1700|\
|
||||||
fonera20n|\
|
fonera20n|\
|
||||||
|
kng_rc|\
|
||||||
mzk-750dhp|\
|
mzk-750dhp|\
|
||||||
mzk-dp150n|\
|
mzk-dp150n|\
|
||||||
mzk-w300nh2|\
|
mzk-w300nh2|\
|
||||||
|
|
|
@ -586,6 +586,9 @@ ramips_board_detect() {
|
||||||
*"ZBT-WR8305RT")
|
*"ZBT-WR8305RT")
|
||||||
name="zbt-wr8305rt"
|
name="zbt-wr8305rt"
|
||||||
;;
|
;;
|
||||||
|
*"ZyXEL Keenetic Viva")
|
||||||
|
name="kng_rc"
|
||||||
|
;;
|
||||||
*"YK1")
|
*"YK1")
|
||||||
name="youku-yk1"
|
name="youku-yk1"
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -70,6 +70,7 @@ platform_check_image() {
|
||||||
jhr-n805r|\
|
jhr-n805r|\
|
||||||
jhr-n825r|\
|
jhr-n825r|\
|
||||||
jhr-n926r|\
|
jhr-n926r|\
|
||||||
|
kng_rc|\
|
||||||
linkits7688|\
|
linkits7688|\
|
||||||
linkits7688d|\
|
linkits7688d|\
|
||||||
m2m|\
|
m2m|\
|
||||||
|
|
154
target/linux/ramips/dts/kng_rc.dts
Normal file
154
target/linux/ramips/dts/kng_rc.dts
Normal file
|
@ -0,0 +1,154 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "mt7620a.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "ZyXEL Keenetic Viva";
|
||||||
|
|
||||||
|
gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
wan {
|
||||||
|
label = "kng_rc:green:wan";
|
||||||
|
gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
usb {
|
||||||
|
label = "kng_rc:green:usb";
|
||||||
|
gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
power_alert {
|
||||||
|
label = "kng_rc:red:power";
|
||||||
|
gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
wifi {
|
||||||
|
label = "kng_rc:green:wifi";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
power {
|
||||||
|
label = "kng_rc:green:power";
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys-polled {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
poll-interval = <20>;
|
||||||
|
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
};
|
||||||
|
|
||||||
|
wps {
|
||||||
|
label = "wps";
|
||||||
|
gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <KEY_WPS_BUTTON>;
|
||||||
|
};
|
||||||
|
|
||||||
|
fn {
|
||||||
|
label = "fn";
|
||||||
|
gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <BTN_0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
rtl8367rb {
|
||||||
|
compatible = "realtek,rtl8367b";
|
||||||
|
cpu_port = <7>;
|
||||||
|
realtek,extif2 = <1 0 1 1 1 1 1 1 2>;
|
||||||
|
mdio = <&mdio0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
m25p80@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "jedec,spi-nor";
|
||||||
|
reg = <0>;
|
||||||
|
spi-max-frequency = <10000000>;
|
||||||
|
|
||||||
|
partition@0 {
|
||||||
|
label = "u-boot";
|
||||||
|
reg = <0x0 0x30000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
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 0xfb0000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pinctrl {
|
||||||
|
state_default: pinctrl0 {
|
||||||
|
gpio {
|
||||||
|
ralink,group = "i2c", "uartf";
|
||||||
|
ralink,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ðernet {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&rgmii2_pins &mdio_pins>;
|
||||||
|
mtd-mac-address = <&factory 0x00004>;
|
||||||
|
|
||||||
|
port@4 {
|
||||||
|
status = "okay";
|
||||||
|
mediatek,fixed-link = <1000 1 1 1>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
phy-handle = <&phy4>;
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio0: mdio-bus {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
phy4: ethernet-phy@4 {
|
||||||
|
reg = <4>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&gsw {
|
||||||
|
mediatek,port4 = "gmac";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wmac {
|
||||||
|
ralink,mtd-eeprom = <&factory 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -37,6 +37,10 @@ define Build/elecom-header
|
||||||
$(STAGING_DIR_HOST)/bin/tar -cf $@ -C $(KDIR) v_0.0.0.bin v_0.0.0.md5
|
$(STAGING_DIR_HOST)/bin/tar -cf $@ -C $(KDIR) v_0.0.0.bin v_0.0.0.md5
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Build/zyimage
|
||||||
|
$(STAGING_DIR_HOST)/bin/zyimage $(1) $@
|
||||||
|
endef
|
||||||
|
|
||||||
define Device/ArcherC20i
|
define Device/ArcherC20i
|
||||||
DTS := ArcherC20i
|
DTS := ArcherC20i
|
||||||
KERNEL := $(KERNEL_DTB)
|
KERNEL := $(KERNEL_DTB)
|
||||||
|
@ -418,3 +422,13 @@ define Device/dch-m225
|
||||||
DEVICE_PACKAGES := kmod-mt76
|
DEVICE_PACKAGES := kmod-mt76
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += dch-m225
|
TARGET_DEVICES += dch-m225
|
||||||
|
|
||||||
|
define Device/kng_rc
|
||||||
|
DTS := kng_rc
|
||||||
|
IMAGE_SIZE := $(ralink_default_fw_size_16M)
|
||||||
|
DEVICE_TITLE := ZyXEL Keenetic Viva
|
||||||
|
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport kmod-switch-rtl8366-smi kmod-switch-rtl8367b
|
||||||
|
IMAGES += factory.bin
|
||||||
|
IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | zyimage -d 8997 -v "ZyXEL Keenetic Viva"
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += kng_rc
|
||||||
|
|
Loading…
Reference in a new issue