openwrt/openwrt.git
3 years agotools/cmake: update to 3.18.2
Hannu Nyman [Sun, 23 Aug 2020 14:11:11 +0000 (17:11 +0300)]
tools/cmake: update to 3.18.2

Update cmake to version 3.18.2.
Refresh patches.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
3 years agotools/mpfr: update to 4.1.0
Hannu Nyman [Sun, 23 Aug 2020 14:08:14 +0000 (17:08 +0300)]
tools/mpfr: update to 4.1.0

Update mpfr to version 4.1.0.
Refresh patches.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
3 years agobuild: SDK/IB reproducible and faster compression
Paul Spooren [Thu, 13 Aug 2020 23:46:43 +0000 (13:46 -1000)]
build: SDK/IB reproducible and faster compression

Both IB and SDK now use the same logic for packing.

This commit add reproducible multithread compression to the SDK and
corrects the file mtime for both. Previously all files where just copied
over from the build system, generating random mtimes.

Signed-off-by: Paul Spooren <mail@aparcar.org>
3 years agotools/bison: update to 3.7.1
Hannu Nyman [Sat, 22 Aug 2020 15:19:20 +0000 (18:19 +0300)]
tools/bison: update to 3.7.1

Update GNU bison to version 3.7.1.
Refresh patches.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
3 years agocurl: disable zstd support
Hans Dedecker [Sun, 23 Aug 2020 08:47:04 +0000 (10:47 +0200)]
curl: disable zstd support

Fixes package libcurl build issue :

Package libcurl is missing dependencies for the following libraries:
libzstd.so.1

Suggested-by: Syrone Wong <wong.syrone@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
3 years agomt76: update to the latest version
Felix Fietkau [Sat, 22 Aug 2020 19:23:42 +0000 (21:23 +0200)]
mt76: update to the latest version

8027c7d95274 mt76: mt7615: fix reading airtime statistics
3743e7c904de mt76: mt7915: optimize mt7915_mac_sta_poll
d2fe5e8330c6 mt76: mt7915: fix variable initialization in sta poll
692065b4c9db mt76: mt7915: only enable hw amsdu for AP and station
b54157df7c27 mt7615: update firmware to version 20200814
888990e159d2 mt76: use threaded NAPI
3a3306e408f2 mt76: mt7915: add 802.11 encap offload support
795b772cd392 mt76: mt7915: add encap offload for 4-address mode stations
55d79ab7fa23 mt76: dma: update q->queued immediately on cleanup
23dbd64d6324 mt76: mt7915: schedule tx tasklet in mt7915_mac_tx_free
5cf34cda70af mt76: mt7915: significantly reduce interrupt load
87a69429069f mt76: add utility functions for deferring work to a kernel thread
2f1318a06d0a mt76: convert from tx tasklet to tx worker thread
72f0979566be mt76: mt7915: add support for accessing mapped registers via bus ops
f9ce5c776c9a mt76: use ieee80211_rx_list to pass frames to the network stack as a batch
25dd8bdae3bf mt76: mt7615: significantly reduce interrupt load
7c5445dec812 mt76: mt7615: release mutex in mt7615_reset_test_set
e68c3e254822 mt76: mt7663s: use NULL instead of 0 in sdio code
4368380e20e7 mt76: mt7663s: fix resume failure
bea386f27914 mt76: mt7663s: fix unable to handle kernel paging request
b8780c44c716 mt76: mt7615: fix possible memory leak in mt7615_tm_set_tx_power
37a1c7ed6796 mt76: mt7615: fix a possible NULL pointer dereference in mt7615_pm_wake_work
8c7c1a207d25 mt76: fix a possible NULL pointer dereference in mt76_testmode_dump

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoath79: fix/improve LED control for TL-WPA8630 v1/v2
Joe Mullally [Fri, 21 Aug 2020 06:02:23 +0000 (07:02 +0100)]
ath79: fix/improve LED control for TL-WPA8630 v1/v2

The TL-WPA8630 v1 and v2 have the same LED Control GPIO configuration
according to the TP-Link GPL sources. Set the GPIO to output to make
it work and set to Active Low. It defaults to LEDs on at bootup.

To turn all LEDs off:
  echo 0 > /sys/class/gpio/tp-link\:led\:control/value
To turn all LEDs on:
  echo 1 > /sys/class/gpio/tp-link\:led\:control/value

Change the "LED" button from BTN_0 to KEY_LIGHTS_TOGGLE to match other
devices and the button guide, and to reduce the number of unintuitive
"BTN_X" inputs.

