Commit Graph

225 Commits

Author SHA1 Message Date
Matthias Schiffer
3ce43329f5
build: remove now-unneeded function from target_config_lib.lua
target_config.lua and target_config_check.lua don't pass a table of
callbacks anymore, so target_config_lib.lua can by simplified by moving
all the code that was in the returned function to the toplevel.
2020-05-31 02:20:58 +02:00
Matthias Schiffer
9e23534ec3
build: rework config generation
So far, we were using a sort operation on the generated .config to
implement precedence of =y packages over =m, and =m over unset.
Unfortunately, this sort not only used for packages, but for all config
lines. This made it impossible to override settings from targets/generic
in a target config when the new setting was sorted before the generic
setting.

To fix this, track configurations by their keys, so we can properly
override config keys that were set before. Value-based precedence is
only preserved for package configuration.

The config() and try_config() calls always take key and value as
separate arguments now. Strings are quoted automatically; the values
true, nil and false map to y, m and unset for tristate options. config()
can take an optional third argument to override the error message to
display when the setting fails to apply.

All existing target configs generate the same .config with the old and the
new code. The new code is also a bit faster on targets with many devices.
2020-05-31 02:20:58 +02:00
David Bauer
7fd7116e2a targets: add device-class flags
This commit assigns class-flags to devices. The following scheme is
used:

 - ath9k & ath10k: tiny if RAM <128M
 - ath10k & ath10k: tiny if RAM <256M
 - all: tiny if RAM <64M
 - all: tiny if flash <8M

All other devices automatically have the default device-class selected.
2020-03-25 02:05:18 +01:00
Andreas Ziegler
390884819c docs: rename vendor to GL.iNet for uniformity 2020-02-02 01:12:46 +01:00
David Bauer
b6ec44d6af targets: remove ath10k-ct-smallbuffers
Remove the ath10k-ct-smallbuffers variant from the default
package-seleciton as it clashes with the QCA ath10k driver.
2020-01-05 00:21:29 +01:00
Malte Möller
aa679bc6e9 ar71xx-generic: add alias for wndr3800chmychart
a regular Netgear WNDR3800
but identifies itself as wndr3800chmychart.
2019-12-04 11:52:15 +01:00
David Bauer
18dd76471c ar71xx-generic: add dedicated UniFi AC LR image
As upstream now has model detection for the Ubiquiti UniFi AC LR, we
need to provide an autoupdater image matching the expected filename.

Closes #1834
2019-11-08 18:47:07 +01:00
Matthias Schiffer
335fae1025 build: drop GLUON_WLAN_MESH variable 2019-11-07 19:48:16 +01:00
Martin Weinelt
ba3415059c ar71xx-generic: drop ALFA N2, N5, Tube2H and Hornet-UB
Their kernel partition is too small, the OpenWrt build system
is unable to create an image.
2019-10-30 00:06:14 +01:00
David Bauer
82cdd5f808 targets: adapt ath10k selection to OpenWrt 19.07
This changes the ath10k firmware and driver selection, as
ath10k-ct is now the default in upstream OpenWrt.

