- [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',
 | 
						|
})
 |