diff --git a/target/linux/ath79/dts/ar9331_hak5_wifi-pineapple-nano.dts b/target/linux/ath79/dts/ar9331_hak5_wifi-pineapple-nano.dts new file mode 100644 index 0000000000..0a9cf9566f --- /dev/null +++ b/target/linux/ath79/dts/ar9331_hak5_wifi-pineapple-nano.dts @@ -0,0 +1,128 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "ar9331.dtsi" + +#include +#include + +/ { + model = "Hak5 WiFi Pineapple NANO"; + compatible = "hak5,wifi-pineapple-nano", "qca,ar9331"; + + aliases { + label-mac-device = &wmac; + led-boot = &led_system; + led-failsafe = &led_system; + led-upgrade = &led_system; + serial0 = &uart; + }; + + gpio-export { + compatible = "gpio-export"; + #size-cells = <0>; + + microsd-detect { + gpio-export,name = "microsd-detect"; + gpios = <&gpio 19 GPIO_ACTIVE_LOW>; + }; + + usb-alarm { + gpio-export,name = "usb-alarm"; + gpios = <&gpio 20 GPIO_ACTIVE_LOW>; + }; + + usb-power { + gpio-export,name = "usb-power"; + gpio-export,output = <0>; + gpios = <&gpio 23 GPIO_ACTIVE_LOW>; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 12 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + + leds { + compatible = "gpio-leds"; + + led_system: system { + label = "wifi-pineapple-nano:blue:system"; + gpios = <&gpio 18 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + }; +}; + +ð0 { + status = "okay"; + + mtd-mac-address = <&art 0x6>; +}; + +ð1 { + status = "okay"; + + compatible = "syscon", "simple-mfd"; +}; + +&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>; + + partition@0 { + label = "u-boot"; + reg = <0x000000 0x020000>; + read-only; + }; + + partition@20000 { + label = "firmware"; + reg = <0x020000 0xfd0000>; + compatible = "tplink,firmware"; + }; + + art: partition@ff0000 { + label = "art"; + reg = <0xff0000 0x010000>; + read-only; + }; + }; + }; +}; + +&uart { + status = "okay"; +}; + +&usb { + status = "okay"; +}; + +&usb_phy { + status = "okay"; +}; + +&wmac { + status = "okay"; + + mtd-cal-data = <&art 0x1000>; +}; 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 89795031e0..5d23e0589e 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 @@ -30,6 +30,7 @@ ath79_setup_interfaces() engenius,ecb1750|\ enterasys,ws-ap3705i|\ glinet,gl-ar300m-lite|\ + hak5,wifi-pineapple-nano|\ meraki,mr16|\ netgear,ex6400|\ netgear,ex7300|\ diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk index a5f282be9b..c0aacd7ff9 100644 --- a/target/linux/ath79/image/generic.mk +++ b/target/linux/ath79/image/generic.mk @@ -1045,6 +1045,19 @@ define Device/hak5_packet-squirrel endef TARGET_DEVICES += hak5_packet-squirrel +define Device/hak5_wifi-pineapple-nano + $(Device/tplink-16mlzma) + SOC := ar9331 + DEVICE_VENDOR := Hak5 + DEVICE_MODEL := WiFi Pineapple NANO + TPLINK_HWID := 0x4e414e4f + IMAGES := sysupgrade.bin + DEVICE_PACKAGES := kmod-ath9k-htc kmod-usb-chipidea2 kmod-usb-storage \ + -swconfig -uboot-envtools + SUPPORTED_DEVICES += wifi-pineapple-nano +endef +TARGET_DEVICES += hak5_wifi-pineapple-nano + define Device/iodata_etg3-r SOC := ar9342 DEVICE_VENDOR := I-O DATA