Fixes: ab74def0db93 ("ath79: add support for TP-Link TL-WPA8630P v2")
Signed-off-by: Joe Mullally <jwmullally@gmail.com>
[shorten commit title, minor commit message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoipq806x: create shared DTSI for EA7500 v1 and EA8500
Adrian Schmutzler [Fri, 14 Aug 2020 15:10:00 +0000 (17:10 +0200)]
ipq806x: create shared DTSI for EA7500 v1 and EA8500

Most of the definitions for the two devices are shared, so put
them in a shared DTSI.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomac80211: rework encapsulation offload support
Felix Fietkau [Mon, 17 Aug 2020 16:27:25 +0000 (18:27 +0200)]
mac80211: rework encapsulation offload support

Fix a number of deficiencies in the existing API

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agokernel: add patch that adds support for running threaded NAPI poll functions
Felix Fietkau [Sun, 26 Jul 2020 13:24:42 +0000 (15:24 +0200)]
kernel: add patch that adds support for running threaded NAPI poll functions

This is helps on workloads with CPU intensive poll functions (e.g. 802.11)
on multicore systems

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agouml: update to linux 5.4
Felix Fietkau [Thu, 20 Aug 2020 15:14:36 +0000 (17:14 +0200)]
uml: update to linux 5.4

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agocurl: update to version 7.72.0
Josef Schlehofer [Fri, 21 Aug 2020 15:17:47 +0000 (17:17 +0200)]
curl: update to version 7.72.0

Changes in this version can be found here:
https://curl.haxx.se/changes.html#7_72_0

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
3 years agokernel: backport a fix for a regression that broke IRQ affinity on ARM
Felix Fietkau [Fri, 21 Aug 2020 18:44:25 +0000 (20:44 +0200)]
kernel: backport a fix for a regression that broke IRQ affinity on ARM

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agomac80211: add missing return code checks in AQL improvements
Felix Fietkau [Fri, 21 Aug 2020 16:06:50 +0000 (18:06 +0200)]
mac80211: add missing return code checks in AQL improvements

Fixes throughput issues with some drivers (e.g. ath10k)

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoramips: remove legacy ethernet driver components for mt7621
Adrian Schmutzler [Fri, 14 Aug 2020 10:01:31 +0000 (12:01 +0200)]
ramips: remove legacy ethernet driver components for mt7621

The mt7621 subtarget has been switched to DSA quite a while ago and
seems to run sufficiently fine. Build with older kernels than 5.4 has
been disabled directly during the kernel bump, so our local ethernet
driver is unused in master since then.

Therefore, let's remove the mt7621-specific parts of "our" ethernet
driver, so we don't have to maintain them and it's obvious to
everybody that they are not used anymore.

This also drops the offloading components as this was specifically
implemented to depend on mt7621.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agopistachio: use generic diag.sh
Adrian Schmutzler [Thu, 20 Aug 2020 20:18:41 +0000 (22:18 +0200)]
pistachio: use generic diag.sh

Remove local diag.sh in favor of generic one and add the required
led-* aliases to DTS.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agopistachio: use vendor_model scheme for device/image name
Adrian Schmutzler [Thu, 20 Aug 2020 20:18:40 +0000 (22:18 +0200)]
pistachio: use vendor_model scheme for device/image name

This uses the vendor_model scheme for the device/image name in
order to make this consistent to most other targets.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agopistachio: Add kmod-ca8210 wpan-tools by default
Hauke Mehrtens [Fri, 21 Aug 2020 09:04:57 +0000 (11:04 +0200)]
pistachio: Add kmod-ca8210 wpan-tools by default

A ca8210 chip is soldered onto the board, add the driver by default.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agopistachio: Add SC16IS7XX device driver
Hauke Mehrtens [Sat, 15 Aug 2020 14:45:16 +0000 (16:45 +0200)]
pistachio: Add SC16IS7XX device driver

This device is used to control extra UARTs and LEDs on the board.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agopistachio: Add extra devices to dts file
Hauke Mehrtens [Sat, 15 Aug 2020 14:42:29 +0000 (16:42 +0200)]
pistachio: Add extra devices to dts file

This adds some extra devices to the DTS file.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agopistachio: Add mtd device name from dts
Hauke Mehrtens [Wed, 12 Aug 2020 22:45:12 +0000 (00:45 +0200)]
pistachio: Add mtd device name from dts

Parse the "linux,mtd-name" property also for SPI NAND flashes.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agopistachio: Fix Null pointer access in pwm-img.c
Hauke Mehrtens [Tue, 11 Aug 2020 22:52:36 +0000 (00:52 +0200)]
pistachio: Fix Null pointer access in pwm-img.c

This fixes a crash when booting the board.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agopistachio: Make patches and configuration apply on to of 5.4
Hauke Mehrtens [Sun, 9 Aug 2020 17:47:17 +0000 (19:47 +0200)]
pistachio: Make patches and configuration apply on to of 5.4

This refreshes the patches, removes patches already applied upstream and
removes the SPI NAND framework to use the upstream version.

In addition it also refreshes the kernel configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agopistachio: Copy kernel 4.14 to 5.4
Hauke Mehrtens [Sun, 9 Aug 2020 17:27:48 +0000 (19:27 +0200)]
pistachio: Copy kernel 4.14 to 5.4

This only copies the patches and configuration without doing any
modification to the files.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agokernel: Add GigaDevice GD5F4GQ4xC SPI NAND flash
Hauke Mehrtens [Sat, 15 Aug 2020 17:34:00 +0000 (19:34 +0200)]
kernel: Add GigaDevice GD5F4GQ4xC SPI NAND flash

This flash was found on the Imagination Technologies Creator Ci40 (Marduk).

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agokernel: wpan: Add kmod-ca8210
Hauke Mehrtens [Sat, 15 Aug 2020 14:44:23 +0000 (16:44 +0200)]
kernel: wpan: Add kmod-ca8210

This device is found on the pistachio marduk board.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agokernel: wpan: Add missing AUTOLOAD to load kernel module
Hauke Mehrtens [Sat, 15 Aug 2020 14:43:19 +0000 (16:43 +0200)]
kernel: wpan: Add missing AUTOLOAD to load kernel module

These kernel modules were not loaded automatically, fix this by adding
the AUTOLOAD definition.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agoath79: add support for TP-Link TL-WR710N v2.1
Adrian Schmutzler [Tue, 18 Aug 2020 11:49:15 +0000 (13:49 +0200)]
ath79: add support for TP-Link TL-WR710N v2.1

This adds support for the TP-Link TL-WR710N v2.1. It is basically a
re-issue of the v1.2.

Specifications:

SoC:       Atheros AR9331
CPU:       400 MHz
Flash:     8 MiB
RAM:       32 MiB
WiFi:      2.4 GHz b/g/n
Ethernet:  2x 100M ports
USB:       1x 2.0

The only difference from the v1 is the TP-Link hardware ID/revision.

Attention:
The TL-WR710N v2.0 (!) has only 4 MB flash and cannot be flashed with
this image. It has a different TPLINK_HWREV, so accidental flashing
of the factory image should be impossible without additional measures.

Unfortunately, the v2.0 in ar71xx has the same board name, so sysupgrade
from ar71xx v2.0 into ath79 v1/v2.1 will not be prevented, but will brick
the device.

Flashing instruction:

Upload the factory image via the OEM firmware GUI upgrade mechanism.

Further notes:

To make implementation easier if somebody desires to port the 4M v2.0,
this already creates two DTSI files.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Fabian Eppig <fabian@eppig.de>
3 years agolantiq: remove vmmc node from FritzBox 7412 dts
Aleksander Jan Bajkowski [Tue, 18 Aug 2020 20:25:38 +0000 (22:25 +0200)]
lantiq: remove vmmc node from FritzBox 7412 dts

As described in commit commit 891a7007598d ("lantiq: enable second VPE
on Fritz!Box 7412"):

 The AVM Fritz!Box 7412 does not use the VMMC part of the Lantiq chip but
 rather a proprietary solution based on the DECT chip for the FXS ports.

We can remove last traces of vmmc in dts.

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
3 years agodnsmasq: abort dhcp_check on interface state
David Bauer [Tue, 18 Aug 2020 13:09:22 +0000 (15:09 +0200)]
dnsmasq: abort dhcp_check on interface state

Abort the dhcp-check based on the interface instead of the carrier
state. In cases where the interface is up but the carrier is down,
netifd won't cause a dnsmasq reload, thus dhcp won't become active
on this interface.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agokernel: bump 5.4 to 5.4.59
Adrian Schmutzler [Wed, 19 Aug 2020 11:25:42 +0000 (13:25 +0200)]
kernel: bump 5.4 to 5.4.59

Removed since added upstream:
  bcm27xx:
    950-0428-staging-vchiq_arm-Add-a-matching-unregister-call.patch
  lantiq:
    0800-spi-lantiq-ssc-Fix-warning-by-using-WQ_MEM_RECLAI.patch

Manually adjusted patches:
  layerscape:
    801-audio-0005-Revert-ASoC-fsl_sai-Add-support-for-SAI-new-version.patch

Build-tested: ath79/generic, ramips, lantiq/xrx200, lantiq/xway,
   mvebu/cortexa9, sunxi/a53
Run-tested: ipq806x (R7800), layerscape (LS1012A-FRDM, LS1046A-RDB)

Building on layerscape is only possible with workaround from PR #3179.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-By: John Audia <graysky@archlinux.us> [ipq806x]
Tested-by: Pawel Dembicki <paweldembicki@gmail.com> [layerscape]
3 years agolayerscape: remove useless pairs of kernel patches
Adrian Schmutzler [Wed, 19 Aug 2020 13:41:30 +0000 (15:41 +0200)]
layerscape: remove useless pairs of kernel patches

The layerscape kernel patches appears to be just some uncleaned local
development tree, where patches are sometimes directly followed by
their revert. While this does not seem a problem in the first place,
it becomes incredibly unpleasant when the upstream kernel changes in
the relevant areas and requires rebase.

This removes all these patch-revert pairs and refreshs the rest.

It removes about 44000 lines of entirely useless code.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agotreewide: use wpad-basic-wolfssl as default
Petr Štetiar [Mon, 27 Jul 2020 10:30:41 +0000 (12:30 +0200)]
treewide: use wpad-basic-wolfssl as default

In order to support SAE/WPA3-Personal in default images. Replace almost
all occurencies of wpad-basic and wpad-mini with wpad-basic-wolfssl for
consistency. Keep out ar71xx from the list as it won't be in the next
release and would only make backports harder.

Build-tested (build-bot settings):
ath79: generic, ramips: mt7620/mt76x8/rt305x, lantiq: xrx200/xway,
sunxi: a53

Signed-off-by: Petr Štetiar <ynezz@true.cz>
[rebase, extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm27xx: remove no-op patch pair
Adrian Schmutzler [Wed, 19 Aug 2020 11:49:30 +0000 (13:49 +0200)]
bcm27xx: remove no-op patch pair

Patch 1 introduces a change, and patch 2 reverts it again. Remove
both patches and achieve the same outcome.

Refreshed patches for the target as well.

Cc: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Acked-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agomap: rename type to maptype (FS#3287)
Remi NGUYEN VAN [Sat, 15 Aug 2020 14:03:26 +0000 (23:03 +0900)]
map: rename type to maptype (FS#3287)

"type" is already used as a common option for all protocols types, so
using the same option name for the map type makes the configuration
ambiguous. Luci in particular adds controls for both options and sees
errors when reading the resulting configuration.

Use "maptype" instead, but still fallback to "type" if "maptype" is not
set. This allows configurations to migrate without breaking old
configurations.

This addresses FS#3287.

Signed-off-by: Remi NGUYEN VAN <remi.nguyenvan+openwrt@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
3 years agotools/tplink-safeloader: use soft_ver 1.9.1 for archer c6 v2
Alexander Couzens [Mon, 3 Aug 2020 21:51:53 +0000 (23:51 +0200)]
tools/tplink-safeloader: use soft_ver 1.9.1 for archer c6 v2

TP-LINK published a firmware update for the archer c6 v2.
This updates also reached the factory devices. Newer software version
rejects downgrading to 1.2.x. Use 1.9.x to allow installing the factory images
and have a little bit time to change it again.

Tested on archer c6 v2 with firmware 1.3.1

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
3 years agokernel: bump 5.4 to 5.4.58
John Audia [Tue, 11 Aug 2020 16:13:19 +0000 (12:13 -0400)]
kernel: bump 5.4 to 5.4.58

This PR is a blend of several kernel bumps authored by ldir taken from his
staging tree w/ some further adjustments made by me and update_kernel.sh

Summary:
Deleted upstreamed patches:
  generic:
    742-v5.5-net-sfp-add-support-for-module-quirks.patch
    743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch
  bcm63xx:
    022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch
    024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch
  mediatek:
    0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch

Deleted patches applied differently upstream:
  generic:
    641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch

Manually merged patches:
  generic:
    395-v5.8-net-sch_cake-Take-advantage-of-skb-hash-where-appropriate.patch
  bcm27xx:
    950-0132-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch
  layerscape:
    701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch

Build system: x86_64
Build-tested: ath79/generic, bcm27xx/bcm2708, bcm27xx/bcm2711,
  imx6, mvebu/cortexa9, sunxi/a53
Run-tested: Netgear R7800 (ipq806x)

No dmesg regressions, everything functional

Signed-off-by: John Audia <graysky@archlinux.us>
Tested-By: Lucian Cristian <Lucian.cristian@gmail.com> [mvebu]
Tested-By: Curtis Deptuck <curtdept@me.com> [x86/64]
[do not remove 395-v5.8-net-sch_cake-Take-advantage-... patch,
adjust and refresh patches, adjust commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-By: John Audia <graysky@archlinux.us> [ipq806x]
3 years agoath79: mikrotik: erase firmware on SPI NOR before install
Thibaut VARÈNE [Mon, 17 Aug 2020 10:44:13 +0000 (12:44 +0200)]
ath79: mikrotik: erase firmware on SPI NOR before install

On Mikrotik SPI NOR devices, the firmware partition must be erased when
flashing from stock firmware, otherwise leftover bits (in particular a
kernel signature) can trigger a boot loop.

When booted from initramfs (the only way to install OpenWRT on these
devices), this patch unconditionally erases the firmware partition in
the do_upgrade() stage for all supported SPI NOR devices.

This is forward-ported from ed49d0876 and 20452a8db

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
3 years agogeneric: platform/mikrotik: fix incorrect test
Thibaut VARÈNE [Tue, 18 Aug 2020 09:57:31 +0000 (11:57 +0200)]
generic: platform/mikrotik: fix incorrect test

The test is meant to check the result of the preceding kmalloc()

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
3 years agoRevert "bcm53xx: remove useless echo in 02_network"
Adrian Schmutzler [Tue, 18 Aug 2020 09:44:10 +0000 (11:44 +0200)]
Revert "bcm53xx: remove useless echo in 02_network"

This reverts commit b1f6a5d9dffd8da30800e9e66ea772554bbba778.

In this particular case, the echo command was _not_ useless, but
converted the newlines back to spaces.

Add a comment into the code to make that obvious for the next one
looking at it like me.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoltq-dsl-base: remove useless echos in lantiq_dsl.sh
Adrian Schmutzler [Mon, 17 Aug 2020 21:23:37 +0000 (23:23 +0200)]
ltq-dsl-base: remove useless echos in lantiq_dsl.sh

The is no reason to catch the output by $() and then echo it again.

Remove the useless echos.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm53xx: remove useless echo in 02_network
Adrian Schmutzler [Mon, 17 Aug 2020 21:16:58 +0000 (23:16 +0200)]
bcm53xx: remove useless echo in 02_network

The output is already produced in the inner $() brackets, no need
to catch and echo it again.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agorockchip: remove useless echo in 40-net-smp-affinity
Adrian Schmutzler [Mon, 17 Aug 2020 21:13:57 +0000 (23:13 +0200)]
rockchip: remove useless echo in 40-net-smp-affinity

The command in the $() brackets will already provide the same output.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoapm821xx: tidy up 10-fix-wifi-mac
Adrian Schmutzler [Mon, 17 Aug 2020 21:09:37 +0000 (23:09 +0200)]
apm821xx: tidy up 10-fix-wifi-mac

This applies some cosmetic style fixes:
- remove useless echo
- remove double equal sign (specific to bash)
- add quotes for -n check

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: fix syntax error in ar7240_tplink_tl-wa.dtsi
Adrian Schmutzler [Mon, 17 Aug 2020 16:26:55 +0000 (18:26 +0200)]
ath79: fix syntax error in ar7240_tplink_tl-wa.dtsi

The node needs to be terminated by a semicolon.

Fixes: 8484a764df20 ("ath79: ar724x: make sure builtin-switch is
enabled in DT")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: change WPS to Wifi button on TL-WPA8630P v2
Adrian Schmutzler [Sun, 16 Aug 2020 00:07:14 +0000 (02:07 +0200)]
ath79: change WPS to Wifi button on TL-WPA8630P v2

Both TL-WPA8630(P) v1 and v2 feature a button labelled "WiFi".
While this is implemented as KEY_RFKILL for v1 in ar71xx and ath79,
the v2 sets it up as WPS button.

According to the manual, the behavior in OEM firmware is:
"Press and hold the button for 1 second to copy wireless settings
from the main router to the extender. Go to Wi-Fi Clone for more
information. Press and hold the button for at least 5 seconds to
turn the wireless function on or off."

Consequently, and since this is historic behavior on v1 in OpenWrt,
we set this button to KEY_RFKILL on both revisions.

Fixes: ab74def0db93 ("ath79: add support for TP-Link TL-WPA8630P v2")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoipq806x: move further common nodes to the DTSI files
Adrian Schmutzler [Fri, 14 Aug 2020 14:31:40 +0000 (16:31 +0200)]
ipq806x: move further common nodes to the DTSI files

The moves a few additional common nodes to the common DTSI files
for qcom-ipq8064-v2.0 and qcom-ipq8065 devices.

Remove a few redundant definitions on the way.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: ar724x: make sure builtin-switch is enabled in DT
Adrian Schmutzler [Fri, 14 Aug 2020 13:09:29 +0000 (15:09 +0200)]
ath79: ar724x: make sure builtin-switch is enabled in DT

On ar7240/ar7241 the mdioX node with the builtin-switch is enabled
in the DTSI files, but the parent ethX node is left disabled. It
only gets enabled per device or device family, and has not been
enabled at all yet for the TP-Link WA devices with ar7240, making
the switch unavailable there.

This patch makes sure &eth0/&eth1 nodes are enabled together with
the &mdio0/&mdio1 nodes containing the builtin-switch.
For ar7240_tplink_tl-wa.dtsi, &eth0 is properly hidden again via
  compatible = "syscon", "simple-mfd";

This partially fixes FS#2887, however it seems dmesg still does
not show cable (dis)connect in dmesg for ar7240 TP-Link WA
devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoramips: fix LED labels for Asus RT-AC65P
Adrian Schmutzler [Mon, 17 Aug 2020 12:57:52 +0000 (14:57 +0200)]
ramips: fix LED labels for Asus RT-AC65P

The leds block was copied over from the RT-AC85P DTS to the common
DTSI while keeping the device-specific model name in the label.

This moves the LEDs back to the DTS files and adjusts the names to
properly resemble the model name of the devices used at, just like
it is handled on most other devices.

Fixes: 7c5f712e4fec ("ramips: add support for Asus RT-AC65P")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoat91: drop obsolete empty Makefiles
Adrian Schmutzler [Sun, 16 Aug 2020 23:22:36 +0000 (01:22 +0200)]
at91: drop obsolete empty Makefiles

This files have been emptied during subtarget consolidation, but
not removed. Remove them now.

Fixes: aff084adf339 ("at91: Merge SAMA5 subtargets")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoocteon: add support for Itus Shield Router
Donald Hoskins [Wed, 22 Jul 2020 09:26:33 +0000 (05:26 -0400)]
octeon: add support for Itus Shield Router

Itus Networks Shield - 1Ghz dual-core mips64 / Cavium Octeon 3 SoC,
1Gb RAM, 4Gb eMMC,3 GbE 10/100/1000 ports

Information regarding device can be found:
https://deviwiki.com/wiki/Itus_Networks_Shield_Pro

Installing OpenWrt on Itus Networks Shield:

1) Boot Shield
2) On device: mount /dev/mmcblk1p1 /mnt
3) scp openwrt-octeon-itus,shield-router-initramfs-kernel.bin to
   /mnt/ItusrouterImage
3a) Optionally: scp openwrt-octeon-itus,shield-router-initramfs-kernel.bin
    to /mnt/ItusgatewayImage to allow you to have an emergency recovery
    boot in the GATEWAY slot - this slot will have no permament storage and
    is used for emergency recovery only when booted in the (G)ateway
    position
4) On device: umount /mnt
5) reboot

Once booted, run the sysupgrade via cli or luCi on the
openwrt-octeon-itus,shield-router-squashfs-sysupgrade.tar file the mode
you are running.

Once rebooted, the system installation is complete. Your storage partition
for the mode is inialized and set.

Signed-off-by: Donald Hoskins <grommish@gmail.com>
[cut out sysupgrade-* changes, move a few lines,
drop case CVMX_BOARD_TYPE_ITUS_SHIELD]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoocteon: determine sysupgrade-* directory for upgrade automatically
Donald Hoskins [Sat, 15 Aug 2020 11:50:43 +0000 (13:50 +0200)]
octeon: determine sysupgrade-* directory for upgrade automatically

So far, the sysupgrade-* folder used during upgrade in octeon was
hardcoded to contain the board name. Therefore, changing board name
or BOARD_NAME variable in image/Makefile might have broken upgrade.

Improve this by adding a step to determine the folder name via
a wildcard, as it is done for generic nand_upgrade_tar() in
lib/upgrade/nand.sh.

While this still does not remove the problem for existing devices
(which still have the old script), it will entirely remove the
issue on newly added devices on this platform.

Signed-off-by: Donald Hoskins <grommish@gmail.com>
[split into separate patch, add commit message, add return values]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm63xx: reorganize board patches
Adrian Schmutzler [Sat, 15 Aug 2020 15:21:35 +0000 (17:21 +0200)]
bcm63xx: reorganize board patches

This renames board patches to make finding devices easier
and reorders them based on their board.

The devices are grouped based on the board/cpu_id. New device
patches should be numbered based on their group.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomap: add a legacymap option
Remi NGUYEN VAN [Sat, 15 Aug 2020 08:00:15 +0000 (17:00 +0900)]
map: add a legacymap option

The legacy map version based on the IPv6 Interface Identifier in
draft-ietf-softwire-map-03 was typically used by uncommenting the LEGACY
variable in the map.sh file, which is not ideal. A proper configuration
option is needed instead.

The IPv6 Interface Identifier format described in the draft was
eventually changed in RFC7597, but is still used by some major ISPs,
including in Japan.

Signed-off-by: Remi NGUYEN VAN <remi.nguyenvan+openwrt@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
3 years agodropbear: allow disabling support for scp
Rui Salvaterra [Sat, 15 Aug 2020 10:10:22 +0000 (11:10 +0100)]
dropbear: allow disabling support for scp

If not needed, disabling scp allows for a nice size reduction.

Dropbear executable size comparison:

153621 bytes (baseline)
133077 bytes (without scp)

In other words, we trim a total of 20544 bytes.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
3 years agoath79: add support for ALLNET ALL-WAP02860AC
Tomasz Maciej Nowak [Fri, 14 Aug 2020 16:03:40 +0000 (18:03 +0200)]
ath79: add support for ALLNET ALL-WAP02860AC

ALLNET ALL-WAP02860AC is a dual-band wireless access point.

Specification
SoC: Qualcomm Atheros QCA9558
RAM: 128 MB DDR2
Flash: 16 MB SPI NOR
WIFI: 2.4 GHz 3T3R integrated
      5 GHz 3T3R QCA9880 Mini PCIe card
Ethernet: 1x 10/100/1000 Mbps AR8035-A, PoE capable (802.3at)
LEDS: 5x, which four are GPIO controlled
Buttons: 1x GPIO controlled
UART: 4 pin header near Mini PCIe card, starting count from white
      triangle on PCB
      1. VCC 3.3V, 2. GND, 3. TX, 4. RX
      baud: 115200, parity: none, flow control: none

MAC addresses
Calibration data does not contain valid MAC addresses.
The calculated MAC addresses are chosen in accordance with OEM firmware.

Because of:
a) constrained environment (SNMP) when connecting through Telnet
   or SSH,
