diff options
author | Piotr Dymacz <pepe2k@gmail.com> | 2020-08-19 16:01:25 +0200 |
---|---|---|
committer | Piotr Dymacz <pepe2k@gmail.com> | 2020-09-28 01:28:37 +0200 |
commit | e9263123f9f65814b8858efb5b79d58fe05ca732 (patch) | |
tree | 7d4cb83709b37e907240c700a520a73a7b4b27d0 | |
parent | b33ce8c5355eec61663ce0ac789118f82041045f (diff) | |
download | openwrt-e9263123f9f65814b8858efb5b79d58fe05ca732.tar.gz openwrt-e9263123f9f65814b8858efb5b79d58fe05ca732.tar.bz2 openwrt-e9263123f9f65814b8858efb5b79d58fe05ca732.zip |
ath79: add support for Hak5 WiFi Pineapple NANO
Hak5 WiFi Pineapple NANO is an "USB dongle" device dedicated for Wi-Fi
pentesters. This device is based on Atheros AR9331 and AR9271. Support
for it was first introduced in 950b278c81 (ar71xx). FCC ID: 2AB87-NANO.
Specifications:
- Atheros AR9331
- 400/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR1)
- 16 MB of flash (SPI NOR)
- 1T1R 2.4 GHz Wi-Fi (AR9331)
- 1T1R 2.4 GHz Wi-Fi (AR9271L), with ext. PA and LNA (Qorvo RFFM4203)
- 2x RP-SMA antenna connectors
- 1x USB 2.0 to 10/100 Ethernet bridge (ASIX AX88772A)
- integrated 4-port USB 2.0 HUB: Alcor Micro AU6259:
- 1x USB 2.0
- 1x microSD card reader (Genesys Logic GL834L)
- Atheros AR9271L
- 1x LED, 1x button
- UART (4-pin, 2 mm pitch) header on PCB
- USB 2.0 Type-A plug for power and AX88772A
Flash instruction:
You can use sysupgrade image directly in vendor firmware which is based
on OpenWrt/LEDE.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
-rw-r--r-- | target/linux/ath79/dts/ar9331_hak5_wifi-pineapple-nano.dts | 128 | ||||
-rwxr-xr-x | target/linux/ath79/generic/base-files/etc/board.d/02_network | 1 | ||||
-rw-r--r-- | target/linux/ath79/image/generic.mk | 13 |
3 files changed, 142 insertions, 0 deletions
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 <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> + +/ { + 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 = <KEY_RESTART>; + 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 |