However, for 802.11s operation we need the QCA firmware and driver.
2019-10-30 00:06:14 +01:00
David Bauer
3522197ff9 ar71xx-generic: add missing ath10k packages (#1844)
This adds previously absent ath10k packages definitions. This way,
devices correctly select CandelaTech firmware correctly, when
GLUON_WLAN_MESH is set to IBSS.

This is also necessary for all devices, when OpenWrt is switched to
19.07.
2019-10-22 02:15:35 +02:00
Marssl78
b823b80356 ar71xx-generic: add support for TP-Link Archer C60 v2 (#1840) 2019-10-06 22:11:02 +02:00
Andreas Ziegler
94ca071e12 ar71xx-generic: fix device alias for Ubiquiti UniFi AC LR
fixes #1834
fixes #1332
2019-10-03 21:22:12 +02:00
David Bauer
ea24298f2d ar71xx-generic: add ath10k packages to OCEDO Koala (#1838)
The OCEDO Koala was missing the correct package definition. Because of
this, firmware is potentially built with the wrong ath10k firmware /
driver.
2019-10-03 01:44:20 +02:00
Andreas Ziegler
07fe28c855
ar71xx-generic: add zram-swap to boards with 8M flash but only 32M memory (#1819) 2019-09-23 09:54:54 +02:00
Martin Weinelt
be965e7e4a ar71xx-generic: deprecate ALFA AP121, Hornet-UB, Tube2H, N2/N5
The kernel partition on these devices is too small for the
OpenWrt 19.07 kernel. It is also located after the rootfs, so
we cannot grow it further.

Therefore mark these devices as deprecated now.
2019-09-20 17:02:41 +02:00
Martin Weinelt
61bd88309e Revert "ar71xx-generic: unmark archer-c25-v1 as broken"
This reverts commit fb08e10494.

Devices featuring ath10k radios should at least 128 MB of memory
as their driver is quite memory hungry.

Devices with a configuration (1x ath10k, 64M memory) like this have
often been seen as running out of memory.
2019-08-18 19:32:43 +02:00
Vincent Wiemann
0a22218304 ar71xx-generic: Fix packages for GL.iNet AR750 (#1792)
The profile for GL.iNet AR750 currently selects ATH10K_PACKAGES, but this device actually has a QCA9887 which needs another driver.
This commit fixes the issue by setting ATH10K_PACKAGES_QCA9887 instead.
2019-08-10 10:17:29 +02:00
Adrian Schmutzler
851dfc6a93 ar71xx-generic: Add support for TP-Link CPE210 V3 (#1696)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-29 14:49:54 +02:00
Martin Weinelt
fb08e10494
ar71xx-generic: unmark archer-c25-v1 as broken
memory usage seems to behave more reasonable for a while now
2019-06-28 01:58:35 +02:00
Matthias Schiffer
071cf7b20f
Switch to Lua for target definitions
The old bash-based parsing code was way too complex. Replace it with Lua.
2019-06-15 23:34:07 +02:00
Matthias Schiffer
a44a5dce02
ar71xx: Onion Omega is BROKEN
This device doesn't have an Ethernet port, and even with the Ethernet
shield, eth0 is not configured.
2019-06-15 23:30:23 +02:00
Matthias Schiffer
0970dd3e01
targets: unset executable mode for target files
For some reason, some of the target files were executable.
2019-06-12 14:15:25 +02:00
Andreas Ziegler
b5b2a2176b ar71xx: remove redundancy from 2 target specifications 2019-03-31 17:45:24 +02:00
Manu.WTF
917d6af299 ar71xx: add support for D-Link DAP-1330 (#1672) 2019-03-15 23:35:35 +01:00
oszilloskop
b9cf102f46 ar71xx: fix incorrect gl-ar150 and gl-ar300m image names (#1640)
also added manifest aliases for gl-ar150, gl-ar300m, gl-ar750
2019-02-07 01:55:07 +01:00
Malte Moeller
692f61ec5a change device identifier to match machine identifier
this matches the output of
lua -e 'print(require(platform_info).get_image_name())'

This way the manifest file is accepted by the autoupdater
2019-01-18 23:33:05 +01:00
Martin Weinelt
656230a79f ar71xx: add support for FRITZ!Repeater 300E (#1604)
Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
2018-12-29 22:51:57 +01:00
Christoph Krapp
b5aa8c2f7c ar71xx: add support for ZyXEL NBG6616
Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-12-20 14:12:50 +01:00
Christoph Krapp
1c590ca148 ar71xx: add support for UniFi-AC-Mesh-Pro
Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-12-09 20:41:56 +01:00
David Bauer
c1967fe383 ar71xx: remove BROKEN flag for TL-WR810N v1
Fixes #856
2018-10-24 23:44:01 +02:00
David Bauer
665cc49d67 ar71xx: add support for Archer C7 v5 2018-10-15 00:38:18 +02:00
David Bauer
246a617d71 ar71xx: add support for TL-WR902AC v1 (#1546)
This adds support for the TP-Link TL-WR902Ac v1 travel router.

The device is marked as broken due to 64MB which might be insufficient
in certain environments.
2018-10-11 03:21:51 +02:00
Ruben Barkow
2a077f86cf ar71xx: unify position of comment containing BROKEN flag reason (#1545) 2018-10-02 01:03:55 +02:00
Sven Eckelmann
2b208647f7 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 14:34:14 +02:00
David Bauer
a29883986c ar71xx: add AVM FRITZ!WLAN Reapeater 450E (#1506) 2018-09-04 20:59:16 +02:00
Martin Weinelt
0e21d17032 ar71xx-generic: prefer kmod-ath10k for 802.11s mesh (#1499)
removes cryptic debug messages from kernel ring buffer and
also reduces memory usage by as much as 20-25 MiB.
2018-08-01 03:37:56 +02:00
Christoph Krapp
4883bc7141 ar71xx: add support for TP-Link RE355 (#1478)
Support is marked as broken because this device is sold in two variants,
one with 64M RAM and another with 128M. As of now 64M is not enough
for ath10k with 5GHz enabled.
As there is no indication known which variant one will get better mark
it as broken.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-07-15 18:29:42 +02:00
David Bauer
52bc028e6b ar71xx: add support for OCEDO Koala (#1475) 2018-07-13 01:25:58 +02:00
Matthias Schiffer
210d97c53e
Switch to OpenWrt 18.06 branch 2018-07-10 22:57:40 +02:00
Sven Eckelmann
3d18ae02d8 ar71xx: Add support for TP-Link CPE210 v2 (#1445) 2018-06-26 01:19:55 +02:00
Sven Eckelmann
384c2772c9 ar71xx: add ath10k packages for OpenMesh A40/A60 (#1444)
The dependency line was lost during the rebase of the current master
version.

Fixes: 9d719a2e57 ("ar71xx: add support for OpenMesh A40/A60 (#1424)")
2018-06-24 13:32:56 +02:00
Sven Eckelmann
ef819cc196 ar71xx: add support for OpenMesh OM2P(-HS)v4 (#1426) 2018-06-09 13:55:38 +02:00
Sven Eckelmann
9d719a2e57 ar71xx: add support for OpenMesh A40/A60 (#1424) 2018-06-08 20:18:30 +02:00
Vincent Wiemann
33956cd4b3 ar71xx: add support for Alfa AP121F (#1404)
Adds support for Alfa AP121F USB powered travel router (looks like an USB ethernet adapter).
There is no factory image, but only a sysupgrade file for this router which can be installed using the inbuilt UBoot web interface.
Configure your PC with IP address 192.168.1.2 and connect the router using its RJ45 port. Hold the reset button while powering the device until all LEDs have flashed 3 times simultaneously. You can now access the fallback web interface using a web browser at http://192.168.1.1 and flash the sysupgrade file.
2018-05-23 19:32:40 +02:00
Christoph Krapp
68ee56b869 ar71xx: add support for GL.iNet GL-AR750 (#1395) 2018-05-17 22:33:18 +02:00
Matthias Schiffer
5bd1d88f85
ar71xx-generic: make ubiquiti-rocket-m a separate device
Make ubiquiti-rocket-m a separate device rather than a bullet-m alias to
enable USB support and allow adding devive-specific packages.
2018-05-08 18:39:18 +02:00
David Bauer
22d45448fd ar71xx: add support for Fritz!Box 4020
This commit adds support for the AVM Fritz!Box 4020 WiFi-router.

SoC:   Qualcomm Atheros QCA9561 (Dragonfly) 750MHz
RAM:   Winbond W971GG6KB-25
FLASH: Macronix MX25L12835F
WiFi:  QCA9561 b/g/n 3x3 450Mbit/s
USB:   1x USB 2.0
IN:    WPS button, WiFi button
OUT:   Power LED green, Internet LED green, WLAN LED green,
       LAN LED green, INFO LED green, INFO LED red
UART:  Header Next to Black metal shield
       Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V)
       The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet (LAN + WAN)
 - WiFi (correct MAC)
 - Installation via EVA bootloader
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

Not working:
 - USB port

Installation via EVA:
In the first seconds after Power is connected, the bootloader will
listen for FTP connections on 169.254.157.1 (Might also be 192.168.178.1). Firmware can be uploaded
like following:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put openwrt-sysupgrade.bin mtd1

Note that this procedure might take up to two minutes. After transfer is
complete you need to powercycle the device to boot OpenWRT.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-08 15:20:02 +02:00
Matthias Schiffer
02f905f542
ar71xx: build kernel modules used by Gluon into the kernel
ar71xx-generic and -tiny benefit most from the optimized kernel, as they
contain all devices with 32MB RAM. We enable CONFIG_GLUON_SPECIALIZE_KERNEL
for all targets using the mips24_kc architecture so packages shared between
targets don't need to be rebuild all the time.
2018-04-13 17:32:20 +02:00
Jan-Tarek Butt
be286c4c69 ar71xx-generic: set unifi-ac-lr alias on ac-lite 2018-02-20 15:22:21 +01:00