- [x] must be flashable from vendor firmware
  - [ ] webinterface
  - [ ] tftp
  - [x] other: Console port available. Manufacturer specific cable required.
        Tutorial in OpenWRT commit message https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=c6e972c8772a628a1a2f2e5590d7c6f4acef9ab0
- [x] must support upgrade mechanism
  - [x] must have working sysupgrade
    - [x] must keep/forget configuration (if applicable)
      *think `sysupgrade [-n]` or `firstboot`*
  - [x] must have working autoupdate
        root@Aruba-AP-303H:~# lua -e 'print(require("platform_info").get_image_name())'
        aruba-ap-303h
- [x] reset/wps/phone button must return device into config mode
- [x] primary mac should match address on device label (or packaging) (https://gluon.readthedocs.io/en/latest/dev/hardware.html#notes)
- wired network
  - [x] should support all network ports on the device
  - [x] must have correct port assignment (WAN/LAN)
- wifi (if applicable)
  - [x] association with AP must be possible on all radios
  - [x] association with 802.11s mesh must be working on all radios
  - [x] ap/mesh mode must work in parallel on all radios
- led mapping
  - power/sys led (_critical, because led definitions are setup on firstboot only_)
    - [x] lit while the device is on
    - [x] should display config mode blink sequence
(https://gluon.readthedocs.io/en/latest/features/configmode.html)
  - radio leds
    - [x] should map to their respective radio
    - [x] should show activity
  - switchport leds
    - [x] should map to their respective port (or switch, if only one led present)
    - [x] should show link state and activity
- outdoor devices only
  - [ ] added board name to `is_outdoor_device` function in `package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua`
- ToDo (upstream):
  - enable PoE pass through on interface E3
        system.poe_passthrough=gpio_switch
        system.poe_passthrough.name='PoE Passthrough'
        system.poe_passthrough.gpio_pin='446'
        system.poe_passthrough.value='0' (0 is active)
		
	
			
		
			
				
	
	
		
			130 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			130 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| local ATH10K_PACKAGES_IPQ40XX = {
 | |
| 	'kmod-ath10k',
 | |
| 	'-kmod-ath10k-ct',
 | |
| 	'-kmod-ath10k-ct-smallbuffers',
 | |
| 	'ath10k-firmware-qca4019',
 | |
| 	'-ath10k-firmware-qca4019-ct',
 | |
| }
 | |
| local ATH10K_PACKAGES_IPQ40XX_QCA9888 = {
 | |
| 	'kmod-ath10k',
 | |
| 	'-kmod-ath10k-ct',
 | |
| 	'-kmod-ath10k-ct-smallbuffers',
 | |
| 	'ath10k-firmware-qca4019',
 | |
| 	'-ath10k-firmware-qca4019-ct',
 | |
| 	'ath10k-firmware-qca9888',
 | |
| 	'-ath10k-firmware-qca9888-ct',
 | |
| }
 | |
| 
 | |
| 
 | |
| defaults {
 | |
| 	packages = ATH10K_PACKAGES_IPQ40XX,
 | |
| }
 | |
| 
 | |
| 
 | |
| -- Aruba
 | |
| 
 | |
| device('aruba-ap-303', 'aruba_ap-303', {
 | |
| 	factory = false,
 | |
| 	aliases = {'aruba-instant-on-ap11'},
 | |
| })
 | |
| 
 | |
| device('aruba-ap-303h', 'aruba_ap-303h', {
 | |
| 	factory = false,
 | |
| 	aliases = {'aruba-instant-on-ap11d'},
 | |
| })
 | |
| 
 | |
| device('aruba-ap-365', 'aruba_ap-365', {
 | |
| 	factory = false,
 | |
| 	aliases = {'aruba-instant-on-ap17'},
 | |
| })
 | |
| 
 | |
| 
 | |
| -- AVM
 | |
| 
 | |
| device('avm-fritz-box-4040', 'avm_fritzbox-4040', {
 | |
| 	factory = false,
 | |
| 	extra_images = {
 | |
| 		{'-squashfs-eva', '-bootloader', '.bin'},
 | |
| 	},
 | |
| })
 | |
| 
 | |
| device('avm-fritz-box-7530', 'avm_fritzbox-7530', {
 | |
| 	factory = false,
 | |
| })
 | |
| 
 | |
| device('avm-fritz-repeater-1200', 'avm_fritzrepeater-1200', {
 | |
| 	factory = false,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- EnGenius
 | |
| 
 | |
| device('engenius-ens620ext', 'engenius_ens620ext', {
 | |
| 	factory = false,
 | |
| 	extra_images = {
 | |
| 		{'-squashfs-factory_30', '-factory_fw30', '.bin'},
 | |
| 		{'-squashfs-factory_35', '-factory_fw35', '.bin'},
 | |
| 	},
 | |
| })
 | |
| 
 | |
| 
 | |
| -- GL.iNet
 | |
| 
 | |
| device('gl.inet-gl-b1300', 'glinet_gl-b1300', {
 | |
| 	factory = false,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- Linksys
 | |
| 
 | |
| device('linksys-ea6350v3', 'linksys_ea6350v3')
 | |
| 
 | |
| 
 | |
| -- NETGEAR
 | |
| 
 | |
| device('netgear-ex6100v2', 'netgear_ex6100v2', {
 | |
| 	factory_ext = '.img',
 | |
| })
 | |
| 
 | |
| device('netgear-ex6150v2', 'netgear_ex6150v2', {
 | |
| 	factory_ext = '.img',
 | |
| })
 | |
| 
 | |
| 
 | |
| -- OpenMesh
 | |
| 
 | |
| device('openmesh-a42', 'openmesh_a42')
 | |
| 
 | |
| device('openmesh-a62', 'openmesh_a62', {
 | |
| 	packages = ATH10K_PACKAGES_IPQ40XX_QCA9888,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- Plasma Cloud
 | |
| 
 | |
| device('plasma-cloud-pa1200', 'plasmacloud_pa1200')
 | |
| 
 | |
| device('plasma-cloud-pa2200', 'plasmacloud_pa2200', {
 | |
| 	packages = ATH10K_PACKAGES_IPQ40XX_QCA9888,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- ZyXEL
 | |
| 
 | |
| device('zyxel-nbg6617', 'zyxel_nbg6617')
 | |
| 
 | |
| device('zyxel-wre6606', 'zyxel_wre6606', {
 | |
| 	factory = false,
 | |
| 	class = 'tiny', -- 128M ath10k + ath10k
 | |
| })
 | |
| 
 | |
| 
 | |
| -- 8devices
 | |
| 
 | |
| device('8devices-jalapeno', '8dev_jalapeno', {
 | |
| 	factory = '-squashfs-nand-factory',
 | |
| 	factory_ext = '.ubi',
 | |
| 	sysupgrade = '-squashfs-nand-sysupgrade',
 | |
| 	sysupgrade_ext = '.bin',
 | |
| })
 |