b) hard-coded kernel and rootfs sizes,
c) checksum verification of kerenel and rootfs images in bootloder,

creating factory image accepted by OEM web interface is difficult,
therefore, to install OpenWrt on this device UART connection is needed.
The teardown is simple, unscrew four screws to disassemble the casing,
plus two screws to separate mainboard from the casing.
Before flashing, be sure to have a copy of factory firmware, in case You
wish to revert to original firmware.

Installation
1. Prepare TFTP server with OpenWrt initramfs-kernel image.
2. Connect to LAN port.
3. Connect to UART port.
4. Power on the device and when prompted to stop autoboot, hit any key.
5. Alter U-Boot environment with following commands:
    setenv failsafe_boot bootm 0x9f0a0000
    saveenv
6. Adjust "ipaddr" and "serverip" addresses in U-Boot environment, use
   'setenv' to do that, then run following commands:
    tftpboot 0x81000000 <openwrt_initramfs-kernel_image_name>
    bootm 0x81000000
7. Wait about 1 minute for OpenWrt to boot.
8. Transfer OpenWrt sysupgrade image to /tmp directory and flash it
   with:
    sysupgrade -n /tmp/<openwrt_sysupgrade_image_name>
9. After flashing, the access point will reboot to OpenWrt. Wait few
   minutes, until the Power LED stops blinking, then it's ready for
   configuration.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
