gluon/targets/ar71xx-generic

464 lines
9.9 KiB
Plaintext
Raw Normal View History

config 'CONFIG_GLUON_SPECIALIZE_KERNEL=y'
ar71xx-generic: Reduce SquashFS blocksize to 64K (#1455) Some 32 MB devices like the Nanostation M2 suffer from sudden high loads combined with a squashfs related OOM reboot: logd invoked oom-killer: gfp_mask=0x2420848, order=0, oom_score_adj=0 CPU: 0 PID: 774 Comm: logd Not tainted 4.4.135 #0 Stack : 804214dc 00000000 00000001 80480000 8182fa3c 80474803 804028d0 00000306 804e378c 00001ade 00000040 00000000 00000000 800a7f10 00000006 00000000 00000000 00000000 804063e0 80c69994 804e6542 800a5e8c 02420848 00000000 00000001 801fd600 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ... Call Trace: [<800721cc>] show_stack+0x54/0x88 [<800d5468>] dump_header.isra.4+0x48/0x130 [<800d5c38>] check_panic_on_oom+0x48/0x84 [<800d5d64>] out_of_memory+0xf0/0x324 [<800d9888>] __alloc_pages_nodemask+0x6b8/0x724 [<800d2960>] pagecache_get_page+0x154/0x270 [<80134cb0>] __getblk_slow+0x15c/0x374 [<80160418>] squashfs_read_data+0x1c8/0x6e8 [<80164628>] squashfs_readpage_block+0x32c/0x4d8 [<801622a4>] squashfs_readpage+0x5bc/0x6d0 [<800dd030>] __do_page_cache_readahead+0x1f8/0x264 [<800d479c>] filemap_fault+0x1a8/0x458 [<800efc1c>] __do_fault+0x64/0xd0 [<800f2824>] handle_mm_fault+0x4a4/0xb40 [<80076e98>] __do_page_fault+0x134/0x470 [<80060820>] ret_from_exception+0x0/0x10 Reduction of the SquashFS blocksize should reduce the problem slightly on these nodes. The image size will increase slightly but this should be no problem for ar71xx-generic (in contrast to ar71xx-tiny).
2018-09-23 12:34:14 +00:00
config 'CONFIG_TARGET_SQUASHFS_BLOCK_SIZE=64'
local ATH10K_PACKAGES = {}
local ATH10K_PACKAGES_QCA9887 = {}
local ATH10K_PACKAGES_QCA9888 = {}
if env.GLUON_WLAN_MESH == 'ibss' then
ATH10K_PACKAGES = {'-kmod-ath10k', 'kmod-ath10k-ct', '-ath10k-firmware-qca988x', 'ath10k-firmware-qca988x-ct'}
ATH10K_PACKAGES_QCA9887 = {'-kmod-ath10k', 'kmod-ath10k-ct', '-ath10k-firmware-qca9887', 'ath10k-firmware-qca9887-ct'}
ATH10K_PACKAGES_QCA9888 = {'-kmod-ath10k', 'kmod-ath10k-ct', '-ath10k-firmware-qca9888', 'ath10k-firmware-qca9888-ct'}
end
2017-01-18 16:21:43 +00:00
-- 8devices
2017-01-18 16:21:43 +00:00
device('8devices-carambola2-board', 'carambola2', {
factory = false,
})
2017-01-18 16:21:43 +00:00
-- ALFA NETWORK
2017-01-18 16:21:43 +00:00
device('alfa-network-ap121f', 'ap121f', {
factory = false,
})
device('alfa-network-hornet-ub', 'hornet-ub', {
profile = 'HORNETUB',
aliases = { 'alfa-network-ap121', 'alfa-network-ap121u' },
deprecated = true, -- kernel partition too small with OpenWrt 19.07
})
2017-01-18 16:21:43 +00:00
device('alfa-network-tube2h', 'tube2h-8M', {
profile = 'TUBE2H8M',
deprecated = true, -- kernel partition too small with OpenWrt 19.07
})
device('alfa-network-n2-n5', 'alfa-nx', {
profile = 'ALFANX',
deprecated = true, -- kernel partition too small with OpenWrt 19.07
})
2017-01-18 16:21:43 +00:00
-- Allnet
2017-01-18 16:21:43 +00:00
device('allnet-all0315n', 'all0315n', {
profile = 'ALL0315N',
factory = false,
})
2017-01-18 16:21:43 +00:00
-- AVM
device('avm-fritz-box-4020', 'fritz4020', {
factory = false,
})
device('avm-fritz-wlan-repeater-300e', 'fritz300e', {
factory = false,
})
device('avm-fritz-wlan-repeater-450e', 'fritz450e', {
factory = false,
})
-- Buffalo
2017-01-18 16:21:43 +00:00
device('buffalo-wzr-hp-g300nh', 'wzr-hp-g300nh', {
profile = 'WZRHPG300NH',
})
device('buffalo-wzr-hp-g300nh2', 'wzr-hp-g300nh2', {
profile = 'WZRHPG300NH2',
})
device('buffalo-wzr-hp-g450h', 'wzr-hp-g450h', {
profile = 'WZRHPG450H',
})
2017-01-18 16:21:43 +00:00
device('buffalo-wzr-hp-ag300h', 'wzr-hp-ag300h', {
profile = 'WZRHPAG300H',
sysupgrade = false,
})
device('buffalo-wzr-600dhp', 'wzr-600dhp', {
profile = 'WZR600DHP',
sysupgrade = false,
})
sysupgrade_image('buffalo-wzr-hp-ag300h-wzr-600dhp', 'wzr-hp-ag300h-squashfs-sysupgrade', '.bin')
2017-01-18 16:21:43 +00:00
-- D-Link
2017-01-18 16:21:43 +00:00
device('d-link-dap-1330-rev-a1', 'dap-1330-a1', {
factory_ext = '.img',
})
device('d-link-dir-505-rev-a1', 'dir-505-a1', {
profile = 'DIR505A1',
aliases = {'d-link-dir-505-rev-a2'},
})
2017-01-18 16:21:43 +00:00
device('d-link-dir-825-rev-b1', 'dir-825-b1', {
profile = 'DIR825B1',
factory = false,
})
2017-01-18 16:21:43 +00:00
-- GL Innovations
2017-01-18 16:21:43 +00:00
device('gl-inet-6408a-v1', 'gl-inet-6408A-v1')
device('gl-inet-6416a-v1', 'gl-inet-6416A-v1')
2017-01-18 16:21:43 +00:00
device('gl.inet-gl-ar150', 'gl-ar150', {
factory = false,
manifest_aliases = {'gl-ar150'},
})
device('gl.inet-gl-ar300m', 'gl-ar300m', {
factory = false,
manifest_aliases = {'gl-ar300m'},
})
2017-01-18 16:21:43 +00:00
device('gl.inet-gl-ar750', 'gl-ar750', {
factory = false,
manifest_aliases = {'gl-ar750'},
packages = ATH10K_PACKAGES_QCA9887,
})
2017-01-18 16:21:43 +00:00
-- Linksys by Cisco
2017-01-18 16:21:43 +00:00
device('linksys-wrt160nl', 'wrt160nl', {
profile = 'WRT160NL',
})
2017-01-18 16:21:43 +00:00
-- Meraki
device('meraki-mr12', 'mr12', {
factory = false,
aliases = {'meraki-mr62'},
broken = true, -- MAC address uniqueness issues
})
2017-01-18 16:21:43 +00:00
device('meraki-mr16', 'mr16', {
factory = false,
aliases = {'meraki-mr66'},
broken = true, -- MAC address uniqueness issues
})
2017-01-18 16:21:43 +00:00
-- Netgear
2017-01-18 16:21:43 +00:00
device('netgear-wndr3700', 'wndr3700', {
factory_ext = '.img',
})
2017-01-18 16:21:43 +00:00
device('netgear-wndr3700v2', 'wndr3700v2', {
factory_ext = '.img',
})
2017-01-18 16:21:43 +00:00
device('netgear-wndr3800', 'wndr3800', {
factory_ext = '.img',
})
2017-01-18 16:21:43 +00:00
device('netgear-wndrmacv2', 'wndrmacv2', {
factory_ext = '.img',
})
2017-01-18 16:21:43 +00:00
device('netgear-wndrmac', 'wndrmac', {
factory_ext = '.img',
broken = true, -- untested
})
2017-01-18 16:21:43 +00:00
-- BROKEN: Untested
device('netgear-wnr2200', 'wnr2200', {
profile = 'WNR2200',
factory_ext = '.img',
broken = true, -- untested
})
2017-01-18 16:21:43 +00:00
-- OCEDO
device('ocedo-koala', 'koala', {
factory = false,
packages = ATH10K_PACKAGES,
})
-- Onion
2017-01-18 16:21:43 +00:00
device('onion-omega', 'onion-omega', {
broken = true, -- no Ethernet
})
2017-01-18 16:21:43 +00:00
-- OpenMesh
2017-01-18 16:21:43 +00:00
device('openmesh-a60', 'a60', {
profile = 'A60',
aliases = {'openmesh-a40'},
packages = ATH10K_PACKAGES,
})
2017-01-18 16:21:43 +00:00
device('openmesh-mr1750', 'mr1750', {
profile = 'MR1750',
aliases = {'openmesh-mr1750v2'},
packages = ATH10K_PACKAGES,
})
device('openmesh-mr600', 'mr600', {
profile = 'MR600',
aliases = {'openmesh-mr600v2'},
})
2017-01-18 16:21:43 +00:00
device('openmesh-mr900', 'mr900', {
profile = 'MR900',
aliases = {'openmesh-mr900v2'},
})
2017-01-18 16:21:43 +00:00
device('openmesh-om2p', 'om2p', {
profile = 'OM2P',
aliases = {
'openmesh-om2pv2',
'openmesh-om2pv4',
'openmesh-om2p-hs',
'openmesh-om2p-hsv2',
'openmesh-om2p-hsv3',
'openmesh-om2p-hsv4',
'openmesh-om2p-lc',
},
})
2017-01-18 16:21:43 +00:00
device('openmesh-om5p', 'om5p', {
profile = 'OM5P',
aliases = {'openmesh-om5p-an'},
})
2017-01-18 16:21:43 +00:00
device('openmesh-om5p-ac', 'om5pac', {
profile = 'OM5PAC',
aliases = {'openmesh-om5p-acv2'},
packages = ATH10K_PACKAGES,
})
2017-01-18 16:21:43 +00:00
-- TP-Link
2017-01-18 16:21:43 +00:00
local tplink_region_suffix = ''
if (env.GLUON_REGION or '') ~= '' then
tplink_region_suffix = '-' .. env.GLUON_REGION
end
2017-01-18 16:21:43 +00:00
device('tp-link-cpe210-v1.0', 'cpe210-220-v1', {
aliases = {'tp-link-cpe210-v1.1', 'tp-link-cpe220-v1.1'},
})
device('tp-link-cpe210-v2.0', 'cpe210-v2')
device('tp-link-cpe210-v3.0', 'cpe210-v3')
device('tp-link-cpe510-v1.0', 'cpe510-520-v1', {
aliases = {'tp-link-cpe510-v1.1', 'tp-link-cpe520-v1.1'},
})
2017-01-18 16:21:43 +00:00
device('tp-link-wbs210-v1.20', 'wbs210-v1')
device('tp-link-wbs510-v1.20', 'wbs510-v1')
device('tp-link-tl-wr710n-v1', 'tl-wr710n-v1', {
packages = { 'zram-swap' },
})
device('tp-link-tl-wr710n-v2.1', 'tl-wr710n-v2.1', {
packages = { 'zram-swap' },
})
device('tp-link-tl-wr810n-v1', 'tl-wr810n-v1')
device('tp-link-tl-wr842n-nd-v1', 'tl-wr842n-v1', {
packages = { 'zram-swap' },
})
device('tp-link-tl-wr842n-nd-v2', 'tl-wr842n-v2', {
packages = { 'zram-swap' },
})
device('tp-link-tl-wr842n-nd-v3', 'tl-wr842n-v3')
device('tp-link-tl-wr1043n-nd-v1', 'tl-wr1043nd-v1', {
packages = { 'zram-swap' },
})
device('tp-link-tl-wr1043n-nd-v2', 'tl-wr1043nd-v2')
device('tp-link-tl-wr1043n-nd-v3', 'tl-wr1043nd-v3')
device('tp-link-tl-wr1043n-nd-v4', 'tl-wr1043nd-v4')
device('tp-link-tl-wr1043n-v5', 'tl-wr1043n-v5')
device('tp-link-tl-wdr3500-v1', 'tl-wdr3500-v1')
device('tp-link-tl-wdr3600-v1', 'tl-wdr3600-v1')
device('tp-link-tl-wdr4300-v1', 'tl-wdr4300-v1')
device('tp-link-tl-wr2543n-nd-v1', 'tl-wr2543-v1')
device('tp-link-archer-c5-v1', 'archer-c5-v1', {
packages = ATH10K_PACKAGES,
})
device('tp-link-archer-c7-v2', 'archer-c7-v2', {
packages = ATH10K_PACKAGES,
factory = '-squashfs-factory' .. tplink_region_suffix,
})
device('tp-link-archer-c7-v4', 'archer-c7-v4', {
packages = ATH10K_PACKAGES,
})
device('tp-link-archer-c7-v5', 'archer-c7-v5', {
packages = ATH10K_PACKAGES,
})
device('tp-link-archer-c25-v1', 'archer-c25-v1', {
packages = ATH10K_PACKAGES_QCA9887,
broken = true, -- OOM with 5GHz enabled in most environments
})
device('tp-link-archer-c58-v1', 'archer-c58-v1', {
packages = ATH10K_PACKAGES_QCA9888,
broken = true, -- OOM with 5GHz enabled in most environments
})
device('tp-link-archer-c59-v1', 'archer-c59-v1', {
packages = ATH10K_PACKAGES_QCA9888,
broken = (env.GLUON_WLAN_MESH ~= '11s'),
})
device('tp-link-archer-c60-v1', 'archer-c60-v1', {
packages = ATH10K_PACKAGES_QCA9888,
broken = true, -- OOM with 5GHz enabled in most environments
})
device('tp-link-archer-c60-v2', 'archer-c60-v2', {
packages = ATH10K_PACKAGES_QCA9888,
broken = true, -- OOM with 5GHz enabled in most environments
})
device('tp-link-re355', 're355-v1', {
packages = ATH10K_PACKAGES,
broken = true, -- OOM with 5GHz enabled in most environments if device is 64M RAM variant
})
device('tp-link-tl-wr902ac-v1', 'tl-wr902ac-v1', {
packages = ATH10K_PACKAGES_QCA9887,
broken = true, -- OOM due to insufficient RAM for ath10k expected
})
device('tp-link-re450', 're450-v1', {
packages = ATH10K_PACKAGES,
})
-- Ubiquiti
device('ubiquiti-airgateway', 'ubnt-air-gateway', {
aliases = {'ubiquiti-airgateway-lr'},
})
device('ubiquiti-airgateway-pro', 'ubnt-air-gateway-pro')
device('ubiquiti-airrouter', 'ubnt-airrouter')
device('ubiquiti-bullet-m', 'ubnt-bullet-m', {
aliases = {
'ubiquiti-nanostation-loco-m2',
'ubiquiti-nanostation-loco-m5',
'ubiquiti-bullet-m2',
'ubiquiti-bullet-m5',
'ubiquiti-picostation-m2',
},
packages = { 'zram-swap' },
})
device('ubiquiti-rocket-m', 'ubnt-rocket-m', {
aliases = {
'ubiquiti-rocket-m2',
'ubiquiti-rocket-m5',
},
})
device('ubiquiti-nanostation-m', 'ubnt-nano-m', {
aliases = {
'ubiquiti-nanostation-m2',
'ubiquiti-nanostation-m5',
},
packages = { 'zram-swap' },
})
device('ubiquiti-loco-m-xw', 'ubnt-loco-m-xw', {
aliases = {
'ubiquiti-nanostation-loco-m2-xw',
'ubiquiti-nanostation-loco-m5-xw',
-- 'ubiquiti-nanobeam-m5', -- untested
},
})
device('ubiquiti-nanostation-m-xw', 'ubnt-nano-m-xw', {
aliases = {
'ubiquiti-nanostation-m2-xw',
'ubiquiti-nanostation-m5-xw',
},
})
device('ubiquiti-rocket-m-xw', 'ubnt-rocket-m-xw', {
aliases = {
'ubiquiti-rocket-m2-xw',
'ubiquiti-rocket-m5-xw',
},
})
device('ubiquiti-rocket-m-ti', 'ubnt-rocket-m-ti', {
aliases = {
'ubiquiti-rocket-m2-ti',
'ubiquiti-rocket-m5-ti',
},
})
device('ubiquiti-unifi', 'ubnt-unifi', {
aliases = {
'ubiquiti-unifi-ap',
'ubiquiti-unifi-ap-lr',
},
})
device('ubiquiti-unifi-ap-pro', 'ubnt-uap-pro')
device('ubiquiti-unifiap-outdoor', 'ubnt-unifi-outdoor')
device('ubiquiti-unifiap-outdoor+', 'ubnt-unifi-outdoor-plus')
device('ubiquiti-ls-sr71', 'ubnt-ls-sr71', {
broken = true, -- untested
})
device('ubiquiti-unifi-ac-lite', 'ubnt-unifiac-lite', {
factory = false,
packages = ATH10K_PACKAGES,
aliases = {'ubiquiti-unifi-ac-lite-mesh'},
})
device('ubiquiti-unifi-ac-pro', 'ubnt-unifiac-pro', {
factory = false,
packages = ATH10K_PACKAGES,
})
device('ubiquiti-unifi-ac-mesh', 'ubnt-unifiac-mesh', {
factory = false,
packages = ATH10K_PACKAGES,
})
device('ubiquiti-unifi-ac-mesh-pro', 'ubnt-unifiac-mesh-pro', {
factory = false,
packages = ATH10K_PACKAGES,
})
-- Western Digital
device('wd-my-net-n600', 'mynet-n600')
device('wd-my-net-n750', 'mynet-n750')
-- ZyXEL
device('zyxel-nbg6616', 'NBG6616', {
packages = ATH10K_PACKAGES,
})