openwrt/target/linux
Bernardus Jansen 6da7352ebe ath79: add support for Fortinet FAP-221-C
FCC ID: TVE-121402

Fortinet FAP-221-C is an indoor access point with 1gb ethernet port,
dual-band wireless, internal antenna plates, and 802.3at PoE+.

Hardware and board design are from Senao. The device appears very
similar to the EnGenius EAP1200H, albeit with double the flash and RAM.

**Specifications:**

  - QCA9557 SOC
  - QCA9882 WLAN PCI card, 5 GHz, 2x2, 26dBm
  - AR8035-A PHY RGMII GbE with PoE+ IN
  - 40 MHz clock
  - 32 MB FLASH FL256SAIFR0
  - 2x 128 MB RAM NT5TU64M16HG
  - UART populated
  - 4 internal antenna plates
  - 5 LEDs, 1 button (power, 'warning', eth0, wifi1, wifi2) (reset)

  Amber LAN LED appears hardwired to ethernet port. Power LED is green
only. Other LEDs are amber/green.

**MAC addresses:**

1 MAC Address in flash at end of uboot
ASCII encoded, no delimiters
Labeled as "MAC Address" on case

**Serial Access:**

Pinout: (arrow) VCC GND RX TX

Pins are populated with a header and traces not blocked.
Bootloader is set to 9600 baud, 8 data, 1 stop.

**Console Access:**

Bootloader:

Interrupt boot with Ctrl+C
Press "k" and enter password "1"
OR
Hold reset button for 5 sec during power on
Interrupt the TFTP transfer with Ctrl+C

to print commands available, enter "help"

OEM:

default username is "admin", password blank
telnet is available at default address 192.168.1.2
serial is available with baud 9600

to print commands available, enter "help"
or tab-tab (busybox list of commands)

**Installation:**

Use factory.bin with OEM upgrade procedures
OR
Use initramfs.bin with uboot TFTP commands.
Then perform a sysupgrade with sysupgrade.bin

**TFTP Recovery:**

Using serial console, load initramfs.bin using TFTP
to boot openwrt without touching the flash.

**Return to OEM:**

The best way to return to OEM firmware
is to have a copy of the MTD partitions
before flashing Openwrt.

Backup copies should be made of partitions
"fwconcat0", "loader", and "fwconcat1"
which together is the same flash range
as OEM's "rootfs" and "uimage"
by loading an initramfs.bin
and using LuCI to download the mtdblocks.

It is also possible to extract from the
OEM firmware upgrade image by splitting it up
in parts of lengths that correspond
to the partitions in openwrt
and write them to flash,
after gzip decompression.

After writing to the firmware partitions,
erase the "reserved" partition and reboot.

Signed-off-by: Bernardus Jansen <bernardus@bajansen.nl>
Link: https://github.com/openwrt/openwrt/pull/18109
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-03-09 19:57:26 +01:00
..
airoha airoha: drop MTD Airoha parser patch 2025-03-05 00:04:36 +01:00
apm821xx apm821xx: NETGEAR WNDR4700: Fix compat version 2025-01-27 23:36:32 +01:00
archs38 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
armsr armsr: add Hyper-V on Arm64 support 2025-01-24 22:19:34 +01:00
at91 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
ath79 ath79: add support for Fortinet FAP-221-C 2025-03-09 19:57:26 +01:00
bcm27xx kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
bcm47xx kernel: bump 6.6 to 6.6.78 2025-02-20 19:27:57 +01:00
bcm53xx linux: use packages kmod-hci-uart and kmod-btusb instead of kmod-bluetooth 2025-02-24 00:08:42 +01:00
bcm4908 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
bmips bmips: shg2500: add missing led controller cells 2025-01-28 08:30:10 +01:00
d1 generic: globally enable CONFIG_PCPU_DEV_REFCNT 2025-03-08 11:33:56 +01:00
gemini gemini: Convert to use module for Realtek switch 2025-02-14 00:34:16 +01:00
generic kernel: Add KERNEL_DCB (Data Center Bridging) 2025-03-09 17:05:26 +01:00
imx imx: cortexa53: fix sysupgrade image device support for venice 2025-02-16 16:46:51 +01:00
ipq40xx kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
ipq806x ipq806x: make use of ASCII env NVMEM driver for Linksys EAX devices 2025-02-03 01:54:26 +01:00
ixp4xx ixp4xx: Break out mv88e6060 DSA switch to package 2025-01-02 02:30:24 +01:00
kirkwood kirkwood: Make the Marvell DSA switch a module 2024-12-16 22:03:05 +01:00
lantiq lantiq: xrx200_legacy: migrate ECI V-2FUb/R to upstream PHY LED control 2025-03-08 20:26:03 +01:00
layerscape kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
loongarch64 kernel: Add KERNEL_DCB (Data Center Bridging) 2025-03-09 17:05:26 +01:00
malta kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
mediatek mediatek: add support for CMCC A10 2025-03-08 15:44:56 +01:00
mpc85xx kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
mvebu mvebu/image/cortexa53.mk: add kmod-dsa-mv88e6xxx 2025-03-07 14:01:51 +01:00
mxs mxs: adapt default package list for Duckbill devices 2025-02-05 22:00:09 +01:00
octeon octeon/generic: ubnt,erlite: define profile 2025-02-16 16:06:10 +01:00
omap kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
pistachio kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
qoriq qoriq: Switch to use a module for mv88e6xxx 2025-01-26 22:07:44 +01:00
qualcommax qualcommax: fap650: fix dtc warnings on partitions 2025-03-07 14:03:12 +01:00
qualcommbe kernel: bump 6.6 to 6.6.78 2025-02-20 19:27:57 +01:00
ramips ramips: Add support for Cudy M1300 v2 2025-03-09 16:51:26 +01:00
realtek realtek: Drop redundant LED labels 2025-02-28 16:30:29 +01:00
rockchip kernel: bump 6.6 to 6.6.76 2025-02-13 00:03:54 +01:00
sifiveu kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
siflower siflower: move soruce-only flag to sf19a2890 subtarget 2025-02-05 11:12:42 +08:00
starfive kernel: bump 6.6 to 6.6.79 2025-02-23 12:17:38 +01:00
stm32 generic: globally enable CONFIG_PCPU_DEV_REFCNT 2025-03-08 11:33:56 +01:00
sunxi sunxi: enable usbgadget feature 2025-02-22 18:43:23 +01:00
tegra kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
uml uml: fix glibc-static check with GCC14 2024-06-22 22:06:06 +02:00
x86 kernel: Add KERNEL_DCB (Data Center Bridging) 2025-03-09 17:05:26 +01:00
zynq kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00