[add MAC address comment to commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: mips: fix init crash/bootloop on 64-bit systems
Tony Ambardar [Fri, 14 Aug 2020 14:43:36 +0000 (07:43 -0700)]
kernel: mips: fix init crash/bootloop on 64-bit systems

The malta subtargets for mips64 and mips64el fail to start the init process
at boot, resulting in a boot loop. The issue was raised and analyzed within
FS#3277. Investigation suggested code near the [vdso] memory area of the
process was long jumping into a region inaccessible to the process, e.g.

 init: - preinit -
 init: Launched preinit instance, pid=522
 do_page_fault(): sending SIGSEGV to init for invalid read access from 0000000000000360
 epc = 0000000000000360 in init[aaab42b000+4000]
 ra  = 000000fffee385e0 in
 Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
 Rebooting in 1 seconds..

Note the low-memory read access and epc are the same. Upstream kernel 5.6
included a relevant patch and discussion:

  * d3f703c4359f ("mips: vdso: fix 'jalr t9' crash in vdso code")

Disassembly of the failing kernel's vdso.so confirmed presence of the
telltale long jumps, e.g.:

00000000000007c0 <__vdso_clock_getres@@LINUX_2.6>:
 [...]
 7dc:   0320f809        jalr    t9
 [...]

Restore booting mips64/mips64el malta by backporting the above commit:
  * 310-v5.6-mips-vdso-fix-jalr-t9-crash-in-vdso-code.patch

Fixes: 54310a3aa02f ("malta: add kernel 5.4 config")
Fixes: FS#3277
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=3277

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
3 years agomac80211: add missing backports for building with 4.14 kernels
Felix Fietkau [Fri, 14 Aug 2020 14:32:23 +0000 (16:32 +0200)]
mac80211: add missing backports for building with 4.14 kernels

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agolibselinux: fix Makefile style
Daniel Golle [Fri, 14 Aug 2020 01:41:39 +0000 (02:41 +0100)]
libselinux: fix Makefile style

Also fix line order in libselinux Makefile.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agolibsepol: fix Makefile style
Daniel Golle [Fri, 14 Aug 2020 01:40:47 +0000 (02:40 +0100)]
libsepol: fix Makefile style

Fix line ordering (cosmetic).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agopcre: clean up Makefile line order
Daniel Golle [Fri, 14 Aug 2020 01:38:21 +0000 (02:38 +0100)]
pcre: clean up Makefile line order

The most recent patch added add lines in one block instead of in the
appropriate places to keep Makefiles in consistent style. Fix that.

Fixes: ff02e1561f ("pcre: add host variant of libpcre")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agopcre: add host variant of libpcre
Thomas Petazzoni [Tue, 14 Jul 2020 21:32:28 +0000 (16:32 -0500)]
pcre: add host variant of libpcre

This is needed to build the host variant of libselinux.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
3 years agoath79: add support for TP-Link TL-WPA8630 v1
Adrian Schmutzler [Thu, 9 Jul 2020 10:49:17 +0000 (12:49 +0200)]
ath79: add support for TP-Link TL-WPA8630 v1

This ports the TP-Link TL-WPA8630 v1 from ar71xx to ath79.

Specifications:

SoC: QCA9563
CPU: 750 MHz
Flash/RAM: 8 / 128 MiB
Ethernet: 3x 1G ports (QCA8337 switch)
WLAN: 2.4 GHz b/g/n, 5 GHz a/n/ac (ath10k)

Buttons, LEDs and network setup appear to be almost identical
to the v2 revision.

Powerline interface is connected to switch port 5 (Label LAN4).

Installation:

No "fresh" device was available for testing the factory image.

It is not known whether flashing via OEM firmware GUI is possible
or not. A discussion from 2018 [1] about that indicates a few
adjustments are necessary, but it is not clear whether those
are already implemented with the TPLINK_HEADER_VERSION = 2 or not.

Note that for the TL-WPA8630P v1, the TPLINK_HWID needs to be
changed to 0x86310001 to allow factory flashing.

[1] https://forum.openwrt.org/t/solved-tl-wpa8630p-lede-does-not-install/8161/27

Recovery:

Recovery is only possible via serial.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agompc85xx: tidy up 10-fix-wifi-mac
Adrian Schmutzler [Thu, 13 Aug 2020 18:22:30 +0000 (20:22 +0200)]
mpc85xx: tidy up 10-fix-wifi-mac

This applies some cosmetic style fixes, mostly by removing useless
echo commands.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agolibselinux: fix build on non-Linux systems
Felix Fietkau [Thu, 13 Aug 2020 18:04:34 +0000 (20:04 +0200)]
libselinux: fix build on non-Linux systems

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agolibsepol: fix build on non-Linux systems
Felix Fietkau [Thu, 13 Aug 2020 18:03:43 +0000 (20:03 +0200)]
libsepol: fix build on non-Linux systems

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agotools/coreutils: install ln
Felix Fietkau [Thu, 13 Aug 2020 18:02:50 +0000 (20:02 +0200)]
tools/coreutils: install ln

It is needed for libsepol on non-GNU systems

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agomac80211: add AQL improvements
Felix Fietkau [Wed, 12 Aug 2020 15:12:03 +0000 (17:12 +0200)]
mac80211: add AQL improvements

Add AQL support for HE drivers.
Improve assumed aggregation length based on tx rate

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agomt76: update to the latest version
Felix Fietkau [Thu, 13 Aug 2020 15:56:46 +0000 (17:56 +0200)]
mt76: update to the latest version

34aed01ca865 mt76: mt7915: use ieee80211_free_txskb to free tx skbs
efc8669db5f9 mt76: mt7915: fix max_mpdu_size field for A-MSDU

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agolibselinux: don't depend on kernel config symbols
Daniel Golle [Thu, 13 Aug 2020 13:05:26 +0000 (14:05 +0100)]
libselinux: don't depend on kernel config symbols

Dependencies are meant to express actual run-time dependencies and
strictly speaking, libselinux can be build and used on kernels without
SELinux (not in a very meaningful way, but never mind).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoprocd: remove duplicate confguration menu
Daniel Golle [Thu, 13 Aug 2020 13:04:30 +0000 (14:04 +0100)]
procd: remove duplicate confguration menu

Fixes: 962e73c1a4 ("procd: add selinux variant")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoiproute2: disable SELinux for now
Daniel Golle [Thu, 13 Aug 2020 12:59:01 +0000 (13:59 +0100)]
iproute2: disable SELinux for now

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoath79/mikrotik: add function for loading ath9k caldata
Adrian Schmutzler [Wed, 12 Aug 2020 12:40:00 +0000 (14:40 +0200)]
ath79/mikrotik: add function for loading ath9k caldata

The commands to read ath9k caldata on mikrotik subtarget are
mostly repetitive, so let's put them into a function to make
writing and reading them easier.

This function will only be required when patching the MAC address.
For cases where it is put correctly into the calibration data by
the vendor, caldata_sysfsload_from_file can be used directly as
done for ath10k at the moment.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoramips: add support for MikroTik RouterBOARD 760iGS (hEX S)
John Thomson [Wed, 10 Jun 2020 22:15:40 +0000 (08:15 +1000)]
ramips: add support for MikroTik RouterBOARD 760iGS (hEX S)

This patch adds support for the MikroTik RouterBOARD 760iGS router.
It is similar to the already supported RouterBOARD 750Gr3.
The 760iGS device features an added SFP cage, and passive
PoE out on port 5 compared to the RB750Gr3.

https://mikrotik.com/product/hex_s

Specifications:

- SoC: MediaTek MT7621A
- CPU: 880MHz
- Flash: 16 MB
- RAM:  256 MB
- Ethernet: 5x 10/100/1000 Mbps
- SFP cage
- USB port
- microSD slot

Unsupported:

- Beeper (requires PWM driver)
- ZT2046Q (ADS7846 compatible) on SPI as slave 1 (CS1)
  The linux driver requires an interrupt, and pendown GPIO
  These are unknown, and not needed with the touchscreen
  only used for temperature and voltage monitoring.
  ads7846 hwmon:
  temp0 is degrees Celsius
  temp1 is voltage * 32

GPIOs:

- 07:  input passive PoE out (lan5) compatible (Mikrotik) device connected
- 17:  output passive PoE out (lan5) switch

Installation through RouterBoot follows the usual MikroTik method
https://openwrt.org/toh/mikrotik/common

To boot to intramfs image in RAM:

1. Setup TFTP server to serve intramfs image.
2. Plug Ethernet cable into WAN port.
3. Unplug power, hold reset button and plug power in.
   Wait (~25 seconds) for beep and then release reset button.
   The SFP LED will be lit in RouterBoot, but will not be lit in OpenWRT.
4. Wait for a minute. Router should be running OpenWrt,
   check by plugging in to port 2-5 and going to 192.168.1.1.

To install OpenWrt to flash:

1. Follow steps above to boot intramfs image in RAM.
2. Flash the sysupgrade.bin image with web interface or sysupgrade.
3. Once the router reboots you will be running OpenWrt from flash.

OEM firmware differences:

- RouterOS assigns a different MAC address for each port
- The first address (E01 on the sticker) is used for wan (ether1 in OEM).
- The next address is used for lan2.
- The last address (E06 on the sticker) is used for sfp.

[Initial port work, shared dtsi]
Signed-off-by: Vince Grassia <vincenzo.grassia@zionark.com>
[SFP support and GPIO identification]
Signed-off-by: Luka Logar <luka.logar@iname.com>
[Misc. fixes and submission]
Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
[rebase, drop uart3 from state_default on 750gr3, minor commit
title/message facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoramips/mt7621: create common DTSI for Mikrotik devices
Adrian Schmutzler [Wed, 12 Aug 2020 18:10:12 +0000 (20:10 +0200)]
ramips/mt7621: create common DTSI for Mikrotik devices

This moves some common definitions for Mikrotik devices, mainly
routerboot partitions and reset key, to a common DTSI file.

While at it, remove unused hard_config DT label.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomusl-fts: import from packages feed
Daniel Golle [Thu, 13 Aug 2020 10:43:18 +0000 (11:43 +0100)]
musl-fts: import from packages feed

libselinux requires musl-fts to build with musl. Import it from
packages feed as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agopcre: import from packages feeds
Daniel Golle [Thu, 13 Aug 2020 10:27:39 +0000 (11:27 +0100)]
pcre: import from packages feeds

libselinux require pcre, import to to core so it can build without
packages feeds.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoprocd: add selinux variant
Paul Spooren [Wed, 12 Aug 2020 04:49:44 +0000 (18:49 -1000)]
procd: add selinux variant

This commit adds a `selinux` variant to `procd` allowing to load an
SELinux policy at boot.

Signed-off-by: Paul Spooren <mail@aparcar.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agolibselinux: add new package
Thomas Petazzoni [Tue, 11 Aug 2020 23:48:33 +0000 (18:48 -0500)]
libselinux: add new package

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[rebase, update to 3.1]
Signed-off-by: W. Michael Petullo <mike@flyn.org>
3 years agolibsepol: add new package
Thomas Petazzoni [Tue, 11 Aug 2020 14:43:51 +0000 (09:43 -0500)]
libsepol: add new package

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[rebase, update to 3.1]
Signed-off-by: W. Michael Petullo <mike@flyn.org>
3 years agoramips: use gpio-export for Mikrotik RouterBOARD 750Gr3 beeper
John Thomson [Mon, 10 Aug 2020 09:40:55 +0000 (19:40 +1000)]
ramips: use gpio-export for Mikrotik RouterBOARD 750Gr3 beeper

This beeper hardware requires a PWM driver for frequency selection.
Since the GPIO driver does not provide that, revert the beeper
support to a simple gpio-export.

This effectively reverts the corresponding changes from
6ba58b7b020c ("ramips: cleanup the RB750Gr3 support")

Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
[commit title/message facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: usb: move phy-qcom-ipq806x-usb to ipq806x modules.mk
Ansuel Smith [Sun, 9 Aug 2020 14:31:05 +0000 (16:31 +0200)]
kernel: usb: move phy-qcom-ipq806x-usb to ipq806x modules.mk

This driver is only used by ipq806x SoCs. Move it there and drop
dependency from ipq40xx since it's not used anywere.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[rebase on changes to previous patches]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Paul Blazejowski <paulb@blazebox.homeip.net> [R7800]
3 years agoipq806x: replace nvmem qcom patch with upstream version
Ansuel Smith [Mon, 10 Aug 2020 11:46:35 +0000 (13:46 +0200)]
ipq806x: replace nvmem qcom patch with upstream version

- Replace nvmem qcom patch with upstream version
- Update compatible

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[refresh patches, minor commit message rewording]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Paul Blazejowski <paulb@blazebox.homeip.net> [R7800]
3 years agoipq806x: replace phy dwc3 patch with upstream version
Ansuel Smith [Mon, 10 Aug 2020 11:56:15 +0000 (13:56 +0200)]
ipq806x: replace phy dwc3 patch with upstream version

- Replace dwc3 phy patch with upstream version
- Rework the dts to use the upstream bindings
- Update changed config flags
- Rename module to reflect config name

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[fix qcom,tx-deamp_3_5db typo, refresh patches, rename kmod]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Paul Blazejowski <paulb@blazebox.homeip.net> [R7800]
3 years agodropbear: fix ssh alternative when dbclient isn't built
Rui Salvaterra [Mon, 20 Jul 2020 22:26:42 +0000 (23:26 +0100)]
dropbear: fix ssh alternative when dbclient isn't built

The ssh symlink was still being created even when dbclient was disabled in the
build configuration. Fix this annoyance.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
3 years agoath79: routerboard-92x: ensure explicit bios size in DTSI
Adrian Schmutzler [Wed, 12 Aug 2020 14:49:34 +0000 (16:49 +0200)]
ath79: routerboard-92x: ensure explicit bios size in DTSI

The missing "size" property was acceptable in the context of a single
DTS as the underlying device is known to have a 64KB flash, and thus
the bios partition fit exactly between the preceding and following ones.

However as this block has moved in a DTSI, for the sake of clarity and
explicitness the size property is added to ensure that if the flash
happens to be larger than expected, the bios partition remains properly
sized.

Suggested-by: Thibaut VARÈNE <hacks@slashdirt.org>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: harmonize appearance of ethX nodes in qca953x DTSes
Adrian Schmutzler [Wed, 12 Aug 2020 12:20:18 +0000 (14:20 +0200)]
ath79: harmonize appearance of ethX nodes in qca953x DTSes

This harmonizes the appearance of ethX nodes in qca953x DTSes by:
- having the same order of nodes and properties
- removing redundant status property on eth1 (set in qca953x.dtsi)

This is meant to help both copy-pasters and reviewers, since
deviations and errors can be spotted easier.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: add CGROUPS and IOSCHED_BFQ back to config
Adrian Schmutzler [Wed, 12 Aug 2020 11:53:47 +0000 (13:53 +0200)]
kernel: add CGROUPS and IOSCHED_BFQ back to config

After those symbols have been removed from generic kernel config,
they were added to the target config during every kernel config
refresh. As that's not desirable, add them back to the generic
config.

Fixes: d1a8217d87bf ("kernel: clean-up build-configurable kernel config symbols")
Fixes: cfe235c43686 ("kernel: modules: add package kmod-iosched-bfq")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobuild: fix README.md reference after rename
Adrian Schmutzler [Wed, 12 Aug 2020 11:42:33 +0000 (13:42 +0200)]
build: fix README.md reference after rename

The README file is displayed on "make help", but updating the
command has been overlooked during the README -> README.md
rename.

Fix it.

Fixes: d0113711a31f ("README: port to 21st century")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: add support for MikroTik SXT 5nD r2 (SXT Lite5)
Roger Pueyo Centelles [Thu, 11 Jun 2020 12:22:54 +0000 (14:22 +0200)]
ath79: add support for MikroTik SXT 5nD r2 (SXT Lite5)

The MikroTik SXT Lite5 (product code RBSXT5nDr2, also SXT 5nD r2) is
an outdoor 5GHz CPE with a 16 dBi integrated antenna built around the
Atheros AR9344 SoC. It is based on the "sxt5n" board platform.

Specifications:
 - SoC: Atheros AR9344
 - RAM: 64 MB
 - Storage: 128 MB NAND
 - Wireless: Atheros AR9340 (SoC) 802.11a/n 2x2:2
 - Ethernet: Atheros AR8229 switch (SoC), 1x 10/100 port,
    8-32 Vdc PoE in
 - 6 user-controllable LEDs:
  · 1x power (blue)
  · 1x wlan (green)
  · 4x rssi (green)
 - 1 GPIO-controlled buzzer

 See https://mikrotik.com/product/RBSXT5nDr2 for more details.

Notes:
 The device was already supported in the ar71xx target. There, the
 Ethernet port was handled by GMAC1. Here in ath79 it is handled by
 GMAC0, which allows to get link information (loss, speed, duplex) on
 the eth0 interface.

Flashing:
 TFTP boot initramfs image and then perform sysupgrade. Follow common
 MikroTik procedure as in https://openwrt.org/toh/mikrotik/common.

Acknowledgments:
 Michael Pratt (@mpratt14) for helping on the network settings.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
[rebase, use mikrotik LED label prefix, make names consistent,
add reg for bootloader2, use led_user for boot indication etc.,
minor cosmetic changes]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: add support for MikroTik RouterBOARD 921GS-5HPacD-15s
Sven Roederer [Mon, 22 Jun 2020 21:05:51 +0000 (23:05 +0200)]
ath79: add support for MikroTik RouterBOARD 921GS-5HPacD-15s

The MikroTik RouterBOARD 921GS-5HPacD-15s (mANTBox 15s) is an outdoor
antenna for 5 GHz with an built-in router. This ports the board from
ar71xx.

See https://mikrotik.com/product/RB921GS-5HPacD-15S for more info.

Specifications:
 - SoC: Qualcomm Atheros QCA9558 (720 MHz)
 - RAM: 128 MB
 - Storage: 128 MB NAND
 - Wireless: external QCA9892 802.11a/ac 2x2:2
 - Ethernet: 1x 1000/100/10 Mbps, integrated, via AR8031 PHY, passive PoE in
 - SFP: 1x host

Working:
 - NAND storage detection
 - Ethernet
 - Wireless
 - 1x user LED (blinks during boot, sysupgrade)
 - Reset button
 - Sysupgrade

Untested:
 - SFP cage (probably not working)

Installation (untested):
 - Boot initramfs image via TFTP and then flash sysupgrade image

As the embedded RB921-pcb is a stripped down version of the RB922 this patch
adds a common dtsi for this series and includes this to the final dts-files.

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
[move ath10k-leds closer to ath10k definition in DTS files]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: add support for MikroTik RouterBOARD LHG 2nD
Roger Pueyo Centelles [Tue, 9 Jun 2020 10:30:35 +0000 (12:30 +0200)]
ath79: add support for MikroTik RouterBOARD LHG 2nD

The MikroTik RouterBOARD LHG 2nD (sold as LHG 2) is a 2.4 GHz
802.11b/g/n outdoor device with a feed and an integrated dual
polarization grid dish antenna based on the LHG-HB platform.

See https://mikrotik.com/product/lhg_2 for more info.

Specifications:
 - SoC: Qualcomm Atheros QCA9533
 - RAM: 64 MB
 - Storage: 16 MB NOR
 - Wireless: Atheros AR9531 (SoC) 802.11b/g/n 2x2:2, 18 dBi antenna
 - Ethernet: Atheros AR8229 (SoC), 1x 10/100 port, 12-28 Vdc PoE in
 - 8 user-controllable LEDs:
   · 1x power (blue)
   · 1x user (green)
   · 1x lan (green)
   · 1x wlan (green)
   · 4x rssi (green)

Note:
 The rssihigh LED is disabled, as it shares GPIO 16 with the reset
 button.

Flashing:
 TFTP boot initramfs image and then perform sysupgrade. Follow common
 MikroTik procedure as in https://openwrt.org/toh/mikrotik/common.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
[rebase, remove rssiled setup, adjust commit message, add DTSIs]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomediatek: disable btif in device tree to make the WMAC work again
Felix Fietkau [Wed, 12 Aug 2020 10:58:35 +0000 (12:58 +0200)]
mediatek: disable btif in device tree to make the WMAC work again

btif and wmac access the same resources and at the moment enabling one
breaks the other

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agomediatek: fix PCI device tree node for elecom wrc-2533gent
Felix Fietkau [Wed, 12 Aug 2020 10:58:06 +0000 (12:58 +0200)]
mediatek: fix PCI device tree node for elecom wrc-2533gent

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agomt76: update to the latest version
Felix Fietkau [Wed, 12 Aug 2020 10:30:20 +0000 (12:30 +0200)]
mt76: update to the latest version

8d9a62e4def7 mt76: mt7915: fix crash on tx rate report for invalid stations
825343467df4 mt76: fix double DMA unmap of the first buffer on 7615/7915
99804560372b mt76: mt7615: register ext_phy if DBDC is detected
93407be934b2 mt76: mt7615: move drv_own/fw_own in mt7615_mcu_ops
e7774de844e8 mt76: mt7663s: move drv_own/fw_own in mt7615_mcu_ops
a5602514ab03 mt76: mt7615: hold mt76 lock queueing wd in mt7615_queue_key_update
5c42061ce181 mt76: do not inject packets if MT76_STATE_PM is set
ae4757a0ae90 mt76: mt7615: reschedule runtime-pm receiving a tx interrupt
c4544d1e8a1a mt76: mt76s: fix oom in mt76s_tx_queue_skb_raw
dc73103874cc mt76: mt76s: move tx processing in a dedicated wq
c828c84cb134 mt76: mt7663s: move rx processing in txrx wq
2b34f2f6b0ef mt76: mt76s: move status processing in txrx wq
f957b050d848 mt76: mt76s: move tx/rx processing in 2 separate works
6fe964295bd9 mt76: mt76s: get rid of unused variable
43d6127d8851 mt76: mt7915: enable U-APSD on AP side
58774b605f1c mt76: set interrupt mask register to 0 before requesting irq
06f722d8046c mt76: mt7915: clean up and fix interrupt masking in the irq handler
2fbd6baac103 mt76: mt7615: only clear unmasked interrupts in irq tasklet
5ea8b6187da2 mt76: mt76x02: clean up and fix interrupt masking in the irq handler
f2e71f0c1b7e mt76: mt7615: do not do any work in napi poll after calling napi_complete_done()
1eb94624bb12 mt76: mt7915: do not do any work in napi poll after calling napi_complete_done()
5e0c587b9ac1 mt76: mt7915: clean up station stats polling and rate control update
9ab20dfbf7b1 mt76: mt7915: increase tx retry count
fa69dd96f9c0 mt76: mt7915: enable offloading of sequence number assignment
9816f9812adb mt76: move mt76_check_agg_ssn to driver tx_prepare calls
ad90170b0af9 mt76: mt7615: remove mtxq->agg_ssn assignment
335cd51be4c6 mt76: mt7915: simplify aggregation session check
21f7734cbb49 mt76: mt7915: add missing flags in WMM parameter settings
21182f90d947 mt76: mt7915: add Tx A-MSDU offloading support
27670514328f mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing stations

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoath10k-ct-firmware: update firmware images
Michael Yartys [Tue, 14 Jul 2020 12:55:54 +0000 (14:55 +0200)]
ath10k-ct-firmware: update firmware images

Not a large change from last time, but should fix at least one rare wave-2
crash. The htt-mgt-community builds are trimmed for supporting lots of
stations (typically 150+ stations per radio).

Tested on Netgear R7800.

Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agotreewide: bump PKG_RELEASE after replacing `which`
Adrian Schmutzler [Wed, 12 Aug 2020 09:17:22 +0000 (11:17 +0200)]
treewide: bump PKG_RELEASE after replacing `which`

Bump PKG_RELEASE for the affected packages as replacing "which" by
"command -v" represents a content change.

Fixes: 1fdf6b745cc3 ("treewide: replace `which` with `command -v`")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agotreewide: replace `which` with `command -v`
Paul Spooren [Mon, 10 Aug 2020 01:33:37 +0000 (15:33 -1000)]
treewide: replace `which` with `command -v`

Fix shellcheck SC2230
> which is non-standard. Use builtin 'command -v' instead.

Using `command -v` is POSIX compliant while `which` is not.  Also to
mention, `command -v` is a shell builtin whereas `which` is a separate
busybox applet.

Once applied to everything concerning OpenWrt we can disable the busybox
feature `which` and save 3.8kB.

Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Paul Spooren <mail@aparcar.org>
[also replace cases in zram-swap]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobusybox: delete redundant patch
Magnus Kroken [Fri, 24 Jul 2020 12:15:17 +0000 (14:15 +0200)]
busybox: delete redundant patch

This problem has been fixed in upstream commit
6b6a3d9339f1c08efaa18a7fb7357e20b48bdc95. This patch now (harmlessly)
adds the same definition a second time.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
[bump PKG_RELEASE]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm47xx: use vendor_model scheme for device/image names
Adrian Schmutzler [Fri, 7 Aug 2020 19:11:14 +0000 (21:11 +0200)]
bcm47xx: use vendor_model scheme for device/image names

Most targets have been updated to consistently use the vendor_model
scheme for device definitions and thus, image names.

Apply this to bcm47xx as well. This does _not_ apply any other
specific naming changes.

Cc: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>