immortalwrt/target/linux
Michael Pratt c70655e28f
ath79: add support for Senao Engenius ECB1200
FCC ID: A8J-ECB1200

Engenius ECB1200 is an indoor wireless access point with a GbE port,
2.4 GHz and 5 GHz wireless, external antennas, and 802.3af PoE.

**Specification:**

  - QCA9557 SOC			MIPS, 2.4 GHz (2x2)
  - QCA9882 WLAN		PCIe card, 5 GHz (2x2)
  - AR8035-A switch		RGMII, GbE with 802.3af PoE, 25 MHz clock
  - 40 MHz reference clock
  - 16 MB FLASH			25L12845EMI-10G
  - 2x 64 MB RAM		1538ZFZ V59C1512164QEJ25
  - UART at JP1			(unpopulated, RX shorted to ground)
  - 4 external antennas
  - 4 LEDs, 1 button		(power, eth, wifi2g, wifi5g) (reset)

**MAC addresses:**

  MAC Addresses are labeled as ETH and 5GHZ
  U-boot environment has the vendor MAC addresses
  MAC addresses in ART do not match vendor

  eth0	ETH	*:5c	u-boot-env ethaddr
  phy0	5GHZ	*:5d	u-boot-env athaddr
  ----	----	????	art 0x0/0x6

**Installation:**

  Method 1: Firmware upgrade page:

  OEM webpage at 192.168.1.1
  username and password "admin"
  Navigate to "Firmware" page from left pane
  Click Browse and select the factory.bin image
  Upload and verify checksum
  Click Continue to confirm and wait 3 minutes

  Method 2: Serial to load Failsafe webpage:

  After connecting to serial console and rebooting...
  Interrupt uboot with any key pressed rapidly

  (see TFTP recovery)
  perform a sysupgrade

**Serial Access:**

  the RX line on the board for UART is shorted to ground by resistor R176
  therefore it must be removed to use the console
  but it is not necessary to remove to view boot log
  optionally, R175 can be replaced with a solder bridge short

  the resistors R175 and R176 are next to the UART pinout at JP1

**Return to OEM:**

  If you have a serial cable, see Serial Failsafe instructions

  Unlike most Engenius boards, this does not have a 'failsafe' image
  the only way to return to OEM is TFTP or serial access to u-boot

**TFTP recovery:**

  Unlike most Engenius boards, TFTP is reliable here

  rename initramfs-kernel.bin to 'ap.bin'
  make the file available on a TFTP server at 192.168.1.10
  power board while holding or pressing reset button repeatedly

  or with serial access:
  run `tftpboot` or `run factory_boot` with initramfs-kernel.bin
  then `bootm` with the load address

**Format of OEM firmware image:**

  The OEM software of ECB1200 is a heavily modified version
  of Openwrt Altitude Adjustment 12.09.

  This Engenius board, like ECB1750, uses a proprietary header
  with a unique Product ID. The header for factory.bin is
  generated by the mksenaofw program included in openwrt.

**Note on PLL-data cells:**

  The default PLL register values will not work
  because of the AR8035 switch between
  the SOC and the ethernet port.

  For QCA955x series, the PLL registers for eth0 and eth1
  can be see in the DTSI as 0x28 and 0x48 respectively.
  Therefore the PLL registers can be read from uboot
  for each link speed after attempting tftpboot
  or another network action using that link speed
  with `md 0x18050028 1` and `md 0x18050048 1`.

  However the registers that u-boot sets are not ideal and sometimes wrong...
  the at803x driver supports setting the RGMII clock/data delay on the PHY side.
  This way the pll-data register only needs to handle invert and phase.

  for this board clock invert is needed on the MAC side
  all link speeds functional

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2021-01-09 16:26:53 +08:00
..
apm821xx apm821xx: Netgear WNDR4700 limit kernel lzma dictionary 2020-12-23 11:52:12 +08:00
arc770 treewide: remove support for kernel 4.x 2020-10-31 11:39:45 +08:00
archs38 treewide: remove support for kernel 4.x 2020-10-31 11:39:45 +08:00
armvirt Merge Mainline 2020-12-17 23:24:15 +08:00
at91 kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
ath25 kernel: bump 5.4 to 5.4.86 2021-01-02 12:00:30 +08:00
ath79 ath79: add support for Senao Engenius ECB1200 2021-01-09 16:26:53 +08:00
bcm27xx kernel: bump 5.4 to 5.4.87 2021-01-09 11:09:29 +08:00
bcm47xx kernel: bump 5.4 to 5.4.86 2021-01-02 12:00:30 +08:00
bcm53xx kernel: bump 5.4 to 5.4.86 2021-01-02 12:00:30 +08:00
bcm63xx kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
gemini treewide: remove support for kernel 4.x 2020-10-31 11:39:45 +08:00
generic kernel: bump 5.4 to 5.4.87 2021-01-09 11:09:29 +08:00
imx6 imx6: disable unrequired pcie host driver 2021-01-08 16:10:48 +08:00
ipq40xx kernel: bump 5.4 to 5.4.86 2021-01-02 12:00:30 +08:00
ipq806x kernel: bump 5.4 to 5.4.86 2021-01-02 12:00:30 +08:00
ipq807x kernel: add disabled PROC_STRIPPED 2020-12-28 11:19:07 +08:00
kirkwood kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
lantiq kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
layerscape treewide: fix sysupgrade vars 2021-01-07 14:52:01 +08:00
malta treewide: remove support for kernel 4.x 2020-10-31 11:39:45 +08:00
mediatek treewide: fix sysupgrade vars 2021-01-07 14:52:01 +08:00
mpc85xx kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
mvebu treewide: fix sysupgrade vars 2021-01-07 14:52:01 +08:00
mxs treewide: remove support for kernel 4.x 2020-10-31 11:39:45 +08:00
octeon kernel: bump 5.4 to 5.4.75 2020-11-12 11:14:24 +08:00
octeontx treewide: remove support for kernel 4.x 2020-10-31 11:39:45 +08:00
omap kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
oxnas oxnas: now longer build KD20 factory image 2020-12-24 11:39:51 +08:00
pistachio kernel: move some disabled symbols to generic 2020-12-23 11:33:15 +08:00
ramips kernel: bump 5.4 to 5.4.87 2021-01-09 11:09:29 +08:00
realtek realtek: add support for ZyXEL GS1900-8HP v1 and v2 2021-01-09 16:19:46 +08:00
rockchip rockchip: refresh upstream patch 2021-01-08 15:41:06 +08:00
sunxi rockchip/sunxi: kernel: adjust default coherent_pool to 2MiB 2021-01-02 13:29:03 +08:00
tegra tegra: image: remove unnecessary assumptions from bootscript 2020-12-23 11:25:09 +08:00
uml kernel: bump to 4.9.240, 4.14.202, 4.19.152 2020-10-17 19:46:46 +08:00
x86 x86: enable CONFIG_MMC_SDHCI_ACPI for x86_64 2020-12-05 17:19:19 +08:00
zynq kernel: add disabled PROC_STRIPPED 2020-12-28 11:19:07 +08:00
Makefile build: add 'make kernel_xconfig' command 2020-07-09 12:03:26 +08:00