aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* kernel: unify CONFIG_GPIO_SYSFS in kernel configsFelix Fietkau2020-08-0667-67/+3
| | | | | | Enable it for all platforms Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: switch rt305x subtarget to kernel 5.4Alexey Dobrovolsky2020-08-056-6/+5
| | | | | | | | | | | | | | RT3x5x seems to work fine with kernel 5.4. Set the default kernel version to 5.4 to bring this to a broader audience. Since 4 of 6 targets are on kernel 5.4 now, invert the kernel version setup logic in Makefile/target.mk files. Tested on ZyXEL Keenetic. Signed-off-by: Alexey Dobrovolsky <dobrovolskiy.alexey@gmail.com> [invert version setup logic] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: enable flashing WizFi630S via OEM firmwareTobias Welz2020-08-051-0/+1
| | | | | | | | | | | WIZnet WizFi630s board name is written slightly different it its OEM OpenWrt firmware. This causes an incompatibility warning during flashing with sysupgrade. This patch is adding the vendor board name to the supported devices list to avoid this warning. For initial flashing you can use sysupgrade via command line or luci beside of TFTP. Do not keep the OEM configuration during sysupgrade. Signed-off-by: Tobias Welz <tw@wiznet.eu>
* ipq806x: use qcom-ipq8064-v1.0.dtsi from upstreamAdrian Schmutzler2020-08-058-222/+186
| | | | | | | | | | | | | | | | | This uses upstream qcom-ipq8064-v1.0.dtsi and modifies it by patches instead of keeping a local version. As a consequence: - we use a part of the shared definitions there and update device DTS files accordingly - we move additional stuff from our local v1.0.dtsi to the patch - we drop partitions, LEDs and keys from the file as we will implement them differently anyway Like with the previous patch, this follows the idea that a diff from upstream might be easier to handle than a big file of our own with different distribution pattern of properties. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: use qcom-ipq8064.dtsi from upstreamAdrian Schmutzler2020-08-058-1579/+1164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Though a qcom-ipq8064.dtsi file exists upstream, we still do overwrite it with a full version of our own in the ipq806x target. About half of the contents of our file are upstream content, the other half are local improvements. To prevent us from having a lot of code maintained twice in parallel, this adjusts the target to use the upstream qcom-ipq8064.dtsi. Our local changes are arranged into three patches, the first pulling a commit from upstream, the second doing a few small adjustments, and the third adding all additional stuff. This should get us the best of both worlds. The property "ports-implemented" on sata@29000000 is moved to 2nd-level DTSI files as kernel defines it there as well. While at, rename 080-ARM-dts-qcom-add-gpio-ranges-property.patch to include the kernel version where it's added upstream. Even though this might look more complicated in the first place, the aim is to bring our files closer to upstream, so we can benefit from changes directly and vice-versa. After all, this drop about 650 lines just copied from the upstream DTSI file. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: remove doublet entry in WizFi630S dts fileTobias Welz2020-08-051-4/+0
| | | | | | | &wmac entry in WIZnet WizFi630S dts file was existing two times. This is removing one of them. Signed-off-by: Tobias Welz <tw@wiznet.eu>
* ramips: disable unused phy ports of WizFi630STobias Welz2020-08-051-0/+1
| | | | | | | WIZnet WizFi630S is using only 3 of the phy ports. The unused phy ports draw unnecessarily power. This is disabling the unused phy ports. Signed-off-by: Tobias Welz <tw@wiznet.eu>
* bcm47xx: switch to kernel 5.4Rafał Miłecki2020-08-041-1/+1
| | | | | | Switch, LEDs, USB, buttons, sysupgrade testedon BCM4706. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: switch to kernel 5.4Rafał Miłecki2020-08-041-1/+1
| | | | | | Switch, USB, WiFi, buttons tested on BCM47094. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: set HW_RANDOM_BCM2835=yRafał Miłecki2020-08-041-0/+2
| | | | | | | | | | This enables Random Number Generator support on Northstar (described in DT with brcm,bcm5301x-rng). It's also a workaround for OpenWrt bug with kernel config causing: Broadcom BCM2835/BCM63xx Random Number Generator support (HW_RANDOM_BCM2835) [Y/n/m/?] (NEW) Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: update kernel 5.4 DTS to upstream 5.9 stateRafał Miłecki2020-08-043-0/+333
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: update kernel 5.4 configRafał Miłecki2020-08-041-100/+4
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ramips: add support for TP-Link RE200 v3Richard Fröhning2020-08-034-0/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link RE200 v3 is a wireless range extender with Ethernet and 2.4G and 5G WiFi with internal antennas. It's based on MediaTek MT7628AN+MT7610EN like the v2. Specifications -------------- - MediaTek MT7628AN (580 Mhz) - 64 MB of RAM - 8 MB of FLASH - 2T2R 2.4 GHz and 1T1R 5 GHz - 1x 10/100 Mbps Ethernet - 8x LED (GPIO-controlled), 2x button Unverified: - UART header on PCB (57600 8n1) There are 2.4G and 5G LEDs in red and green which are controlled separately. MAC addresses ------------- MAC address assignment has been done according to the RE200 v2. The label MAC address matches the OpenWrt ethernet address. Installation ------------ Web Interface ------------- It is possible to upgrade to OpenWrt via the web interface. Simply flash the -factory.bin from OEM. In contrast to a stock firmware, this will not overwrite U-Boot. Recovery -------- Unfortunately, this devices does not offer a recovery mode or a tftp installation method. If the web interface upgrade fails, you have to open your device and attach serial console. The device has not been opened for adding support. However, it is expected that the behavior is similar to the RE200 v2. Instructions for serial console and recovery may be checked out in commit 6d6f36ae787c ("ramips: add support for TP-Link RE200 v2") or on the device's Wiki page. Signed-off-by: Richard Fröhning <misanthropos@gmx.de> [adjust commit title/message, sort support list] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: fix/tidy up 4M tplink-v2-image flash layoutsAdrian Schmutzler2020-08-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | For the TP-Link 4M devices with tplink-v2-image recipe (mktplinkfw2.c), there are two different flash layouts based on the size of the (u)boot partition: device uboot OEM firmware OpenWrt (incl. config) tl-wr840n-v5 0x20000 0x3c0000 0x3d0000 tl-wr841n-v14 0x10000 0x3d0000 0x3e0000 In both cases, the 0x10000 config partition is used for the firmware partition as well due to the limited space available and since it's recreated by the OEM firmware anyway. However, the TFTP flashing process will only copy data up to the size of the initial (OEM) firmware size. Therefore, while we can use the bigger partition to have additional erase blocks on the device, we have to limit the image sizes to the TFTP limits. So far, only one layout definition has been set up in mktplinkfw2.c for 4M mediatek devices. This adds a second one and assigns them to the devices so the image sizes are correctly restrained. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kirkwood: get rid of BOARD_NAME and tidy up DEVICE_DTSAdrian Schmutzler2020-08-031-16/+14
| | | | | | | | | | | Since most of the DTS file names follow a common scheme now, let's update the automatically generated DEVICE_DTS value and get rid of some DEVICE_DTS and all BOARD_NAME entries for individual devices. This should specifically make the job easier for developers adding new devices, as they are not tempted to copy over BOARD_NAME anymore. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* target: replace remaining occurrences of ifconfig with ipAdrian Schmutzler2020-08-035-8/+9
| | | | | | | | | | | ifconfig is effectively deprecated for quite some time now. Let's replace the remaining occurrences for our target setup by the corresponding ip commands now. Note that this does not touch ar71xx, as it will be dropped anyway, and changing it would only make backports harder. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ar71xx: restore support for boot console with arbitrary baud ratesSungbo Eo2020-08-021-0/+54
| | | | | | | | | | | Commit 1bfbf2de6df9 ("ar71xx: serial: core: add support for boot console with arbitrary baud rates") added support for arbitrary baud rates which enabled 250000 baud rate for Yun. But the patch was not ported to kernel 4.9, and since then the kernel set its baud rate to 9600. This commit ports the patch to kernel 4.14, thereby restoring the serial console of Yun. Cc: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* ar71xx: enable ethernet LED of Arduino YunSungbo Eo2020-08-021-2/+1
| | | | | | | | Commit 05d73a2a7379 enabled GPIO on ethernet LED, but proper LED setup was not added then. This commit fixes it by reverting the change on the LED. Fixes: 05d73a2a7379 ("ar71xx: Arduino Yun board 'WLAN RST' button support") Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* ar71xx: fix sysupgrade for Arduino YunSungbo Eo2020-08-021-1/+1
| | | | | | | | | Commit bb46b635df48 changed its partition scheme, but sysupgrade image validation still uses the old format. This commit fixes it so that force flag is not needed for sysupgrade. Fixes: bb46b635df48 ("ar71xx: move Arduino Yun to generic building code") Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* Revert "ar71xx: fix Arduino Yun enabling of level shifters outputs"Sungbo Eo2020-08-021-2/+2
| | | | | | | | | This reverts commit 077253dd666a30ae5231c3748222d4b5b138593d. The output enable pins should be disabled by default, and only enabled when used. Otherwise unwanted conflicts might occur between MCU and SoC pins. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* ath79/mikrotik: create shared device definitions for nor and nandAdrian Schmutzler2020-08-012-13/+19
| | | | | | | Move the image preparation and nand-utils package selection into common device definitions for NOR/NAND devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: fix missing TRANSPARENT_HUGEPAGE symbolsStijn Tintel2020-08-011-0/+1
| | | | | | | | | | | | | | | | Enabling KERNEL_TRANSPARENT_HUGEPAGE exposes 2 missing symbols: * CONFIG_READ_ONLY_THP_FOR_FS * TRANSPARENT_HUGEPAGE_ALWAYS * TRANSPARENT_HUGEPAGE_MADVISE The first one was added in 5.4, and is marked experimental there so just disable it in the generic config. For the latter two, we should not force the user to use either of them, so add them as build-configurable kernel options. Fixes: d1a8217d87bf ("kernel: clean-up build-configurable kernel config symbols") Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: add missing config symbolStijn Tintel2020-08-013-0/+3
| | | | | | | | | | This symbol is exposed on ARM64 with EFI enabled in the kernel config. Currently this happens only on ipq807x, but as there might be new ARM64 targets with EFI in the future it is better to add the symbol to the generic config. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> Acked-by: Jo-Philipp Wich <jo@mein.io>
* gemini: Add swap partition to DNS-313Linus Walleij2020-07-311-7/+13
| | | | | | | | | Sometimes when using the DNS-313 memory usage can peak and with a simple swap partition we can avoid running into the roof and invoking the OOM killer. Set this partition to 128MB (twice the size of the memory of the DNS-313). Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* apm821xx: disable WNDR4700 5.4 imageChristian Lamparter2020-07-311-0/+1
| | | | | | | | | | | | | | | The compressed image that the buildbots are building is too large for the netgear uboot and it crashes and soft-bricks the device. | Uncompressing Kernel Image ... | LZMA: uncompress or overwrite error 1 - must RESET board to recover The whole target likely needs to be switched zImage which is a major hassle due to powerpc's legacy bootwrapper setup as compared to ARM. So for now, disable the device. Reported-by: Wiktor Stasiak (FS#3258) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kirkwood: use real model names for Linksys devicesAdrian Schmutzler2020-07-3110-29/+63
| | | | | | | | | | | | This replaces the internal device names "Audi" and "Viper" with the real model names, which a user would look for. This makes the Linksys devices on this target consistent with the names recently changed for mvebu based on the same idea. As a consequence, the "viper" device definition is split into two separate definitions with the correct names for both real models. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: mips: restore missing MIPS32 cBPF JITTony Ambardar2020-07-311-0/+1663
| | | | | | | | | | | | | | | | | | | Kernel v5.1 included an eBPF JIT for MIPS32 kernels, but problems were discovered [1] and the changes later reverted in kernel v5.5 with commits: * f8fffebdea75 ("MIPS: BPF: Disable MIPS32 eBPF JIT") * 36366e367ee9 ("MIPS: BPF: Restore MIPS32 cBPF JIT") Only the first of these was backported to LTS kernel 5.4, leaving cBPF programs without a JIT and introducing a performance regression for any such users e.g. libpcap, tcpdump, etc. Restore cBPF performance by backporting the second commit above: * 070-v5.5-MIPS-BPF-Restore-MIPS32-cBPF-JIT.patch [1] https://lore.kernel.org/bpf/20191205182318.2761605-1-paulburton@kernel.org/ Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* mvebu: fix alphabetic sorting in 02_networkAdrian Schmutzler2020-07-311-6/+6
| | | | | | This has been overlooked when removing solidrun,clearfog-a1 entry. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: increase compat version for SolidRun ClearFog BaseAdrian Schmutzler2020-07-312-1/+4
| | | | | | | | | | | | | When changing the Pro variant to DSA, the ethernet interface rename script was dropped by all devices to keep them in sync: be309bfd7445 ("mvebu: drop 06_set_iface_mac preinit script") Therefore, network config will be broken after upgrade for the Base variant as well. Increase the compat version and provide a message to signal that to the users. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kirkwood: implement compatibility version for DSA migrationAdrian Schmutzler2020-07-312-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | This implements the newly introduced compat-version to prevent upgrade between swconfig and DSA for kirkwood. Just define a compat version with minor increment and an appropriate message for both image (in Makefile) and device (in base-files). Since we never removed SUPPORTED_DEVICES for this target, we don't have to add it back either. Attention: All users that already updated to the DSA versions in master will receive the same incompatibility warning since their devices are still "1.0" as far as fwtool can tell. Those, and only those, can bypass the upgrade check by using force (-F) without having to reset config again. In addition, the new version string needs to be put into uci config manually, so the new fwtool knows that it actually deals with a "1.1": uci set "system.@system[-1].compat_version=1.1" uci commit system Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: implement compatibility version for DSA migrationAdrian Schmutzler2020-07-312-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | This implements the newly introduced compat-version to prevent upgrade between swconfig and DSA for mvebu. Just define a compat version with minor increment and an appropriate message for both image (in Makefile) and device (in base-files). Having taken care of sysupgrade, we can put back the SUPPORTED_DEVICES that have been removed in previous patches to prevent broken config. Attention: All users that already updated to the DSA versions in master will receive the same incompatibility warning since their devices are still "1.0" as far as fwtool can tell. Those, and only those, can bypass the upgrade check by using force (-F) without having to reset config again. In addition, the new version string needs to be put into uci config manually, so the new fwtool knows that it actually deals with a "1.1": uci set "system.@system[-1].compat_version=1.1" uci commit system Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add support for JS76x8 series DEV boardsRobinson Wu2020-07-316-4/+205
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the Jotale JS76x8 series development boards. These devices have the following specifications: - SOC: MT7628AN/NN, MT7688AN, MT7628DAN - RAM of MT7628AN/NN and MT7688AN: 64/128/256 MB (DDR2) - RAM of MT7628DAN: 64 MB (DDR2) - FLASH:8/16/32 MB (SPI NOR) - Ethernet:3x 10/100 Mbps ethernet ports (MT76x8 built-in switch) - WIFI:1x 2T2R 2.4 GHz Wi-Fi - LEDs:1x system status green LED, 1x wifi green LED, 3x ethernet green LED - Buttons:1x reset button - 1x microSD slot - 4x USB 2.0 port - 1x mini-usb debug UART - 1x DC jack for main power (DC 5V) - 1x TTL/RS232 UART - 1x TTL/RS485 UART - 13x GPIO header - 1x audio codec(wm8960) Installation via OpenWrt: The original firmware is OpenWrt, so both LuCI and sysupgrade can be used. Installation via U-boot web: 1. Power on board with reset button pressed, release it after wifi led start blinking. 2. Setup static IP 192.168.1.123/4 on your PC. 3. Go to 192.168.1.8 in browser and upload "sysupgrade" image. Installation via U-boot tftp: 1. Connect to serial console at the mini usb, which has been connected to UART0 on board (115200 8N1) 2. Setup static IP 192.168.1.123/4 on your PC. 3. Place openwrt-firmware.bin on your PC tftp server (192.168.1.123). 3. Connect one of LAN ports on board to your PC. 4. Start terminal software (e.g. screen /dev/ttyUSB0 115200) on PC. 5. Apply power to board. 6. Interrupt U-boot with keypress of "2". 7. At u-boot prompts: Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N) Y Input device IP (192.168.1.8) ==:192.168.1.8 Input server IP (192.168.1.123) ==:192.168.1.123 Input Linux Kernel filename (root_uImage) ==:openwrt-firmware.bin 8. board will download file from tftp server, write it to flash and reboot. Signed-off-by: Robinson Wu <wurobinson@qq.com> [add license to DTS files, fix state_default and reduce to the mimimum, move phy0tpt trigger to DTS, drop ucidef_set_led_timer, fix network ports] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: limit 5GHz channels for RAVPower RP-WD009David Bauer2020-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | When selecting a channel below 100 on the 5GHz radio, the channel will be detected as busy all the time. Survey data from wlan1 frequency: 5240 MHz [in use] channel active time: 165729 ms channel busy time: 158704 ms channel transmit time: 0 ms Channels 100 and above work fine: Survey data from wlan1 frequency: 5500 MHz channel active time: 133000 ms channel busy time: 21090 ms channel transmit time: 0 ms Limit the available channels, so users do not have the impression their device is broken. Signed-off-by: David Bauer <mail@david-bauer.net>
* treewide: mark devices as BROKEN instead of commenting outPetr Štetiar2020-07-302-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the newly introduced BROKEN flag to a bunch of devices that previously just had TARGET_DEVICES commented out. By this, we can select them in make menuconfig when BROKEN developer config option is selected, instead of having to edit the code. In contrast to DEFAULT := n, this is meant to cover devices that don't boot or don't compile at all. ath25: np25g, wpe53g both disabled during kernel bump 3.18->4.4 without reason given f89a20a89aeb ("ath25: update kernel from 3.18 to 4.4") bcm53xx: linksys-ea6300-v1, linksys-ea9200, linksys-ea9500 broken due to insufficient/broken TRX support 55ff15cfd509 ("bcm53xx: disable building Linksys EA6300 V1 image") cd0f9900a4cd ("bcm53xx: parepare for building more Linksys images") bcm63xx: tplink-archer-c5-v2, tplink-archer-c9-v1 disabled when kernel 5.4 support was added, probably broken 50c6938b95a0 ("bcm53xx: add v5.4 support") Signed-off-by: Petr Štetiar <ynezz@true.cz> [limit to subset of devices, use BROKEN, adjust commit message/title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: use DEFAULT := n to disable non-broken devicesPetr Štetiar2020-07-303-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This uses DEFAULT := n on a bunch of devices that previously were "disabled" by commenting out TARGET_DEVICES. This will allow to build them without having to modify the code, but they will not be selected for default build or buildbots. The change is applied to all devices that are not "broken", but suffer from image site limitations or similar, or have been added in the past but never confirmed to run on the device properly: at91: at91-q5xr5: kernel image too big 31aeae077482 ("at91: do not build image for at91-q5xr5") bcm47xx: asus-rt-ac66u: disabled since it was added in 2015 69aefc771fd8 ("brcm47xx: build images for Asus devices") bcm47xx: netgear-wndr3400-vcna, netgear-wnr3500u, netgear-wnr3500-v2-vc added disabled in 2012, but never confirmed to work on devices 5dec9dd3b200 ("brcm47xx: add code to generate images for some netgear devices") bcm53xx: netgear-r8500 added disabled: "start working on Netgear R8500" 3b76c7cf0bdd ("bcm53xx: start working on Netgear R8500") Signed-off-by: Petr Štetiar <ynezz@true.cz> [limit to subset of devices, adjust commit message/title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: cosmetic fixes for partition node of D-Link DIR-825 B1Adrian Schmutzler2020-07-301-1/+1
| | | | | | | Make the node name match the reg property and remove the unused DT label. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: clean-up build-configurable kernel config symbolsDaniel Golle2020-07-303-27/+0
| | | | | | | | | Don't explicitely disable options in target/linux/generic/config-* if they are already controlled in config/Config-kernel.in. Add a bunch of new symbols and prepare defaults for using only unified hierarchy (ie. cgroup2). Update symbol dependencies while at it Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: add support for gl-e750Luochongjun2020-07-294-1/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The gl-e750 is a portable travel router that gives you safe access to the internet while traveling. Specifications: - SoC: Qualcomm Atheros AR9531 (650MHz) - RAM: 128 MB DDR2 - Flash: 16 MB SPI NOR (W25Q128FVSG) + 128 MB SPI NAND (GD5F1GQ4UFYIG) - Ethernet: 10/100: 1xLAN - Wireless: QCA9531 2.4GHz (bgn) + QCA9887 5GHz (ac) - USB: 1x USB 2.0 port - Switch: 1x switch - Button: 1x reset button - OLED Screen: 128*64 px MAC addresses based on vendor firmware: LAN *:a0 art 0x0 2.4GHz *:a1 art 0x1002 5GHz *:a2 art calculated from art 0x0 + 2 Flash firmware: Since openwrt's kernel already exceeds 2MB, upgrading from the official version of GL-inet (v3.100) using the sysupgrade command will break the kernel image. Users who are using version 3.100 can only upgrade via uboot. The official guidance for GL-inet is as follows: https://docs.gl-inet.com/en/3/troubleshooting/debrick/ In the future, GL-inet will modify the firmware to support the sysupgrade command, so users will be able to upgrade directly with the sysupgrade command in future releases. OLED screen control: OLED controller is connected to QCA9531 through serial port, and can send instructions to OLED controller directly through serial port. Refer to the links below for a list of supported instructions: https://github.com/gl-inet/GL-E750-MCU-instruction Signed-off-by: Luochongjun <luochongjun@gl-inet.com> [fix alphabetic sorting in 10-fix-wifi-mac, drop check-kernel-size] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* lantiq: disable default build for devices with 4M flashAdrian Schmutzler2020-07-294-1/+13
| | | | | | | | | | | It has been decided that the 19.07 release will be last one to include 4/32 devices. This disables default build for all devices with 4M flash on lantiq. Note that this will affect _all_ devices for amazonse ("ase") and xway_legacy subtarget. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: disable default build for devices with 4M flashAdrian Schmutzler2020-07-291-0/+4
| | | | | | | | | | | | | | | It has been decided that the 19.07 release will be last one to include 4/32 devices. This disables default build for the remaining devices with 4M flash on ath79. Note that this will leave exactly one enabled device for ath79/tiny subtarget, PQI Air-Pen, which was moved there due to kernel size restrictions. All 4M TP-Link devices have already been disabled in 8819faff47ff ("ath79: do not build TP-Link tiny images by default") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: reorganize common image definitions for NetgearAdrian Schmutzler2020-07-293-26/+21
| | | | | | | | | | | | | Netgear currently has a special definition for tiny devices, which is only used by two devices. Despite, it sets ups the IMAGE/default definition individually for all devices, although there is actually only one exception. This merges the common parts into a single netgear_generic definition (in contrast to netgear_ath79_nand), and adjusts the individual definitions accordingly. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rockchip: enable rockchip-thermalDavid Bauer2020-07-291-1/+1
| | | | | | | | | Enable the rockchip-thermal driver to allow reading the temperature of the SoC. Tested on NanoPi R2S Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: distribute net interruptsDavid Bauer2020-07-281-0/+30
| | | | | | | | | | | | This adds a hotplug script for distributing interrupts of eth0 and eth1 across different cores. Otherwise the forwarding performance between eth0 and eth1 is severely affected. The existing SMP distribution mechanic in OpenWrt can't be used here, as the actual device IRQ has to be moved to dedicated cores. In case of eth1, this is in fact the USB3 controller. Signed-off-by: David Bauer <mail@david-bauer.net>
* arm64: dts: rockchip: Add txpbl node for RK3399/RK3328David Bauer2020-07-281-0/+54
| | | | | | | | | | | | | | | | | | | | Some rockchip SoCs like the RK3399 and RK3328 exhibit an issue where tx checksumming does not work with packets larger than 1498. The default Programmable Buffer Length for TX in these GMAC's is not suitable for MTUs higher than 1498. The workaround is to disable TX offloading with 'ethtool -K eth0 tx off rx off' causing performance impacts as it disables hardware checksumming. This patch sets snps,txpbl to 0x4 which is a safe number tested ok for the most popular MTU value of 1500. For reference, see https://lkml.org/lkml/2019/4/1/1382. Signed-off-by: Carlos de Paula <me@carlosedp.com> Link: https://lore.kernel.org/r/20200218221040.10955-1-me@carlosedp.com Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: enable LAN LED configurationDavid Bauer2020-07-283-0/+156
| | | | | | This enables the LEDs on the LAN interfaces. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: add NanoPi R2S supportDavid Bauer2020-07-289-6/+609
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- RockChip RK3328 ARM64 (4 cores) 1GB DDR4 RAM 2x 1000 Base-T 3 LEDs (LAN / WAN / SYS) 1 Button (Reset) Micro-SD slot USB 2.0 Port Installation ------------ Uncompress the OpenWrt sysupgrade and write it to a micro SD card using dd. MAC-address ----------- The vendor code supports reading a MAC address from an EEPROM connected via i2c0 of the SoC. The EEPROM (address 0x51) should contain the MAC address in binary at offset 0xfa. However, my two units didn't come with such an EEPROM soldered on. The EEPROM should be placed between the SoC and the GPIO pins on the board. (U10) Generating rendom MAC addresses works around this issue. Otherwise, all boards running the same image have identical MAC addresses. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: allow for multiple boot-scriptsDavid Bauer2020-07-281-1/+1
| | | | | | | | Add support for select a bootscript depending on the device built. This is necessary, as the FriendlyARM NanoPi R2S needs a different bootcmd in order to produce output on the debug UART. Signed-off-by: David Bauer <mail@david-bauer.net>
* arc770: update kernel version to 5.4Adrian Schmutzler2020-07-273-1/+231
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update config with make kernel_oldconfig and copy/refresh patch. Add CONFIG_WATCHDOG_CORE=y to fix the following error as done for several targets already: Package kmod-hwmon-sch5627 is missing dependencies for the following libraries: watchdog.ko Directly switch to kernel 5.4. This patch is compile-tested only. However, the target is essentially pure upstream with a single patch, and it has been reported that kernel 5.4 has been run on this target successfully already. Note that in my local tests building with all packages/kmods failed since openvswitch selects libunwind, which doesn't build for arc with the following error: checking if we should build libunwind-ptrace... yes checking if we should build libunwind-setjmp... yes checking for build architecture... x86_64 checking for host architecture... arc checking for target architecture... arc checking for target operating system... linux-gnu checking for ELF helper width... configure: error: Unknown ELF target: arc make[3]: *** [Makefile:65: /data/openwrt/build_dir/target-arc_arc700_uClibc/ libunwind-1.3.1/.configured_68b329da9893e34099c7d8ad5cb9c940] Error 1 Deselecting all kmod-openvswitch* packages will have the build run through. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* lantiq: fix cosmetic issues with partition offsets and sizesAdrian Schmutzler2020-07-276-8/+8
| | | | | | | This fixes a few cosmetic issues with partition offset and size that are inconsistent probably due to copy/pasting. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add support for D-Link DIR-1960 A1Josh Bendavid2020-07-275-0/+247
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for D-Link DIR-1960 A1. Given the similarity with the DIR-1760/2660 A1, this patch also introduces a common DTSI which can be shared with these devices, with support to be added in future commits. Specifications: * Board: AP-MTKH7-0002 * SoC: MediaTek MT7621AT * RAM: 256 MB (DDR3) * Flash: 128 MB (NAND) * WiFi: MediaTek MT7615N (x2) * Switch: 1 WAN, 4 LAN (Gigabit) * Ports: 1 USB 3.0 * Buttons: Reset, WPS * LEDs: Power (white/orange), Internet (white/orange), WiFi 2.4G (white), WiFi 5G (white), USB 3.0 (white) Notes: * WiFi 2.4G and WiFi 5G LEDs are wired directly to the wireless chips Installation: * D-Link Recovery GUI: power down the router, press and hold the reset button, then re-plug it. Keep the reset button pressed until the power LED starts flashing orange, manually assign a static IP address under the 192.168.0.xxx subnet (e.g. 192.168.0.2) and go to http://192.168.0.1 * Some modern browsers may have problems flashing via the Recovery GUI, if that occurs consider uploading the firmware through cURL: curl -v -i -F "firmware=@file.bin" 192.168.0.1 MAC addresses: lan factory 0xe000 *:EB (label) wan factory 0xe006 *:EE 2.4 factory 0xe000 +1 *:EC 5.0 factory 0xe000 +2 *:ED Seems like vendor didn't replace the dummy entrys in the calibration data. Signed-off-by: Josh Bendavid <joshbendavid@gmail.com> [fix whitespace issues, create patch to merge DIR-1960 first, move special WiFi MAC settings to DTS, extend commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>