mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-29 01:59:02 +00:00
819e7946b0
The Linksys EA8300 is based on QCA4019 and QCA9888 and provides three, independent radios. NAND provides two, alternate kernel/firmware images with fail-over provided by the OEM U-Boot. Installation: "Factory" images may be installed directly through the OEM GUI. Hardware Highlights: * IPQ4019 at 717 MHz (4 CPUs) * 256 MB NAND (Winbond W29N02GV, 8-bit parallel) * 256 MB RAM * Three, fully-functional radios; `iw phy` reports (FCC/US, -CT): * 2.4 GHz radio at 30 dBm * 5 GHz radio on ch. 36-64 at 23 dBm * 5 GHz radio on ch. 100-144 at 23 dBm (DFS), 149-165 at 30 dBm #{ managed } <= 16, #{ AP, mesh point } <= 16, #{ IBSS } <= 1 * All two-stream, MCS 0-9 * 4x GigE LAN, 1x GigE Internet Ethernet jacks with port lights * USB3, single port on rear with LED * WPS and reset buttons * Four status lights on top * Serial pads internal (unpopulated) "Linksys Dallas WiFi AP router based on Qualcomm AP DK07.1-c1" Implementation Notes: The OEM flash layout is preserved at this time with 3 MB kernel and ~69 MB UBIFS for each firmware version. The sysdiag (1 MB) and syscfg (56 MB) partitions are untouched, available as read-only. Serial Connectivity: Serial connectivity is *not* required to flash. Serial may be accessed by opening the device and connecting a 3.3-V adapter using 115200, 8n1. U-Boot access is good, including the ability to load images over TFTP and either run or flash them. Looking at the top of the board, from the front of the unit, J3 can be found on the right edge of the board, near the rear | J3 | |-| | |O| | (3.3V seen, open-circuit) |O| | TXD |O| | RXD |O| | |O| | GND |-| | | Unimplemented: * serial1 "ttyQHS0" (serial0 works as console) * Bluetooth; Qualcomm CSR8811 (potentially conected to serial1) Other Notes: https://wikidevi.com/wiki/Linksys_EA8300 states FCC docs also cover the Linksys EA8250. According to the RF Test Report BT BR+EDR, "All models are identical except for the EA8300 supports 256QAM and the EA8250 disable 256QAM." Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
109 lines
3.5 KiB
Makefile
109 lines
3.5 KiB
Makefile
include $(TOPDIR)/rules.mk
|
|
include $(INCLUDE_DIR)/version.mk
|
|
|
|
PKG_NAME:=ipq-wifi
|
|
PKG_RELEASE:=1
|
|
PKG_FLAGS:=nonshared
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Build/Prepare
|
|
mkdir -p $(PKG_BUILD_DIR)
|
|
endef
|
|
|
|
define Build/Compile
|
|
endef
|
|
|
|
#
|
|
# This is intended to be used on an interim basis until device-specific
|
|
# board data for new devices is available through the upstream compilation
|
|
#
|
|
# Please send a mail with your device-specific board files upstream.
|
|
# You can find instructions and examples on the linux-wireless wiki:
|
|
# <https://wireless.wiki.kernel.org/en/users/drivers/ath10k/boardfiles>
|
|
#
|
|
|
|
ALLWIFIBOARDS:= \
|
|
alfa-network_ap120c-ac \
|
|
asus_map-ac2200 \
|
|
avm_fritzbox-7530 \
|
|
avm_fritzrepeater-3000 \
|
|
engenius_eap1300 \
|
|
engenius_ens620ext \
|
|
linksys_ea6350v3 \
|
|
linksys_ea8300 \
|
|
qxwlan_e2600ac
|
|
|
|
ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD))
|
|
|
|
define Package/ipq-wifi-default
|
|
SUBMENU:=ath10k Board-Specific Overrides
|
|
SECTION:=firmware
|
|
CATEGORY:=Firmware
|
|
DEPENDS:=@TARGET_ipq40xx
|
|
TITLE:=Custom Board
|
|
endef
|
|
|
|
define ipq-wifi-install-one-to
|
|
$(INSTALL_DIR) $(2)/lib/firmware/ath10k/$(3)/
|
|
$(INSTALL_DATA) $(1) $(2)/lib/firmware/ath10k/$(3)/board-2.bin
|
|
endef
|
|
|
|
# Note: .bin deprecated; supports existing boards
|
|
|
|
define ipq-wifi-install-one
|
|
$(if $(filter $(suffix $(1)),.QCA4019 .qca4019 .bin),\
|
|
$(call ipq-wifi-install-one-to,$(1),$(2),QCA4019/hw1.0),\
|
|
$(if $(filter $(suffix $(1)),.QCA9888 .qca9888),\
|
|
$(call ipq-wifi-install-one-to,$(1),$(2),QCA9888/hw2.0),\
|
|
$(if $(filter $(suffix $(1)),.QCA9984 .qca9984),\
|
|
$(call ipq-wifi-install-one-to,$(1),$(2),QCA9984/hw1.0),\
|
|
$(error Unrecognized board-file suffix '$(suffix $(1))' for '$(1)')\
|
|
)))
|
|
|
|
endef
|
|
# Blank line required at end of above define due to foreach context
|
|
|
|
define generate-ipq-wifi-package
|
|
define Package/ipq-wifi-$(1)
|
|
$(call Package/ipq-wifi-default)
|
|
TITLE:=board-2.bin Overrides for $(2)
|
|
CONFLICTS:=$(PREV_BOARD)
|
|
endef
|
|
|
|
define Package/ipq-wifi-$(1)/description
|
|
The $(2) requires board-specific, reference ("cal") data
|
|
that is not yet present in the upstream wireless firmware distribution.
|
|
|
|
This package supplies board-2.bin file(s) that, in the interim,
|
|
overwrite those supplied by the ath10k-firmware-* packages.
|
|
|
|
This is package is only necessary for the $(2).
|
|
|
|
Do not install it for any other device!
|
|
endef
|
|
|
|
define Package/ipq-wifi-$(1)/install-overlay
|
|
$$$$(foreach IPQ_WIFI_BOARD_FILE,$$$$(wildcard board-$(1).*),\
|
|
$$$$(call ipq-wifi-install-one,$$$$(IPQ_WIFI_BOARD_FILE),$$(1)))
|
|
endef
|
|
|
|
PREV_BOARD+=ipq-wifi-$(1)
|
|
endef
|
|
|
|
# Add board name to ALLWIFIBOARDS
|
|
# Place files in this directory as board-<devicename>.<qca4019|qca9888|qca9984>
|
|
# Add $(eval $(call generate-ipq-wifi-package,<devicename>,<display name>))
|
|
|
|
$(eval $(call generate-ipq-wifi-package,alfa-network_ap120c-ac,ALFA Network AP120C-AC))
|
|
$(eval $(call generate-ipq-wifi-package,asus_map-ac2200,ASUS MAP-AC2200))
|
|
$(eval $(call generate-ipq-wifi-package,avm_fritzbox-7530,AVM FRITZ!Box 7530))
|
|
$(eval $(call generate-ipq-wifi-package,avm_fritzrepeater-3000,AVM FRITZ!Repeater 3000))
|
|
$(eval $(call generate-ipq-wifi-package,engenius_eap1300,EnGenius EAP1300))
|
|
$(eval $(call generate-ipq-wifi-package,engenius_ens620ext,EnGenius ENS620EXT))
|
|
$(eval $(call generate-ipq-wifi-package,linksys_ea6350v3,Linksys EA6350v3))
|
|
$(eval $(call generate-ipq-wifi-package,linksys_ea8300,Linksys EA8300))
|
|
$(eval $(call generate-ipq-wifi-package,qxwlan_e2600ac,Qxwlan E2600AC))
|
|
|
|
$(foreach PACKAGE,$(ALLWIFIPACKAGES),$(eval $(call BuildPackage,$(PACKAGE))))
|