ramips: add support for ZyXEL Keenetic Omni / Omni II
Factory image can be installed via Zyxel WebUI. Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
This commit is contained in:
parent
83eca5d8b7
commit
190ee7d86b
8 changed files with 277 additions and 0 deletions
|
@ -207,6 +207,8 @@ 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"
|
||||||
;;
|
;;
|
||||||
|
kn_rc|\
|
||||||
|
kn_rf|\
|
||||||
kng_rc)
|
kng_rc)
|
||||||
set_usb_led "$board:green:usb"
|
set_usb_led "$board:green:usb"
|
||||||
set_wifi_led "$board:green:wifi"
|
set_wifi_led "$board:green:wifi"
|
||||||
|
|
|
@ -203,6 +203,11 @@ 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"
|
||||||
;;
|
;;
|
||||||
|
kn_rc|\
|
||||||
|
kn_rf)
|
||||||
|
ucidef_add_switch "switch" \
|
||||||
|
"0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6@eth0"
|
||||||
|
;;
|
||||||
kng_rc)
|
kng_rc)
|
||||||
ucidef_add_switch "switch1" \
|
ucidef_add_switch "switch1" \
|
||||||
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
|
"0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
|
||||||
|
|
|
@ -24,6 +24,8 @@ get_status_led() {
|
||||||
dir-860l-b1|\
|
dir-860l-b1|\
|
||||||
e1700|\
|
e1700|\
|
||||||
fonera20n|\
|
fonera20n|\
|
||||||
|
kn_rc|\
|
||||||
|
kn_rf|\
|
||||||
kng_rc|\
|
kng_rc|\
|
||||||
mzk-750dhp|\
|
mzk-750dhp|\
|
||||||
mzk-dp150n|\
|
mzk-dp150n|\
|
||||||
|
|
|
@ -595,6 +595,12 @@ ramips_board_detect() {
|
||||||
*"ZBT-WR8305RT")
|
*"ZBT-WR8305RT")
|
||||||
name="zbt-wr8305rt"
|
name="zbt-wr8305rt"
|
||||||
;;
|
;;
|
||||||
|
*"ZyXEL Keenetic Omni")
|
||||||
|
name="kn_rc"
|
||||||
|
;;
|
||||||
|
*"ZyXEL Keenetic Omni II")
|
||||||
|
name="kn_rf"
|
||||||
|
;;
|
||||||
*"ZyXEL Keenetic Viva")
|
*"ZyXEL Keenetic Viva")
|
||||||
name="kng_rc"
|
name="kng_rc"
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -71,6 +71,8 @@ platform_check_image() {
|
||||||
jhr-n805r|\
|
jhr-n805r|\
|
||||||
jhr-n825r|\
|
jhr-n825r|\
|
||||||
jhr-n926r|\
|
jhr-n926r|\
|
||||||
|
kn_rc|\
|
||||||
|
kn_rf|\
|
||||||
kng_rc|\
|
kng_rc|\
|
||||||
linkits7688|\
|
linkits7688|\
|
||||||
linkits7688d|\
|
linkits7688d|\
|
||||||
|
|
120
target/linux/ramips/dts/kn_rc.dts
Normal file
120
target/linux/ramips/dts/kn_rc.dts
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "mt7620n.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "ZyXEL Keenetic Omni";
|
||||||
|
|
||||||
|
gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
wan {
|
||||||
|
label = "kn_rc:green:wan";
|
||||||
|
gpios = <&gpio0 38 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
usb {
|
||||||
|
label = "kn_rc:green:usb";
|
||||||
|
gpios = <&gpio0 39 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
wifi {
|
||||||
|
label = "kn_rc:green:wifi";
|
||||||
|
gpios = <&gpio0 72 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
power {
|
||||||
|
label = "kn_rc:green:power";
|
||||||
|
gpios = <&gpio0 20 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 17 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <BTN_0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&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 0x7b0000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pinctrl {
|
||||||
|
state_default: pinctrl0 {
|
||||||
|
gpio {
|
||||||
|
ralink,group = "i2c", "wdt", "pa", "spi refclk", "wled";
|
||||||
|
ralink,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ðernet {
|
||||||
|
mtd-mac-address = <&factory 0x4>;
|
||||||
|
ralink,port-map = "wllll";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wmac {
|
||||||
|
ralink,mtd-eeprom = <&factory 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
120
target/linux/ramips/dts/kn_rf.dts
Normal file
120
target/linux/ramips/dts/kn_rf.dts
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "mt7620n.dtsi"
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "ZyXEL Keenetic Omni II";
|
||||||
|
|
||||||
|
gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
wan {
|
||||||
|
label = "kn_rc:green:wan";
|
||||||
|
gpios = <&gpio0 38 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
usb {
|
||||||
|
label = "kn_rc:green:usb";
|
||||||
|
gpios = <&gpio0 20 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
wifi {
|
||||||
|
label = "kn_rc:green:wifi";
|
||||||
|
gpios = <&gpio0 72 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
power {
|
||||||
|
label = "kn_rc:green:power";
|
||||||
|
gpios = <&gpio0 39 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 17 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <BTN_0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&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 0x7b0000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pinctrl {
|
||||||
|
state_default: pinctrl0 {
|
||||||
|
gpio {
|
||||||
|
ralink,group = "i2c", "wdt", "pa", "spi refclk", "wled";
|
||||||
|
ralink,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ðernet {
|
||||||
|
mtd-mac-address = <&factory 0x4>;
|
||||||
|
ralink,port-map = "wllll";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wmac {
|
||||||
|
ralink,mtd-eeprom = <&factory 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -430,6 +430,26 @@ define Device/dch-m225
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += dch-m225
|
TARGET_DEVICES += dch-m225
|
||||||
|
|
||||||
|
define Device/kn_rc
|
||||||
|
DTS := kn_rc
|
||||||
|
DEVICE_TITLE := ZyXEL Keenetic Omni
|
||||||
|
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
|
||||||
|
IMAGES += factory.bin
|
||||||
|
IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | check-size $$$$(IMAGE_SIZE) | \
|
||||||
|
zyimage -d 4882 -v "ZyXEL Keenetic Omni"
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += kn_rc
|
||||||
|
|
||||||
|
define Device/kn_rf
|
||||||
|
DTS := kn_rf
|
||||||
|
DEVICE_TITLE := ZyXEL Keenetic Omni II
|
||||||
|
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
|
||||||
|
IMAGES += factory.bin
|
||||||
|
IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | check-size $$$$(IMAGE_SIZE) | \
|
||||||
|
zyimage -d 2102034 -v "ZyXEL Keenetic Omni II"
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += kn_rf
|
||||||
|
|
||||||
define Device/kng_rc
|
define Device/kng_rc
|
||||||
DTS := kng_rc
|
DTS := kng_rc
|
||||||
IMAGE_SIZE := $(ralink_default_fw_size_16M)
|
IMAGE_SIZE := $(ralink_default_fw_size_16M)
|
||||||
|
|
Loading…
Reference in a new issue