diff --git a/target/linux/ath79/dts/ar9331_hak5_lan-turtle.dts b/target/linux/ath79/dts/ar9331_hak5_lan-turtle.dts new file mode 100644 index 0000000000..e6f083482f --- /dev/null +++ b/target/linux/ath79/dts/ar9331_hak5_lan-turtle.dts @@ -0,0 +1,120 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "ar9331.dtsi" + +#include +#include + +/ { + model = "Hak5 LAN Turtle"; + compatible = "hak5,lan-turtle", "qca,ar9331"; + + aliases { + led-boot = &led_system; + led-failsafe = &led_system; + led-upgrade = &led_system; + serial0 = &uart; + }; + + keys { + compatible = "gpio-keys"; + + pinctrl-names = "default"; + pinctrl-0 = <&enable_gpio11>; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 11 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + + leds { + compatible = "gpio-leds"; + + pinctrl-names = "default"; + pinctrl-0 = <&switch_led_disable_pins>; + + led_system: system { + label = "lan-turtle:orange:system"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + }; + }; +}; + +ð0 { + status = "okay"; + + mtd-mac-address = <&uboot 0x1fc00>; + mtd-mac-address-increment = <(-1)>; + + gmac-config { + device = <&gmac>; + + switch-phy-addr-swap = <1>; + switch-phy-swap = <1>; + }; +}; + +ð1 { + status = "okay"; + + mtd-mac-address = <&uboot 0x1fc00>; + mtd-mac-address-increment = <1>; +}; + +&pinmux { + enable_gpio11: pinmux_enable_gpio11 { + pinctrl-single,bits = <0x0 0x0 0x4>; + }; +}; + +&spi { + status = "okay"; + + num-cs = <1>; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <50000000>; + m25p,fast-read; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + uboot: partition@0 { + label = "u-boot"; + reg = <0x000000 0x020000>; + read-only; + }; + + partition@20000 { + label = "firmware"; + reg = <0x020000 0xfd0000>; + compatible = "tplink,firmware"; + }; + + partition@ff0000 { + label = "art"; + reg = <0xff0000 0x010000>; + read-only; + }; + }; + }; +}; + +&uart { + status = "okay"; +}; + +&usb { + status = "okay"; +}; + +&usb_phy { + status = "okay"; +}; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds index e208ac65f4..9f6fd00031 100755 --- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds @@ -205,6 +205,9 @@ glinet,gl-mifi) glinet,gl-x750) ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth1" ;; +hak5,lan-turtle) + ucidef_set_led_netdev "wan" "WAN" "$boardname:orange:system" "eth1" + ;; meraki,mr16) ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0" ;; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network index c962170710..3572afa5fd 100755 --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network @@ -503,6 +503,9 @@ ath79_setup_macs() enterasys,ws-ap3705i) label_mac=$(mtd_get_mac_ascii u-boot-env0 ethaddr) ;; + hak5,lan-turtle) + label_mac=$(mtd_get_mac_binary u-boot 0x1fc00) + ;; iodata,etg3-r) lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr) wan_mac=$(macaddr_add "$lan_mac" -1) diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk index b5af99971d..25d0f5b8ba 100644 --- a/target/linux/ath79/image/generic.mk +++ b/target/linux/ath79/image/generic.mk @@ -1019,6 +1019,19 @@ define Device/glinet_gl-x750 endef TARGET_DEVICES += glinet_gl-x750 +define Device/hak5_lan-turtle + $(Device/tplink-16mlzma) + SOC := ar9331 + DEVICE_VENDOR := Hak5 + DEVICE_MODEL := LAN Turtle + TPLINK_HWID := 0x5348334c + IMAGES := sysupgrade.bin + DEVICE_PACKAGES := kmod-usb-chipidea2 -iwinfo -kmod-ath9k -swconfig \ + -uboot-envtools -wpad-basic-wolfssl + SUPPORTED_DEVICES += lan-turtle +endef +TARGET_DEVICES += hak5_lan-turtle + define Device/iodata_etg3-r SOC := ar9342 DEVICE_VENDOR := I-O DATA