mirror of
https://github.com/Ysurac/openmptcprouter.git
synced 2025-02-12 03:11:55 +00:00
Add alpha support of z8109ax
This commit is contained in:
parent
356805d755
commit
7c29555b98
10 changed files with 494 additions and 1 deletions
13
6.6/target/linux/mediatek/dts/mt7981b-zbt-z8109ax-128.dts
Normal file
13
6.6/target/linux/mediatek/dts/mt7981b-zbt-z8109ax-128.dts
Normal file
|
@ -0,0 +1,13 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "mt7981b-zbt-z8109ax.dtsi"
|
||||
|
||||
/ {
|
||||
model = "ZBT Z8109AX 128M";
|
||||
compatible = "z8109ax-128m", "z8109ax", "mediatek,mt7981";
|
||||
};
|
||||
|
||||
&nand_rootfs {
|
||||
reg = <0x0580000 0x7E80000>;
|
||||
};
|
||||
|
13
6.6/target/linux/mediatek/dts/mt7981b-zbt-z8109ax-512.dts
Normal file
13
6.6/target/linux/mediatek/dts/mt7981b-zbt-z8109ax-512.dts
Normal file
|
@ -0,0 +1,13 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include "mt7981b-zbt-z8109ax.dtsi"
|
||||
|
||||
/ {
|
||||
model = "ZBT Z8109AX 512M";
|
||||
compatible = "z8109ax-512m", "z8109ax", "mediatek,mt7981";
|
||||
};
|
||||
|
||||
&nand_rootfs {
|
||||
reg = <0x0580000 0x20000000>;
|
||||
};
|
||||
|
380
6.6/target/linux/mediatek/dts/mt7981b-zbt-z8109ax.dtsi
Normal file
380
6.6/target/linux/mediatek/dts/mt7981b-zbt-z8109ax.dtsi
Normal file
|
@ -0,0 +1,380 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
#include "mt7981.dtsi"
|
||||
|
||||
/ {
|
||||
model = "ZBT Z8109AX";
|
||||
compatible = "z8109ax", "mediatek,mt7981-spim-snand-rfb", "zbtlink,zbt-z8109ax";
|
||||
|
||||
aliases {
|
||||
serial0 = &uart0;
|
||||
led-boot = &led_status_green;
|
||||
led-failsafe = &led_status_red;
|
||||
led-running = &led_status_green;
|
||||
led-upgrade = &led_status_green;
|
||||
label-mac-device = &gmac0;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
bootargs = "earlycon=uart8250,mmio32,0x11002000 console=ttyS0,115200n8 loglevel=8";
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&pio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
wps {
|
||||
label = "wps";
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
gpios = <&pio 0 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_status_red: red {
|
||||
label = "red:status";
|
||||
gpios = <&pio 9 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
};
|
||||
|
||||
led_status_green: green {
|
||||
label = "green:status";
|
||||
gpios = <&pio 10 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
};
|
||||
|
||||
led_status_blue: blue {
|
||||
label = "blue:status";
|
||||
gpios = <&pio 11 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
};
|
||||
|
||||
led_status_modem1: modem1 {
|
||||
label = "modem1:status";
|
||||
gpios = <&pio 8 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_USB;
|
||||
function-enumerator = <0>;
|
||||
};
|
||||
|
||||
led_status_modem2: modem2 {
|
||||
label = "modem2:status";
|
||||
gpios = <&pio 13 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_USB;
|
||||
function-enumerator = <1>;
|
||||
};
|
||||
|
||||
led_status_modem3: modem3 {
|
||||
label = "modem3:status";
|
||||
gpios = <&pio 9 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_USB;
|
||||
function-enumerator = <2>;
|
||||
};
|
||||
|
||||
led_status_modem4: modem4 {
|
||||
label = "modem3:status";
|
||||
gpios = <&pio 10 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_USB;
|
||||
function-enumerator = <3>;
|
||||
};
|
||||
};
|
||||
|
||||
watchdog {
|
||||
compatible = "linux,wdt-gpio";
|
||||
gpios = <&pio 2 GPIO_ACTIVE_HIGH>;
|
||||
hw_algo = "toggle";
|
||||
hw_margin_ms = <1000>;
|
||||
};
|
||||
|
||||
gpio-export {
|
||||
compatible = "gpio-export";
|
||||
#size-cells = <0>;
|
||||
|
||||
modem1 {
|
||||
gpio-export,name = "modem1";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 4 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
modem2 {
|
||||
gpio-export,name = "modem2";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
modem3 {
|
||||
gpio-export,name = "modem3";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
modem4 {
|
||||
gpio-export,name = "modem4";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 3 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
sim1 {
|
||||
gpio-export,name = "sim1";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
sim2 {
|
||||
gpio-export,name = "sim2";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
sim3 {
|
||||
gpio-export,name = "sim3";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 12 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
sim4 {
|
||||
gpio-export,name = "sim4";
|
||||
gpio-export,output = <1>;
|
||||
gpios = <&pio 14 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ð {
|
||||
status = "okay";
|
||||
|
||||
gmac0: mac@0 {
|
||||
compatible = "mediatek,eth-mac";
|
||||
reg = <0>;
|
||||
phy-mode = "2500base-x";
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_004>;
|
||||
|
||||
fixed-link {
|
||||
speed = <2500>;
|
||||
full-duplex;
|
||||
pause;
|
||||
};
|
||||
};
|
||||
|
||||
gmac1: mac@1 {
|
||||
compatible = "mediatek,eth-mac";
|
||||
reg = <1>;
|
||||
phy-mode = "gmii";
|
||||
phy-handle = <&int_gbe_phy>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_02a>;
|
||||
};
|
||||
};
|
||||
|
||||
&mdio_bus {
|
||||
switch: switch@0 {
|
||||
compatible = "mediatek,mt7531";
|
||||
reg = <31>;
|
||||
reset-gpios = <&pio 39 GPIO_ACTIVE_HIGH>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <38 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi0_flash_pins>;
|
||||
status = "okay";
|
||||
|
||||
spi_nand@0 {
|
||||
compatible = "spi-nand";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
reg = <0>;
|
||||
|
||||
spi-max-frequency = <52000000>;
|
||||
spi-tx-buswidth = <4>;
|
||||
spi-rx-buswidth = <4>;
|
||||
|
||||
mediatek,nmbm;
|
||||
mediatek,bmt-max-ratio = <1>;
|
||||
mediatek,bmt-max-reserved-blocks = <64>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "bl2";
|
||||
reg = <0x0000000 0x0100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
label = "u-boot-env";
|
||||
reg = <0x0100000 0x0080000>;
|
||||
};
|
||||
|
||||
factory: partition@180000 {
|
||||
label = "Factory";
|
||||
reg = <0x0180000 0x0200000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@380000 {
|
||||
label = "FIP";
|
||||
reg = <0x0380000 0x0200000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
nand_rootfs: partition@580000 {
|
||||
label = "ubi";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&switch {
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "lan1";
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_004>;
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan2";
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_004>;
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan3";
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_004>;
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan4";
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_004>;
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan5";
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&macaddr_factory_004>;
|
||||
};
|
||||
|
||||
port@6 {
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
phy-mode = "2500base-x";
|
||||
|
||||
fixed-link {
|
||||
speed = <2500>;
|
||||
full-duplex;
|
||||
pause;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pio {
|
||||
gpio-line-names =
|
||||
"wps",
|
||||
"reset",
|
||||
"watchdog",
|
||||
"pcie",
|
||||
"modem1",
|
||||
"modem2",
|
||||
"sim1",
|
||||
"sim2",
|
||||
"modem1_status",
|
||||
"red_status",
|
||||
"green_status",
|
||||
"blue_status",
|
||||
"",
|
||||
"",
|
||||
"modem2_status";
|
||||
|
||||
spi0_flash_pins: spi0-pins {
|
||||
mux {
|
||||
function = "spi";
|
||||
groups = "spi0", "spi0_wp_hold";
|
||||
};
|
||||
|
||||
conf-pu {
|
||||
pins = "SPI0_CS", "SPI0_HOLD", "SPI0_WP";
|
||||
drive-strength = <8>;
|
||||
mediatek,pull-up-adv = <0>; /* bias-disable */
|
||||
};
|
||||
|
||||
conf-pd {
|
||||
pins = "SPI0_CLK", "SPI0_MOSI", "SPI0_MISO";
|
||||
drive-strength = <8>;
|
||||
mediatek,pull-up-adv = <0>; /* bias-disable */
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&watchdog {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&xhci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wifi {
|
||||
status = "okay";
|
||||
mediatek,mtd-eeprom = <&factory 0x0>;
|
||||
};
|
||||
|
||||
&factory {
|
||||
compatible = "nvmem-cells";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
macaddr_factory_004: macaddr@004 {
|
||||
reg = <0x004 0x6>;
|
||||
};
|
||||
macaddr_factory_02a: macaddr@02a {
|
||||
reg = <0x02a 0x6>;
|
||||
};
|
||||
};
|
|
@ -143,6 +143,13 @@ z8102ax-64m)
|
|||
ucidef_set_led_netdev "modem1" "modem1" "modem1:status" "wwan0"
|
||||
ucidef_set_led_netdev "modem2" "modem2" "modem2:status" "wwan1"
|
||||
;;
|
||||
z8109ax-512m|\
|
||||
z8109ax-128m)
|
||||
ucidef_set_led_netdev "modem1" "modem1" "modem1:status" "wwan0"
|
||||
ucidef_set_led_netdev "modem2" "modem2" "modem2:status" "wwan1"
|
||||
ucidef_set_led_netdev "modem3" "modem3" "modem3:status" "wwan2"
|
||||
ucidef_set_led_netdev "modem4" "modem4" "modem4:status" "wwan3"
|
||||
;;
|
||||
zbtlink,zbt-z8103ax)
|
||||
ucidef_set_led_netdev "wan" "wan" "green:wan" "eth1" "link tx rx"
|
||||
;;
|
||||
|
|
|
@ -58,7 +58,9 @@ mediatek_setup_interfaces()
|
|||
glinet,gl-mt6000|\
|
||||
tplink,tl-xdr4288|\
|
||||
tplink,tl-xdr6088|\
|
||||
tplink,tl-xtr8488)
|
||||
tplink,tl-xtr8488|\
|
||||
z8109ax-512m|\
|
||||
z8109ax-128m)
|
||||
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5" eth1
|
||||
;;
|
||||
bananapi,bpi-r3)
|
||||
|
|
|
@ -20,6 +20,17 @@ z8102ax-128m)
|
|||
ucidef_add_gpio_switch "sim1" "SIM 1" "sim1" "0"
|
||||
ucidef_add_gpio_switch "sim2" "SIM 2" "sim2" "0"
|
||||
;;
|
||||
z8109ax-512m|\
|
||||
z8109ax-128m)
|
||||
ucidef_add_gpio_switch "modem1" "Power 1st modem" "modem1" "1"
|
||||
ucidef_add_gpio_switch "modem2" "Power 2nd modem" "modem2" "1"
|
||||
ucidef_add_gpio_switch "modem3" "Power 3th modem" "modem3" "1"
|
||||
ucidef_add_gpio_switch "modem4" "Power 4th modem" "modem4" "1"
|
||||
ucidef_add_gpio_switch "sim1" "SIM 1" "sim1" "0"
|
||||
ucidef_add_gpio_switch "sim2" "SIM 2" "sim2" "0"
|
||||
ucidef_add_gpio_switch "sim3" "SIM 3" "sim3" "0"
|
||||
ucidef_add_gpio_switch "sim4" "SIM 4" "sim4" "0"
|
||||
;;
|
||||
esac
|
||||
|
||||
board_config_flush
|
||||
|
|
|
@ -118,6 +118,8 @@ case "$board" in
|
|||
zbtlink,zbt-z8102ax|\
|
||||
z8102ax-128m|\
|
||||
z8102ax-64m|\
|
||||
z8109ax-512m|\
|
||||
z8109ax-128m|\
|
||||
zbtlink,zbt-z8103ax|\
|
||||
zyxel,ex5601-t0|\
|
||||
zyxel,ex5601-t0-ubootmod)
|
||||
|
|
|
@ -1580,3 +1580,36 @@ define Device/z8102ax-128m
|
|||
IMAGE_SIZE := 131072k
|
||||
endef
|
||||
TARGET_DEVICES += z8102ax-128m
|
||||
|
||||
define Device/z8109ax
|
||||
DEVICE_VENDOR := ZBT
|
||||
DEVICE_MODEL := Z8109AX
|
||||
# DEVICE_DTS := mt7981b-zbt-z8102ax
|
||||
DEVICE_DTS_DIR := ../dts
|
||||
DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
|
||||
KERNEL_IN_UBI := 1
|
||||
UBINIZE_OPTS := -E 5
|
||||
BLOCKSIZE := 128k
|
||||
PAGESIZE := 2048
|
||||
ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
|
||||
ARTIFACTS := initramfs-factory.ubi
|
||||
ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
|
||||
endif
|
||||
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
||||
endef
|
||||
|
||||
define Device/z8109ax-512m
|
||||
$(call Device/z8109ax)
|
||||
DEVICE_VARIANT := 512 NAND
|
||||
DEVICE_DTS := mt7981b-zbt-z8109ax-512m
|
||||
IMAGE_SIZE := 524288k
|
||||
endef
|
||||
TARGET_DEVICES += z8109ax-512m
|
||||
|
||||
define Device/z8109ax-128m
|
||||
$(call Device/z8109ax)
|
||||
DEVICE_VARIANT := 128 NAND
|
||||
DEVICE_DTS := mt7981b-zbt-z8109ax-128m
|
||||
IMAGE_SIZE := 131072k
|
||||
endef
|
||||
TARGET_DEVICES += z8109ax-128m
|
||||
|
|
16
config-z8109ax_128m
Normal file
16
config-z8109ax_128m
Normal file
|
@ -0,0 +1,16 @@
|
|||
CONFIG_TARGET_mediatek=y
|
||||
CONFIG_TARGET_mediatek_filogic=y
|
||||
CONFIG_TARGET_mediatek_filogic_DEVICE_z8109ax-128m=y
|
||||
CONFIG_KERNEL_ARM64_MODULE_PLTS=y
|
||||
CONFIG_KERNEL_TCP_CONG_BBR2=y
|
||||
CONFIG_PACKAGE_z8102=y
|
||||
CONFIG_PACKAGE_kmod-mt76=y
|
||||
CONFIG_TARGET_ROOTFS_PARTSIZE=128
|
||||
CONFIG_TARGET_INITRAMFS_COMPRESSION_NONE=y
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_GZIP is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_BZIP2 is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZMA is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZO is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZ4 is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_XZ is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_ZSTD is not set
|
16
config-z8109ax_512m
Normal file
16
config-z8109ax_512m
Normal file
|
@ -0,0 +1,16 @@
|
|||
CONFIG_TARGET_mediatek=y
|
||||
CONFIG_TARGET_mediatek_filogic=y
|
||||
CONFIG_TARGET_mediatek_filogic_DEVICE_z8109ax-512m=y
|
||||
CONFIG_KERNEL_ARM64_MODULE_PLTS=y
|
||||
CONFIG_KERNEL_TCP_CONG_BBR2=y
|
||||
CONFIG_PACKAGE_z8102=y
|
||||
CONFIG_PACKAGE_kmod-mt76=y
|
||||
CONFIG_TARGET_ROOTFS_PARTSIZE=512
|
||||
CONFIG_TARGET_INITRAMFS_COMPRESSION_NONE=y
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_GZIP is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_BZIP2 is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZMA is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZO is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_LZ4 is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_XZ is not set
|
||||
# CONFIG_TARGET_INITRAMFS_COMPRESSION_ZSTD is not set
|
Loading…
Reference in a new issue