openwrt/staging/yousong.git
5 years agoath79: add support for TP-Link Archer C5 v1
Bart Lauret [Mon, 25 Feb 2019 18:27:28 +0000 (19:27 +0100)]
ath79: add support for TP-Link Archer C5 v1

TP-Link Archer C5 v1 is a dual band router
based on Qualcomm/Atheros QCA9558 + QCA9880.

Specification:

 - 720 MHz CPU
 - 128 MB of RAM (Various chips)
 - 16 MB of FLASH (Various chips)
 - SoC QCA9558 integrated 3T3R 2.4 GHz Wi-Fi
 - minipcie slot with 3T3R 5 GHz QCA9880-BR4A
 - 5x 10/100/1000 Mbps Ethernet (AR8327N Switch)
 - 10x LEDs, 2x software buttons

For further informwation on the device, visit the wiki:
<https://openwrt.org/toh/tp-link/archer-c5-c7-wdr7500>

Signed-off-by: Bart Lauret <bblauret@gmail.com>
5 years agoath79: TP-Link Archer C7 v4 swap usb port leds
David Santamaría Rogado [Sun, 24 Feb 2019 15:28:23 +0000 (16:28 +0100)]
ath79: TP-Link Archer C7 v4 swap usb port leds

USB 1 triggers usb2 led and USB 2 triggers usb1.
Lower LED is usb1 and upper LED usb2.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
5 years agoath79: Modify glinet x750 and AR300m MAC address offsets
Luo chongjun [Fri, 22 Feb 2019 11:46:37 +0000 (19:46 +0800)]
ath79: Modify glinet x750 and AR300m MAC address offsets

In the production of glinet, the MAC address of ethernet port is
only written at the position where the ART area offset address
is 0, and the MAC address of eth1 is added 1 on the basis of eth0.

Signed-off-by: Luo chongjun <luochongjun@gl-inet.com>
5 years agoipq40xx: add support for FritzBox 7530
David Bauer [Mon, 18 Feb 2019 22:58:34 +0000 (23:58 +0100)]
ipq40xx: add support for FritzBox 7530

Hardware
--------
CPU:   Qualcomm IPQ4019
RAM:   256M
FLASH: 128M NAND
ETH:   QCA8075
VDSL:  Intel/Lantiq VRX518 PCIe attached
       currently not supported
DECT:  Dialog SC14448
       currently not supported
WiFi2: IPQ4019 2T2R 2SS b/g/n
WiFi5: IPQ4019 2T2R 2SS n/ac
LED:    - Power/DSL green
        - WLAN green
        - FON/DECT green
        - Connect/WPS green
        - Info green
        - Info red
BTN:    - WLAN
        - FON
        - WPS/Connect
UART:  115200n8 3.3V (located under the Dialog chip)
       VCC - RX - TX - GND (Square is VCC)

Installation
------------
1. Grab the uboot for the Device from the 'u-boot-fritz7530'
   subdirectory. Place it in the same directory as the 'eva_ramboot.py'
   script. It is located in the 'scripts/flashing' subdirectory of the
   OpenWRT tree.

2. Assign yourself the IP address 192.168.178.10/24. Connect your
   Computer to one of the boxes LAN ports.

3. Connect Power to the Box. As soon as the LAN port of your computer
   shows link, load the U-Boot to the box using following command.

   > ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz7530.bin

4. The U-Boot will now start. Now assign yourself the IP address
   192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP
   server root directory and rename it to 'FRITZ7530.bin'.

5. The Box will now boot OpenWRT from RAM. This can take up to two
   minutes.

6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using
   scp. SSH into the Box and first write the Bootloader to both previous
   kernel partitions.

   > mtd write /path/to/uboot-fritz7530.bin uboot0
   > mtd write /path/to/uboot-fritz7530.bin uboot1

7. Remove the AVM filesystem partitions to make room for our kernel +
   rootfs + overlayfs.

   > ubirmvol /dev/ubi0 --name=avm_filesys_0
   > ubirmvol /dev/ubi0 --name=avm_filesys_1

8. Flash OpenWRT peristently using sysupgrade.

   > sysupgrade -n /path/to/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
[removed pcie-dts range node, refreshed on top of AP120-AC/E2600AC]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agouboot-fritz4040: bump version to 2019-02-08
David Bauer [Mon, 18 Feb 2019 22:58:33 +0000 (23:58 +0100)]
uboot-fritz4040: bump version to 2019-02-08

Adds support for the AVM FRITZ!Box 7530.

Signed-off-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [PKG_RELEASE]
5 years agoscripts: make eva_ramboot.py offset configurable
David Bauer [Mon, 18 Feb 2019 22:58:32 +0000 (23:58 +0100)]
scripts: make eva_ramboot.py offset configurable

The current eva_ramboot.py script is currently only compatible with
Lantiq based AVM devices. For IPQ40xx devices, the offset needs to be
changed. Also an alignment is not necessary here.

Adjust the script to be able to pass an optional offset to load the
image to. In case no offset is provided, the script behaves exactly as
before this commit.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoipq40xx: fix pcie msi IRQ trigger level
Christian Lamparter [Tue, 26 Feb 2019 15:22:27 +0000 (16:22 +0100)]
ipq40xx: fix pcie msi IRQ trigger level

From: Niklas Cassel <niklas.cassel@linaro.org>
|The databook clearly states that the MSI IRQ (msi_ctrl_int) is a level
|triggered interrupt.
|
|The msi_ctrl_int will be high for as long as any MSI status bit is set,
|thus the IRQ type should be set to IRQ_TYPE_LEVEL_HIGH, causing the
|IRQ handler to keep getting called, as long as any MSI status bit is set.
|[...]
|Not having the correct IRQ type defined will cause us to lose interrupts,
|which in turn causes timeouts in the PCIe endpoint drivers.
|
|Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
|Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoipq40xx: enlarge PCIe BAR size
Christian Lamparter [Mon, 25 Feb 2019 20:12:44 +0000 (21:12 +0100)]
ipq40xx: enlarge PCIe BAR size

David Bauer reported that the VDSL modem (attached via PCIe)
on his AVM Fritz!Box 7530 was complaining about not having
enough space in the BAR. A closer inspection of the old
qcom-ipq40xx.dtsi pulled from the GL-iNet repository listed:

| qcom,pcie@80000 {
|       compatible = "qcom,msm_pcie";
|       reg = <0x80000 0x2000>,
|             <0x99000 0x800>,
|             <0x40000000 0xf1d>,
|             <0x40000f20 0xa8>,
|             <0x40100000 0x1000>,
|             <0x40200000 0x100000>,
|             <0x40300000 0xd00000>;
|       reg-names = "parf", "phy", "dm_core", "elbi",
|                       "conf", "io", "bars";

Matching the reg-names with the listed reg leads to
<0xd00000> as the size for the "bars".

BugLink: https://www.mail-archive.com/openwrt-devel@lists.openwrt.org/msg45212.html
Reported-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agokernel: owl-loader: fix sparse endian warnings
Christian Lamparter [Mon, 25 Feb 2019 14:35:23 +0000 (15:35 +0100)]
kernel: owl-loader: fix sparse endian warnings

owl-loader.c:83:21: sparse: warning: incorrect type in assignment (different base types)
owl-loader.c:83:21: sparse:    expected unsigned short [usertype] reg
owl-loader.c:83:21: sparse:    got restricted __be16 const [usertype] reg
owl-loader.c:84:21: sparse: warning: incorrect type in assignment (different base types)
owl-loader.c:84:21: sparse:    expected unsigned int [usertype] val
owl-loader.c:84:21: sparse:    got restricted __be16 const [usertype] low_val
owl-loader.c:85:28: sparse: warning: restricted __be16 degrades to integer

Reported-by: kbuild test robot
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agokernel: disable touchscreen symbols
Christian Lamparter [Sun, 24 Feb 2019 17:58:52 +0000 (18:58 +0100)]
kernel: disable touchscreen symbols

This patch removes the obsolete touchscreen config symbols
and all disables all remaining ones in the generic config.

Generated by running drivers/input/touchscreen/Kconfig

 sed -n 's/^config[[:space:]]\(.*\)/# CONFIG_\1 is not set/p' Kconfig |\
 sort -d
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agox86: fix geode image builds
Christian Lamparter [Thu, 21 Feb 2019 18:34:37 +0000 (19:34 +0100)]
x86: fix geode image builds

This patch adds the disabled DRM_RADEON and DRM_AMDGPU
config symbols from the x86' config to the generic target
configs. The existing symbols in the x86' configs are kept
for now, until we know whenever we want to remove such
symbols or not (see Github PR #1831, #1825, #1828).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoipq40xx: add support for Qxwlan E2600AC C1 and C2
张鹏 [Mon, 21 Jan 2019 05:28:32 +0000 (13:28 +0800)]
ipq40xx: add support for Qxwlan E2600AC C1 and C2

Qxwlan E2600AC C1 based on IPQ4019

Specifications:
SOC: Qualcomm IPQ4019
DRAM: 256 MiB
FLASH: 32 MiB Winbond W25Q256
ETH: Qualcomm QCA8075
WLAN: 5G + 5G/2.4G
* 2T2R 2.4/5 GHz
 - QCA4019 hw1.0 (SoC)
* 2T2R 5 GHz
 - QCA4019 hw1.0 (SoC)
INPUT:  Reset buutton
LED: 1x Power ,6 driven by gpio
SERIAL: UART (J5)
UUSB: USB3.0
POWER: 1x DC jack for main power input (9-24 V)
SLOT: Pcie (J25), sim card (J11), SD card (J51)

Flash instruction (using U-Boot CLI and tftp server):

 - Configure PC with static IP 192.168.1.10 and tftp server.
 - Rename "sysupgrade" filename to "firmware.bin" and place it in tftp
   server directory.
 - Connect PC with one of RJ45 ports, power up the board and press
   "enter" key to access U-Boot CLI.
 - Use the following command to update the device to OpenWrt: "run lfw".

Flash instruction (using U-Boot web-based recovery):

 - Configure PC with static IP 192.168.1.xxx(2-254)/24.
 - Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
 - Open your browser and enter 192.168.1.1, select "sysupgrade" image
   and click the upgrade button.

Qxwlan E2600AC C2 based on IPQ4019

Specifications:
SOC: Qualcomm IPQ4019
DRAM: 256 MiB
NOR: 16 MiB Winbond W25Q128
NAND: 128MiB Micron MT29F1G08ABAEAWP
ETH: Qualcomm QCA8075
WLAN: 5G + 5G/2.4G
* 2T2R 2.4/5 GHz
 - QCA4019 hw1.0 (SoC)
* 2T2R 5 GHz
 - QCA4019 hw1.0 (SoC)
INPUT:  Reset buutton
LED: 1x Power, 6 driven by gpio
SERIAL: UART (J5)
USB: USB3.0
POWER: 1x DC jack for main power input (9-24 V)
SLOT: Pcie (J25), sim card (J11), SD card (J51)

Flash instruction (using U-Boot CLI and tftp server):

 - Configure PC with static IP 192.168.1.10 and tftp server.
 - Rename "ubi" filename to "ubi-firmware.bin" and place it in tftp
   server directory.
 - Connect PC with one of RJ45 ports, power up the board and press
   "enter" key to access U-Boot CLI.
 - Use the following command to update the device to OpenWrt: "run lfw".

Flash instruction (using U-Boot web-based recovery):

 - Configure PC with static IP 192.168.1.xxx(2-254)/24.
 - Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
 - Open your browser and enter 192.168.1.1, select "ubi" image
   and click the upgrade button.

Signed-off-by: 张鹏 <sd20@qxwlan.com>
[ added rng node. whitespace fixes, ported 02_network,
ipq-wifi Makefile, misc dts fixes, trivial message changes ]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoath79: add support for COMFAST CF-E120A v3
Roger Pueyo Centelles [Sat, 29 Dec 2018 19:44:43 +0000 (20:44 +0100)]
ath79: add support for COMFAST CF-E120A v3

This patch adds support for the COMFAST CF-E120A v3, an outdoor wireless
CPE with two Ethernet ports and a 802.11an radio.

Specifications:

 - AR9344 SoC
 - 535/400/267 MHz (CPU/DDR/AHB)
 - 2x 10/100 Mbps Ethernet, both with PoE-in support
 - 64 MB of RAM (DDR2)
 - 8 MB of FLASH
 - 2T2R 5 GHz, up to 25 dBm
 - 11 dBi built-in antenna
 - POWER/LAN/WAN/WLAN green LEDs
 - 4x RSSI LEDs (2x red, 2x green)
 - UART (115200 8N1) and GPIO (J9) headers on PCB

Flashing instructions:

 The original firmware is based on OpenWrt so a sysupgrade image can be
 installed via the stock web GUI. Settings from the original firmware
 will be saved and restored on the new one, so a factory reset will be
 needed. To do so, once the new firmware is flashed, enter into failsafe
 mode by pressing the reset button several times during the boot
 process, while while the WAN LED flashes, until it starts flashing
 faster. Once in failsafe mode, perform a factory reset as usual.

 The U-boot bootloader contains a recovery HTTP server to upload the
 firmware. Push the reset button while powering the device on and
 keep it pressed for >10 seconds. The recovery page will be at
 http://192.168.1.1

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
5 years agoramips: add TP-Link TL-WR802N-v4 support
Marcel Jost [Tue, 18 Dec 2018 07:00:52 +0000 (08:00 +0100)]
ramips: add TP-Link TL-WR802N-v4 support

This patch adds support for the TP-Link TL-WR802N-v4.
https://openwrt.org/toh/tp-link/tl-wr802n

Specification:
- MT7628N (580 MHz)
- 64 MB RAM
- 8 MB FLASH
- 2T2R 2.4 GHz
- 1x 10/100 Mbps Ethernet
- 1x LED

Flash instruction:

The only way to flash the image in TL-WR802N v4 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.225/24 and tftp server.
2. Rename "openwrt-ramips-mt76x8-tplink_tl-wr802n-v4-squashfs-tftp-recovery.bin"
   to "tp_recovery.bin" and place it in tftp server directory.
3. Connect PC with the LAN port, press the reset button, power up
   the router and keep button pressed for around 10 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Marcel Jost <majo@icutech.ch>
5 years agoramips: use generic board detection for Wavlink WL-WN575A3
Thomas Vincent-Cross [Sun, 17 Feb 2019 12:21:42 +0000 (23:21 +1100)]
ramips: use generic board detection for Wavlink WL-WN575A3

Bring Wavlink WL-WN575A3 in line with other Wavlink ramips devices.

Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
5 years agoramips: various Wavlink WL-WN575A3 fixes
Thomas Vincent-Cross [Sun, 17 Feb 2019 12:00:59 +0000 (23:00 +1100)]
ramips: various Wavlink WL-WN575A3 fixes

* assign pinmux groups to gpio function for LEDs/buttons
* rename flash node to be more generic in line with other device nodes
* remove useless/incorrect eeprom property from wmac node
* correct base mac address for embedded switch

Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
5 years agowireguard: bump to 0.0.20190227
Jason A. Donenfeld [Wed, 27 Feb 2019 23:36:49 +0000 (00:36 +0100)]
wireguard: bump to 0.0.20190227

* wg-quick: freebsd: allow loopback to work

FreeBSD adds a route for point-to-point destination addresses. We don't
really want to specify any destination address, but unfortunately we
have to. Before we tried to cheat by giving our own address as the
destination, but this had the unfortunate effect of preventing
loopback from working on our local ip address. We work around this with
yet another kludge: we set the destination address to 127.0.0.1. Since
127.0.0.1 is already assigned to an interface, this has the same effect
of not specifying a destination address, and therefore we accomplish the
intended behavior. Note that the bad behavior is still present in Darwin,
where such workaround does not exist.

* tools: remove unused check phony declaration
* highlighter: when subtracting char, cast to unsigned
* chacha20: name enums
* tools: fight compiler slightly harder
* tools: c_acc doesn't need to be initialized
* queueing: more reasonable allocator function convention

Usual nits.

* systemd: wg-quick should depend on nss-lookup.target

Since wg-quick(8) calls wg(8) which does hostname lookups, we should
probably only run this after we're allowed to look up hostnames.

* compat: backport ALIGN_DOWN
* noise: whiten the nanoseconds portion of the timestamp

This mitigates unrelated sidechannel attacks that think they can turn
WireGuard into a useful time oracle.

* hashtables: decouple hashtable allocations from the main device allocation

The hashtable allocations are quite large, and cause the device allocation in
the net framework to stall sometimes while it tries to find a contiguous
region that can fit the device struct. To fix the allocation stalls, decouple
the hashtable allocations from the device allocation and allocate the
hashtables with kvmalloc's implicit __GFP_NORETRY so that the allocations fall
back to vmalloc with little resistance.

* chacha20poly1305: permit unaligned strides on certain platforms

The map allocations required to fix this are mostly slower than unaligned
paths.

* noise: store clamped key instead of raw key

This causes `wg show` to now show the right thing. Useful for doing
comparisons.

* compat: ipv6_stub is sometimes null

On ancient kernels, ipv6_stub is sometimes null in cases where IPv6 has
been disabled with a command line flag or other failures.

* Makefile: don't duplicate code in install and modules-install
* Makefile: make the depmod path configurable

* queueing: net-next has changed signature of skb_probe_transport_header

A 5.1 change. This could change again, but for now it allows us to keep this
snapshot aligned with our upstream submissions.

* netlink: don't remove allowed ips for new peers
* peer: only synchronize_rcu_bh and traverse trie once when removing all peers
* allowedips: maintain per-peer list of allowedips

This is a rather big and important change that makes it much much faster to do
operations involving thousands of peers. Batch peer/allowedip addition and
clearing is several orders of magnitude faster now.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
5 years agotools: migrate from squashfs4 to squashfskit4
Alexander Couzens [Wed, 12 Dec 2018 15:10:42 +0000 (16:10 +0100)]
tools: migrate from squashfs4 to squashfskit4

squashfskit is a fork of the squashfs-tools.
squashfskit creates reproducible filesystems and includes
many of the distro patches.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Tested-by: Paul Spooren <mail@aparcar.org>
5 years agoopenssl: bump to release 1.1.1b
Eneas U de Queiroz [Wed, 27 Feb 2019 21:06:44 +0000 (18:06 -0300)]
openssl: bump to release 1.1.1b

This is bugfix release that incorporated all of the devcrypto engine
patches currently in the tree.

The cleaning procedure in Package/Configure was not removing the
dependency files, causing linking errors during a rebuild with
different options.  It was replaced by a simple make clean.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
5 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Wed, 27 Feb 2019 11:10:20 +0000 (12:10 +0100)]
odhcpd: update to latest git HEAD

16c5b6c ubus: always trigger an update if interface is not found

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoomcproxy: define configuration file
David Santamaría Rogado [Tue, 26 Feb 2019 23:14:17 +0000 (00:14 +0100)]
omcproxy: define configuration file

omcproxy's configuration is lost on every update or installation.
Avoid it by defining the configuration file.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
5 years agoRevert "iw: compile with LTO enabled"
Mantas Pucka [Mon, 25 Feb 2019 16:29:13 +0000 (18:29 +0200)]
Revert "iw: compile with LTO enabled"

After update to 5.0.1 iw-full package failed to display command list on
ipq40xx arch. Root cause was found to be LTO reordering causing
incorrect detection of command struct size in:

iw.c:552
cmd_size = labs((long)&__section_set - (long)&__section_get);

This reverts commit ef16a394d2b24a363b50b5b4720cb23fe156c9da.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
5 years agostrace: update to version 2.26
Hauke Mehrtens [Tue, 26 Feb 2019 20:12:18 +0000 (21:12 +0100)]
strace: update to version 2.26

The new patch is a backport from current strace master.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agotools/isl: update to 0.20
Syrone Wong [Sun, 16 Dec 2018 10:44:43 +0000 (18:44 +0800)]
tools/isl: update to 0.20

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
5 years agotoolchain/binutils: Add binutils 2.32
Daniel Engberg [Sat, 9 Feb 2019 01:22:02 +0000 (01:22 +0000)]
toolchain/binutils: Add binutils 2.32

Add binutils 2.32 to repo

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agotoolchain: Update to GCC 8.3.0
Daniel Engberg [Sat, 23 Feb 2019 01:45:42 +0000 (01:45 +0000)]
toolchain: Update to GCC 8.3.0

Update GCC to 8.3.0
Refresh patches
Allow GCC to be used for ARC
Source: https://github.com/openwrt/openwrt/pull/1803#issuecomment-462334890

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agotoolchain/gcc: Remove workaround for GCC 4.8
Daniel Engberg [Sat, 23 Feb 2019 09:47:54 +0000 (10:47 +0100)]
toolchain/gcc: Remove workaround for GCC 4.8

GCC 4.8 was removed a long time ago...

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agopopt: Use modern toolchain logic
Daniel Engberg [Sun, 24 Feb 2019 07:08:14 +0000 (08:08 +0100)]
popt: Use modern toolchain logic

Replace define Build/Configure with CONFIGURE_ARGS

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agoelfutils: fix install .so glob
Matt Merhar [Tue, 26 Feb 2019 13:05:07 +0000 (08:05 -0500)]
elfutils: fix install .so glob

Only libelf was being packaged correctly - libdw and libasm included
just the symlinks.

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
5 years agosunxi: add support for Orange Pi One
Aleksander Jan Bajkowski [Wed, 20 Feb 2019 13:17:45 +0000 (14:17 +0100)]
sunxi: add support for Orange Pi One

CPU: H3 Quad-core Cortex-A7 H.265/HEVC 4K @ 1.2 Ghz
GPU: Mali400MP2 GPU @ 600MHz (supports OpenGL ES 2.0)
Memory: 512MB DDR3 (shared with GPU)
Onboard: Storage TF card (Max. 64GB) / MMC card slot
Onboard header: SPI, I2C, GPIO, UART
USB 2.0: One USB 2.0 HOST, One USB 2.0 OTG

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
5 years agoath79: fix support-list for TP-Link WDR3600
David Bauer [Fri, 22 Feb 2019 23:25:07 +0000 (00:25 +0100)]
ath79: fix support-list for TP-Link WDR3600

The TP-Link WDR3600 shares the same machine-code in the ar71xx target,
thus expecting "tl-wdr4300" not "tl-wdr3600" in the support-list
metadata to allow non-forced sysupgrades from ar71xx to ath79.

With this, it is possible to flash a WDR4300 image on the WDR3600. It
is no problem however, as the only difference is the 5GHz WiFi chip
which has 3SS instead of 2SS. Both work with either image.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoath79: add ar71xx support-list entry for Fritz4020
David Bauer [Sat, 23 Feb 2019 12:12:49 +0000 (13:12 +0100)]
ath79: add ar71xx support-list entry for Fritz4020

This adds the support-list entry the AVM FRITZ!Box 4020 expects in the
ar71xx target to allow non-forced sysupgrades from ar71xx to ath79.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoar71xx: GL.iNet AR300M family: correct LED definitions
Andreas Ziegler [Mon, 25 Feb 2019 00:19:59 +0000 (01:19 +0100)]
ar71xx: GL.iNet AR300M family: correct LED definitions

remove USB as this is no LED but power control
rename WiFi LED with correct color red (like in stock firmware)
set middle LED to be used for LAN link/activity

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
5 years agoath10k-ct: fix incorrect multicast/broadcast rate setting
Sven Eckelmann [Mon, 25 Feb 2019 19:42:28 +0000 (20:42 +0100)]
ath10k-ct: fix incorrect multicast/broadcast rate setting

If no mcast_rate is set for the wifi-iface then there is no rate_idx (0)
set for the bss. This can break for example 5GHz meshpoint interfaces
because 0 maps to a CCK rate (11Mbit/s).

It must also be avoided that the ath10k-ct internal state for the rates is
not synced with the mac80211 rates state. Otherwise, the user specified
rate (e.g. a wifi-iface mcast_rate for a meshpoint interface) will only be
set on startup. And a short while after that, ath10k-ct specific code in
ath10k_check_apply_special_rates is missing a valid rate in its own
structures and is then recalculating a new default rate. This default rate
is in most situations not the requested rate.

Fixes: 4df3c71cd4c5 ("ath10k-ct: Update to 2018-12-11 and use version based on 4.19")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
5 years agomac80211: ath10k: fix incorrect multicast/broadcast rate setting
Sven Eckelmann [Mon, 25 Feb 2019 19:42:28 +0000 (20:42 +0100)]
mac80211: ath10k: fix incorrect multicast/broadcast rate setting

If no mcast_rate is set for the wifi-iface then there is no rate_idx (0)
set for the bss. This breaks for example 5GHz meshpoint interfaces because
0 maps to a CCK rate (11Mbit/s).

Fixes: db90c243a0b9 ("mac80211: update to version based on 4.19-rc4")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
5 years agomac80211: Add WDS / 4addr fix for ath10k supported devices
Hauke Mehrtens [Tue, 26 Feb 2019 19:41:03 +0000 (20:41 +0100)]
mac80211: Add WDS / 4addr fix for ath10k supported devices

This should fix the WDS / 4addr mode with ath10k and probably other
devices.
This patch was found here: https://patchwork.kernel.org/patch/10692383/

Fixes: d9eefa7a7031 ("mac80211: rebase ontop of v4.18.5")
Reported-by: Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agomac80211: rt2x00: fix crash on release_firmware
Stanislaw Gruszka [Sun, 24 Feb 2019 09:23:18 +0000 (10:23 +0100)]
mac80211: rt2x00: fix crash on release_firmware

Fix crash due to passing invalid r2x00dev->eeprom_file pointer to
release_firmware(). Since we copy eeprom data with EEPROM_SIZE
in rt2800_read_eeprom() we can use eeprom_file->size as marker
if the file was crated by request_firmware().

Acked-by: Kristian Evensen <kristian.evensen@gmail.com>
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
5 years agomt76: update to the latest version
Felix Fietkau [Tue, 26 Feb 2019 17:00:38 +0000 (18:00 +0100)]
mt76: update to the latest version

28d81ff mt76x0: eeprom: fix VHT mcs{8,9} rate power offset
6e33ce6 mt76: move mt76_mcu_msg_alloc in mt76-core
4637f95 mt76: move mt76_mcu_get_response in mt76-core
1763cb0 mt76: move mt76_mcu_rx_event in mt76-core
4db9d75 mt76x0: mcu: remove useless commented configuration
91d0455 mt76: move mt76_dma_tx_queue_skb_raw in mt76-core module
0e8e53f mt76: remove add_buf pointer in mt76_queue_ops
db47920 mt7603: rely on mt76_mcu_msg_alloc routine
471c447 mt7603: rely on mt76_mcu_get_response routine
cacc986 mt7603: rely on mt76_mcu_rx_event routine
11ab620 mt7603: rely on mt76_tx_queue_skb_raw common routine
82fa312 mt7603: move alloc_dev common code in mt76_alloc_device
47d5922 mt76: move alloc_device common code in mt76_alloc_device
c50c993 mt76x2u: remove mt76x2u_alloc_device routine
6ed5b7a mt76x0: remove mt76x0u_alloc_device routine
e32e249 mt76x2: remove mt76x2_alloc_device routine
6aacd1e mt76: change the return type of mt76_dma_attach()
a10e9e5 mt76x02u: use usb_bulk_msg to upload firmware
a774ff6 mt76: usb: fix possible NULL pointer dereference in mt76u_mcu_deinit
c2877bc mt76: usb: fix possible memory leak in mt76u_buf_free
a5cfe96 mt76: usb: do not run mt76u_queues_deinit twice
1e4db14 mt76: usb: move mt76u_check_sg in usb.c
302406b mt76: usb: do not use sg buffers for mcu messages
8ab5267 mt76: usb: use a linear buffer for tx/rx datapath if sg is not supported
a0a3505 mt76: usb: introduce disable_usb_sg parameter
0cee180 mt76: usb: use dev_err_ratelimited instead of dev_err in mt76u_complete_rx
1bb97c4 mt76x02u: remove bogus check and comment padding
2cbc2d4 mt76: Use the correct hweight8() function
f18e03a mt76x0u: fix suspend/resume
6231336 mt76: mt76x02: fix TSF sync mode
783da04 mt76: mt76x02: fix beacon timer drift adjustment
43d2507 mt76: mt76x02: fix beacon timer issue
59a6587 mt76: mt76x02: only reset beacon drift counter when enabling beacons
8c8eb98 mt76: mt76x02: issue watchdog reset on MCU request timeout
52161d2 mt76: mt76x02: fix ED/CCA enabling/disabling
5e7ecce mt76: mt76x2: unify mt76x2[u]_mac_resume
18af219 mt76: mt76x02: set MT_TXOP_HLDR_TX40M_BLK_EN for mt76x2
e5747b2 mt76usb: allow mt76u_bulk_msg be used for reads
2437a9a mt76usb: use synchronous msg for mcu command responses
e4250c9 mt76usb: remove usb_mcu.c
8b1110e mt76: usb: fix warning in mt76u_buf_free
89215f6 mt76: usb: introduce mt76u_fill_bulk_urb routine
523e374 mt76: usb: simplify rx buffer allocation
ffe1292 mt76: usb: simplify mt76u_tx_build_sg routine
e2a9d40 mt7603: fix ba window size selection
b040ef7 mt76: remove no longer used routine declarations
645ef43 mt76: usb: check urb->num_sgs limit in mt76u_process_rx_entry
fd315bd mt7603: disable dynamic sensitivity adjustment by default

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agobuild: qsdk-ipq-*: include dtc in PATH before calling mkimage
Piotr Dymacz [Tue, 26 Feb 2019 12:04:54 +0000 (13:04 +0100)]
build: qsdk-ipq-*: include dtc in PATH before calling mkimage

Use 'dtc' from kernel sources instead of relying on host tool.

Fixes: bf4630e5adb4 ("build: add helpers for generating QSDK sysupgrade compatible images")
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agouboot-envtools: add support for ALFA Network AP120C-AC
Piotr Dymacz [Tue, 29 Jan 2019 17:12:51 +0000 (18:12 +0100)]
uboot-envtools: add support for ALFA Network AP120C-AC

While at it, fix alphabetical order.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agoipq40xx: add support for ALFA Network AP120C-AC
Piotr Dymacz [Tue, 29 Jan 2019 17:12:51 +0000 (18:12 +0100)]
ipq40xx: add support for ALFA Network AP120C-AC

ALFA Network AP120C-AC is a dual-band ceiling AP, based on Qualcomm
IPQ4018 + QCA8075 platform.

Specification:

- Qualcomm IPQ4018 (717 MHz)
- 256 MB of RAM (DDR3)
- 16 MB (SPI NOR) + 128 MB (SPI NAND) of flash
- 2x Gbps Ethernet, with 802.3af PoE support in one port
- 2T2R 2.4/5 GHz (IPQ4018), with ext. FEMs (QFE1952, QFE1922)
- 3x U.FL connectors
- 1x 1.8 dBi (Bluetooth) and 2x 3/5 dBi dual-band (Wi-Fi) antennas
- Atmel/Microchip AT97SC3205T TPM module (I2C bus)
- TI CC2540 Bluetooth LE module (USB 2.0 bus)
- 4x LED (all driven by GPIO)
- 1x button (reset)
- 1x USB 2.0 (optional, not installed in indoor version)
- DC jack for main power input (12 V)
- UART header available on PCB (2.0 mm pitch)

Flash instruction:

1. This board uses dual-image feature (128 MB NAND is divided into two
   64 MB partitions: 'rootfs1' and 'rootfs2').
2. Before update, make sure your device is running firmware no older
   than v1.1 (previous versions have incompatible U-Boot).
3. Use 'factory' image in vendor GUI or for sysupgrade tool, without
   preserving settings.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agoipq-wifi: add board-2.bin for ALFA Network AP120C-AC
Piotr Dymacz [Tue, 29 Jan 2019 17:12:51 +0000 (18:12 +0100)]
ipq-wifi: add board-2.bin for ALFA Network AP120C-AC

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agoipq40xx: add support for Macronix MX35LF1GE4AB SPI NAND
Piotr Dymacz [Tue, 29 Jan 2019 17:12:51 +0000 (18:12 +0100)]
ipq40xx: add support for Macronix MX35LF1GE4AB SPI NAND

Without a proper SPI NAND support (SPI NAND framework is available in
kernel >= 4.19) the only way to make such flash working is to include
it in raw/parallel NAND subsystem support and combine with mt29f staging
driver. Obviously, this approach isn't going to be accepted by upstream
(similar support for Winbond W25N01GV was rejected).

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agobuild: add helpers for generating QSDK sysupgrade compatible images
Piotr Dymacz [Tue, 29 Jan 2019 17:12:51 +0000 (18:12 +0100)]
build: add helpers for generating QSDK sysupgrade compatible images

Qualcomm SDK (QSDK) sysupgrade compatible images for IPQ40xx, IPQ806x
and IPQ807x use FIT format together with 'dumpimage' tool from U-Boot
for verifying and extracting them. Based on 'images' sections names,
corresponding mtd partitions are flashed. For example, in case of
NOR-only boards, below mapping is used (section name -> mtd name):

  hlos*   -> 0:HLOS
  rootfs* -> rootfs

And for boards with NAND (kernel inside UBI):

  ubi* -> rootfs

Above mappings come from unmodified QSDK sources and might be wrong for
boards running custom or modified QSDK-based firmware. Some of vendors
adjust them to meet their modified mtd layout or features like recovery
or dual-image support.

This adds simple script 'mkits-qsdk-ipq-image.sh' (based on 'mkits.sh')
for generating FIT images tree source files, compatible with the QSDK
sysupgrade format. Resulting images can be used for initial (factory ->
OpenWrt) installation and would work both in CLI and GUI.

The script is universal in a way it allows to include as many sections
as needed. To make use of it, two generic/basic build recipes for NOR
and NAND based boards are also included in 'image-commands.mk':

  Build/qsdk-ipq-factory-nand
  Build/qsdk-ipq-factory-nor

Example usage for board with UBI in NAND:

  IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
5 years agokernel: bump 4.19 to 4.19.25
Koen Vandeputte [Mon, 25 Feb 2019 10:38:50 +0000 (11:38 +0100)]
kernel: bump 4.19 to 4.19.25

Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.103
Koen Vandeputte [Mon, 25 Feb 2019 10:38:23 +0000 (11:38 +0100)]
kernel: bump 4.14 to 4.14.103

Refreshed all patches.

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.160
Koen Vandeputte [Mon, 25 Feb 2019 10:37:51 +0000 (11:37 +0100)]
kernel: bump 4.9 to 4.9.160

Refreshed all patches.

Compile-tested on: ar7
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 3.18 to 3.18.136
Koen Vandeputte [Mon, 25 Feb 2019 10:33:35 +0000 (11:33 +0100)]
kernel: bump 3.18 to 3.18.136

Refreshed all patches.

Fixes:
- CVE-2019-6974

Compile-tested: adm5120
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: add missing config symbols
Stijn Tintel [Mon, 25 Feb 2019 13:46:10 +0000 (15:46 +0200)]
kernel: add missing config symbols

The addition of kmod-input-touchscreen-ads7846 enabled
INPUT_TOUCHSCREEN, which exposes several other symbols on various
targets. Add those symbols to the generic kernel configs to fix build.

Fixes: 77a54bbf13bf ("kernel: add kmod-input-touchscreen-ads7846")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agoodhcpd: update to latest git HEAD (FS#2142)
Hans Dedecker [Mon, 25 Feb 2019 11:00:08 +0000 (12:00 +0100)]
odhcpd: update to latest git HEAD (FS#2142)

9e9389c dhcpv4: fix adding assignment in list (FS#2142)
e69265b dhcpv4: fix static lease lookup
afbd7dd dhcp: rework assignment free logic

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agokernel: fix kmod-input-touchscreen-ads7846 deps
Stijn Tintel [Sun, 24 Feb 2019 22:49:39 +0000 (00:49 +0200)]
kernel: fix kmod-input-touchscreen-ads7846 deps

On targets that don't have input support enabled in the kernel config,
building kmod-input-touchscreen-ads7846 fails due to a missing
dependency on kmod-input-core. Add the dependency to fix this.

Fixes: 77a54bbf13bf ("kernel: add kmod-input-touchscreen-ads7846")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agopackage/dnsmasq: add max_ttl/min_cache_ttl/max_cache_ttl
Alexander Couzens [Wed, 20 Feb 2019 17:09:50 +0000 (18:09 +0100)]
package/dnsmasq: add max_ttl/min_cache_ttl/max_cache_ttl

max_ttl - limit the ttl in the dns answer if greater as $max_ttl
min_cache_ttl - force caching of dns answers even the ttl in the answer
is lower than the $min_cache_ttl
max_cache_ttl - cache only dns answer for $max_cache_ttl.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
5 years agokernel: add kmod-input-touchscreen-ads7846
Stijn Tintel [Wed, 13 Feb 2019 10:51:27 +0000 (12:51 +0200)]
kernel: add kmod-input-touchscreen-ads7846

This module adds support for ADS7846 based touchscreens used in devices
like the WaveShare 3.5" and 4" LCD displays designed for Raspberry Pi.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agokernel: add kmod-fb-tft-ili9486
Stijn Tintel [Sat, 9 Feb 2019 17:01:28 +0000 (19:01 +0200)]
kernel: add kmod-fb-tft-ili9486

This module adds support for the ILI9486 LCD controller used in devices
like the Waveshare 3.5" and 4" LCD displays designed for Raspberry Pi.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agokernel: add kmod-fb-tft
Stijn Tintel [Sat, 9 Feb 2019 16:31:48 +0000 (18:31 +0200)]
kernel: add kmod-fb-tft

This module adds support for small TFT LCD display modules. While this
module also exists in the 4.9 kernel, we are not going to support this
kernel in the next major release, so don't make it available for 4.9.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agokernel: add kmod-fb-sys-ram
Stijn Tintel [Sat, 9 Feb 2019 16:10:26 +0000 (18:10 +0200)]
kernel: add kmod-fb-sys-ram

The kernel modules that provide support for framebuffers in system RAM
are currently included in the kmod-drm-imx package. Move them to a
separate package, so that other modules can depend on them.

Increase the autoload order of the drm-imx* packages to load the modules
after loading the fb modules they depend on.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agokernel: add kmod-iio-ccs811
Stijn Tintel [Tue, 5 Feb 2019 00:25:22 +0000 (02:25 +0200)]
kernel: add kmod-iio-ccs811

This module supports the AMS CCS811 VOC sensor.
Tested on Raspberry Pi Zero W and ODROID C2.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agodnsmasq: prefer localuse over resolvfile guesswork
Yousong Zhou [Wed, 20 Feb 2019 06:58:51 +0000 (06:58 +0000)]
dnsmasq: prefer localuse over resolvfile guesswork

This makes it clear that localuse when explicitly specified in the
config will have its final say on whether or not the initscript should
touch /etc/resolv.conf, no matter whatever the result of previous
guesswork would be

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
5 years agokernel: bump 4.19 to 4.19.24
Koen Vandeputte [Wed, 20 Feb 2019 15:02:57 +0000 (16:02 +0100)]
kernel: bump 4.19 to 4.19.24

Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.102
Koen Vandeputte [Wed, 20 Feb 2019 15:02:26 +0000 (16:02 +0100)]
kernel: bump 4.14 to 4.14.102

Refreshed all patches.

Remove upstreamed:
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Remove upstreamed hunks:
- 080-pinctrl-msm-fix-gpio-hog-related-boot-issues.patch

Fixes:
- CVE-2018-1000026

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.159
Koen Vandeputte [Wed, 20 Feb 2019 15:01:10 +0000 (16:01 +0100)]
kernel: bump 4.9 to 4.9.159

Refreshed all patches.

Remove upstreamed:
- 023-1-smsc95xx-Use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 023-6-ch9200-use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 023-7-kaweth-use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 050-usb-dwc2-Remove-unnecessary-kfree.patch
- 092-netfilter-nf_tables-fix-mismatch-in-big-endian-syste.patch
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Fixes:
- CVE-2018-1000026

Compile-tested on: ar7
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 3.18 to 3.18.135
Koen Vandeputte [Wed, 20 Feb 2019 14:47:25 +0000 (15:47 +0100)]
kernel: bump 3.18 to 3.18.135

Refreshed all patches.

Fixes:
- CVE-2019-3819
- CVE-2019-7221
- CVE-2019-7222

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoscripts/qemustart: allow machine selection with new option --machine
Yousong Zhou [Tue, 19 Feb 2019 06:31:54 +0000 (06:31 +0000)]
scripts/qemustart: allow machine selection with new option --machine

This can be used to set machine options like highmem=off for running old
armvirt/32 kernel lacking LPAE support with QEMU version 3.0 or later

 [1] Armv7 guest fails to boot with qemu-3.0.0-1,
     https://bugzilla.redhat.com/show_bug.cgi?id=1633328#c5

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
5 years agomac80211: backport more brcmfmac changes queued for the 5.1
Rafał Miłecki [Wed, 20 Feb 2019 22:05:48 +0000 (23:05 +0100)]
mac80211: backport more brcmfmac changes queued for the 5.1

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agoipq-wifi: update ipq-wifi for Linksys EA6350v3
Oever González [Wed, 20 Feb 2019 16:47:06 +0000 (10:47 -0600)]
ipq-wifi: update ipq-wifi for Linksys EA6350v3

This commit updates the file "board-linksys_ea6359v3".

Without this commit, the Linksys EA6350v3 will experience poor wireless
performance in both bands. With this patch, wireless performace will be
comparable to the performance of the stock firmware.

Signed-off-by: Oever González <notengobattery@gmail.com>
5 years agoath79: fix wmac memory region for qca953x
Chuanhong Guo [Tue, 19 Feb 2019 06:27:08 +0000 (14:27 +0800)]
ath79: fix wmac memory region for qca953x

According to /arch/mips/include/asm/mach-ath79/ar71xx_regs.h
the size of wmac register range for qca953x is only 0x20000.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years agofirmware: ipq-wifi: mark packages as nonshared
Christian Lamparter [Sun, 17 Feb 2019 17:11:59 +0000 (18:11 +0100)]
firmware: ipq-wifi: mark packages as nonshared

The board-files are specific to the target and device. Hence
they need to be set as nonshared. Otherwise they do not show
up on the package repository. This causes problems for
imagebuilder, if it needs to build a image for a specific
device that hasn't had the time to have get its boardfile
upstream.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agogemini: Generate harddisk image for DNS-313
Linus Walleij [Fri, 15 Feb 2019 16:02:23 +0000 (17:02 +0100)]
gemini: Generate harddisk image for DNS-313

This makes OpenWrt build an Ext2+Ext4 partitioned image
for the D-Link DNS-313 with two blank partitions, a boot
partition on /dev/sda3 and a rootfs partition on
/dev/sda4.

This uses the methods already used in apm821xx including
the tricks to convert the generated Ext2 filesystem
partition to version 1 so that the firmware bootloader
will properly recognize it.

We patch a bit around the build files to make sure we
get the rootfs size set and that genext2fs is properly
built.

Tested on the D-Link DNS-313.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[Fixing and tricksing]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
5 years agofirmware-tools/ptgen: Allow generation 0 size partitions
Linus Walleij [Fri, 15 Feb 2019 16:02:14 +0000 (17:02 +0100)]
firmware-tools/ptgen: Allow generation 0 size partitions

The firmware on the D-Link DNS-313 NAS require two blank
partitions before the boot partition. Support this if
explicitly requested with a "-n" flag.

Tested on the D-Link DNS-313.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[Broken out from original patch]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
5 years agoipq40xx: speed up ath10k-caldata extraction
Christian Lamparter [Thu, 14 Feb 2019 18:06:47 +0000 (19:06 +0100)]
ipq40xx: speed up ath10k-caldata extraction

Reading and writing to and from flash storage is slow and currently,
the ath10kcal_extract() scripts are even more at an disadvantage
because they use a block size of 1 to be able skip.

This patch reworks the extraction scripts to be much faster and
efficient by reading and writing the calibration data in possibly
one big block.

before: (Tested on a RT-AC58U, which has SPI-NAND).

 # time dd if=/dev/ubi0_1 of=/lib/firmware/... bs=1 skip=4096 count=12064
12064+0 records in
12064+0 records out
real    0m 0.28s
user    0m 0.02s
sys     0m 0.24s

after:

 # time dd if=/dev/ubi0_1 of=/lib/firmware/... bs=12064 skip=4096 count=1 iflag=skip_bytes
1+0 records in
1+0 records out
real    0m 0.01s
user    0m 0.00s
sys     0m 0.00s

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agouqmi: fix PIN_STATUS_FAILED error with MC7455 WCDMA/LTE modem
Daniel Golle [Wed, 20 Feb 2019 14:12:44 +0000 (15:12 +0100)]
uqmi: fix PIN_STATUS_FAILED error with MC7455 WCDMA/LTE modem

Apparently this modem replies differently to attempted --get-pin-status
which makes the script fail if a pincode is set. Fix this.

Manufacturer: Sierra Wireless, Incorporated
Model: MC7455
Revision: SWI9X30C_02.24.05.06 r7040 CARMD-EV-FRMWR2 2017/05/19 06:23:09

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years agohostapd: add Multi-AP patches and config options
Arnout Vandecappelle (Essensium/Mind) [Mon, 10 Dec 2018 16:02:27 +0000 (17:02 +0100)]
hostapd: add Multi-AP patches and config options

Cherry-pick Multi-AP commits from uptream:
 9c06f0f6a hostapd: Add Multi-AP protocol support
 5abc7823b wpa_supplicant: Add Multi-AP backhaul STA support
 a1debd338 tests: Refactor test_multi_ap
 bfcdac1c8 Multi-AP: Don't reject backhaul STA on fronthaul BSS
 cb3c156e7 tests: Update multi_ap_fronthaul_on_ap to match implementation
 56a2d788f WPS: Add multi_ap_subelem to wps_build_wfa_ext()
 83ebf5586 wpa_supplicant: Support Multi-AP backhaul STA onboarding with WPS
 66819b07b hostapd: Support Multi-AP backhaul STA onboarding with WPS
 8682f384c hostapd: Add README-MULTI-AP
 b1daf498a tests: Multi-AP WPS provisioning

Add support for Multi-AP to the UCI configuration. Every wifi-iface gets
an option 'multi_ap'. For APs, its value can be 0 (multi-AP support
disabled), 1 (backhaul AP), 2 (fronthaul AP), or 3 (fronthaul + backhaul
AP). For STAs, it can be 0 (not a backhaul STA) or 1 (backhaul STA, can
only associate with backhaul AP).

Also add new optional parameter to wps_start ubus call of
wpa_supplicant to indicate that a Multi-AP backhaul link is required.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
5 years agomac80211: rt2x00: replace pending by merged patches
Daniel Golle [Tue, 19 Feb 2019 17:30:24 +0000 (18:30 +0100)]
mac80211: rt2x00: replace pending by merged patches

Those have by now been merged into wireless-drivers-next:
 17ae2acd1a6f rt2x00: remove unneeded check
 5991a2ecd070 rt2x00: remove confusing AGC register
 9ad3b5565445 rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band
 7aca14885ede rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620
 c7ff1bfeaf1c rt2800: comment and simplify AGC init for RT6352

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years agox86: Make kmod-drm-radeon and kmod-drm-amdgpu depend on x86
Hauke Mehrtens [Tue, 19 Feb 2019 22:03:15 +0000 (23:03 +0100)]
x86: Make kmod-drm-radeon and kmod-drm-amdgpu depend on x86

Currently these kernel packages only work on x86, restrict them to that
target.

Fixes: 2f239c02a031 ("x86: video: add amdgpu DRM kernel package")
Fixes: 2f6918ee9be9 ("x86: video: add radeon DRM module support")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agogeneric: kernel: Add missing config option
Pawel Dembicki [Mon, 18 Feb 2019 20:49:53 +0000 (20:49 +0000)]
generic: kernel: Add missing config option

DRM packages break modules compilation for sunxi target,
cortexa7 and cortexa8 subtargets.

This patch add missing symbol to generic config.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agoRevert "iproute2: use tc package variant to limit other package sizes"
Hans Dedecker [Tue, 19 Feb 2019 14:15:54 +0000 (15:15 +0100)]
Revert "iproute2: use tc package variant to limit other package sizes"

This reverts commit e6d84fa8864e7bbbcec139dd09a2922a06f5b2a0 as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma
for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoRevert "iproute2: simplify linking libelf for eBFP/XDP object file support"
Hans Dedecker [Tue, 19 Feb 2019 14:14:42 +0000 (15:14 +0100)]
Revert "iproute2: simplify linking libelf for eBFP/XDP object file support"

This reverts commit 26681fa6a6fcbec0024906eb8367e9a3160521fb as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma
for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoRevert "iproute2: tc: enable and fix support for using .so plugins"
Hans Dedecker [Tue, 19 Feb 2019 14:12:53 +0000 (15:12 +0100)]
Revert "iproute2: tc: enable and fix support for using .so plugins"

This reverts commit fc80ef3613465e60257a5ddf0674debe45b09180 as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and
rdma for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoRevert "iproute2: tc: reduce size of dynamic symbol table"
Hans Dedecker [Tue, 19 Feb 2019 14:10:45 +0000 (15:10 +0100)]
Revert "iproute2: tc: reduce size of dynamic symbol table"

This reverts commit 248797834bf21916ddf663edc96d86ee5377850e as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma
for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoarmvirt: 32: enable CONFIG_ARM_LPAE
Yousong Zhou [Sat, 16 Feb 2019 10:36:55 +0000 (10:36 +0000)]
armvirt: 32: enable CONFIG_ARM_LPAE

This is required for running armvirt_32 on QEMU 3.0 [1], otherwise the
kernel will emit the following complaint and virtio-net-pci devices will
fail to be initialized

        [    1.124214] OF: PCI: host bridge /pcie@10000000 ranges:
        [    1.125093] OF: PCI:    IO 0x3eff0000..0x3effffff -> 0x00000000
        [    1.125942] OF: PCI:   MEM 0x10000000..0x3efeffff -> 0x10000000
        [    1.126403] OF: PCI:   MEM 0x8000000000..0xffffffffff -> 0x8000000000
        [    1.127748] pci-host-generic 4010000000.pcie: can't claim ECAM area [mem 0x10000000-0x1fffffff]: address conflict with /pcie@10000000 [mem 0x10000000-0x3efeffff]
        [    1.129752] pci-host-generic: probe of 4010000000.pcie failed with error -16

Running QEMU with "-M virt,highmem=off" is an option, but "highmem" was only
introduced as a default on flag since QEMU 2.5.0 and QEMU will fail and quit on
encounter of unknown flags

 [1] Armv7 guest fails to boot with qemu-3.0.0-1,
     https://bugzilla.redhat.com/show_bug.cgi?id=1633328#c5

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
5 years agoarmvirt: 32: refresh kernel config
Yousong Zhou [Sat, 16 Feb 2019 10:36:07 +0000 (10:36 +0000)]
armvirt: 32: refresh kernel config

The diff was genereated by running the following command without
actually changing any kernel config options

make kernel_menuconfig CONFIG_TARGET=subtarget

Here are some initial findings on the change

 - CONFIG_ARCH_OPTIONAL_KERNEL_RWX is now arch default
 - CONFIG_ARM_GIC_V3_ITS is selected by CONFIG_ARCH_VIRT
 - CONFIG_CPU_SPECTRE is select by CONFIG_CPU_V7
 - CONFIG_TIMER_OF is now a arch default
 - CONFIG_TIMER_PROBE is select by CONFIG_TIMER_OF

The following options should probably be moved to generic config

 - CONFIG_MIGRATION is a default on option
 - CONFIG_TREE_SRCU is a default on option for !PREEMPT && SMP system
 - CONFIG_RCU_NEED_SEGCBLIST

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
5 years agodnsmasq: allow using dnsmasq as the sole resolver
Yousong Zhou [Mon, 18 Feb 2019 14:11:19 +0000 (14:11 +0000)]
dnsmasq: allow using dnsmasq as the sole resolver

Currently it seems impossible to configure /etc/config/dhcp to achieve
the following use case

 - run dnsmasq with no-resolv
 - re-generate /etc/resolv.conf with "nameserver 127.0.0.1"

Before this change, we have to set resolvfile to /tmp/resolv.conf.auto
to achive the 2nd effect above, but setting resolvfile requires noresolv
being false.

A new boolean option "localuse" is added to indicate that we intend to
use dnsmasq as the local dns resolver.  It's false by default and to
align with old behaviour it will be true automatically if resolvfile is
set to /tmp/resolv.conf.auto

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agomac80211: rt2x00: backport accepted and pending patches from upstream
Daniel Golle [Wed, 13 Feb 2019 18:47:18 +0000 (19:47 +0100)]
mac80211: rt2x00: backport accepted and pending patches from upstream

backport from wireless-drivers-next, replacing some existing patches in
our tree (marked with '=' are those which were already present):
 f483039cf51a rt2x00: use simple_read_from_buffer()
=5c656c71b1bf rt2800: move usb specific txdone/txstatus routines to rt2800lib
=0b0d556e0ebb rt2800mmio: use txdone/txstatus routines from lib
=5022efb50f62 rt2x00: do not check for txstatus timeout every time on tasklet
=adf26a356f13 rt2x00: use different txstatus timeouts when flushing
=0240564430c0 rt2800: flush and txstatus rework for rt2800mmio
 6eba8fd22352 rt2x00: rt2400pci: mark expected switch fall-through
 10bb92217747 rt2x00: rt2500pci: mark expected switch fall-through
 916e6bbcfcff rt2x00: rt2800lib: mark expected switch fall-throughs
 641dd8068ecb rt2x00: rt61pci: mark expected switch fall-through
 750afb08ca71 cross-tree: phase out dma_zalloc_coherent()
=c2e28ef7711f rt2x00: reduce tx power to nominal level on RT6352
 a4296994eb80 rt2x00: Work around a firmware bug with shared keys
 2587791d5758 rt2x00: no need to check return value of debugfs_create functions

pending on linux-wireless:
 rt2x00: remove unneeded check
 rt2x00: remove confusing AGC register
 rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band
 rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620
 rt2800: comment and simplify AGC init for RT6352
 rt2x00: do not print error when queue is full
 rt2800: partially restore old mmio txstatus behaviour
 rt2800: new flush implementation for SoC devices
 rt2800: move txstatus pending routine
 rt2800mmio: fetch tx status changes
 rt2800mmio: use timer and work for handling tx statuses timeouts
 rt2x00: remove last_nostatus_check
 rt2x00: remove not used entry field
 rt2x00mmio: remove legacy comment

While at it also rename some existing patches now that there are
separate folders with patches for each driver to make things a bit
nicer to handle.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
5 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Mon, 18 Feb 2019 14:21:06 +0000 (15:21 +0100)]
odhcpd: update to latest git HEAD

1f01299 config: fix build failure in case DHCPv4 support is disabled
67b3a14 dhcpv4: fix assignment of requested IP address
ca8ba91 dhcp: rework static lease logic
36833ea dhcpv6: rapid commit support
1ae316e dhcpv6: fix parsing of DHCPv6 relay messages
80157e1 dhcpv4: fix compile issue
671ccaa dhcpv6-ia: move function definitions to odhcpd.h
0db69b0 dhcpv6: improve code readibility
7847b27 treewide: unify dhcpv6 and dhcpv4 assignments
a54cee0 netlink: rework handling of netlink messages
9f25dd8 treewide: use avl tree to store interfaces
f21a0a7 treewide: align syslog tracing
edc5fb0 dhcpv6-ia: add full CONFIRM support
9d6eadf dhcpv6-ia: rework append_reply()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agobuild: Fix print without color
Hauke Mehrtens [Sun, 17 Feb 2019 18:29:08 +0000 (19:29 +0100)]
build: Fix print without color

The original patch removed the printing completely, just remove the
color.

Fixes: eabc1ddc4541 ("build: Honour NO_COLOR in include/scan.mk")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agotoolchain/binutils: Remove 2.30
Daniel Engberg [Thu, 8 Nov 2018 23:36:21 +0000 (00:36 +0100)]
toolchain/binutils: Remove 2.30

Remove binutils 2.30

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agosamba36: allow build with no ipv6 support
Rosy Song [Mon, 7 Jan 2019 06:24:47 +0000 (14:24 +0800)]
samba36: allow build with no ipv6 support

Signed-off-by: Rosy Song <rosysong@rosinson.com>
5 years agouboot-kirkwood: update to 2019.01
Paul Wassi [Thu, 27 Dec 2018 13:38:46 +0000 (14:38 +0100)]
uboot-kirkwood: update to 2019.01

Update U-Boot to current 2019.01 release for kirkwood platform

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
5 years agokirkwood: add kernel 4.19 support
Paul Wassi [Thu, 27 Dec 2018 14:39:36 +0000 (15:39 +0100)]
kirkwood: add kernel 4.19 support

Add patches for 4.19
Drop patch 200-disable-tso, as the packet corruption was fixed in
kernel commit 3b89624ab54b9dc2d92fc08ce2670e5f19ad8ec8

Restructure the DTS for Marvell switch in 104-ea3500 and 105-ea4500
to fix DTC warning.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
5 years agokernel: Added required dependencies for socket match.
Oldřich Jedlička [Tue, 29 Jan 2019 21:25:33 +0000 (22:25 +0100)]
kernel: Added required dependencies for socket match.

This applies to kernel 4.10 and newer.

See https://github.com/torvalds/linux/commit/8db4c5be88f62ffd7a552f70687a10c614dc697b

The above commit added to kernel 4.10 added new dependency
for building the NETFILTER_XT_MATCH_SOCKET (xt_socket.ko)
module. The NF_SOCKET_IPVx options (both of them) need to
be enabled in order to build the NETFILTER_XT_MATCH_SOCKET
module. Without the change the module is not built.

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
5 years agox86: video: disable buildtin amdgpu DRM driver
Lucian Cristian [Wed, 6 Feb 2019 11:42:56 +0000 (13:42 +0200)]
x86: video: disable buildtin amdgpu DRM driver

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agox86: video: add amdgpu DRM kernel package
Lucian Cristian [Wed, 6 Feb 2019 11:38:05 +0000 (13:38 +0200)]
x86: video: add amdgpu DRM kernel package

build amdgpu kernel as modules so it will find the firmware files

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agox86: DRM: add x64 subtarget support
Lucian Cristian [Mon, 4 Feb 2019 10:49:23 +0000 (12:49 +0200)]
x86: DRM: add x64 subtarget support

copy settings from generic subtarget

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agox86: video: disable builtin radeon DRM driver
Lucian Cristian [Sun, 3 Feb 2019 16:57:30 +0000 (18:57 +0200)]
x86: video: disable builtin radeon DRM driver

builtin driver can't access the /lib/firmware while booting,
module driver will be able to read and load the firmware files

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agox86: video: add radeon DRM module support
Lucian Cristian [Sun, 3 Feb 2019 16:53:48 +0000 (18:53 +0200)]
x86: video: add radeon DRM module support

add radeon module support so firmware can be loaded from userland

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agolinux-firmware: DRM: add amdgpu firmware
Lucian Cristian [Tue, 5 Feb 2019 22:08:10 +0000 (00:08 +0200)]
linux-firmware: DRM: add amdgpu firmware

add firmware needed for amdgpu DRM display

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agolinux-firmware: DRM: add radeon firmware
Lucian Cristian [Sun, 3 Feb 2019 16:44:16 +0000 (18:44 +0200)]
linux-firmware: DRM: add radeon firmware

add firmware needed for radeon DRM display

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years agostrace: Only allow libdw or libunwind
Hauke Mehrtens [Sat, 16 Feb 2019 22:43:50 +0000 (23:43 +0100)]
strace: Only allow libdw or libunwind

These two dependencies are mutual exclusive and it is only possible to
select one of them, change the select to a chose so it is only possible
to select one of them in OpenWrt menu config.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agostrace: fix configuration options
Peter Wagner [Sun, 10 Feb 2019 13:46:47 +0000 (14:46 +0100)]
strace: fix configuration options

Signed-off-by: Peter Wagner <tripolar@gmx.at>
5 years agoelfutils: fix DEPENDS for libelf
Peter Wagner [Sun, 10 Feb 2019 13:45:32 +0000 (14:45 +0100)]
elfutils: fix DEPENDS for libelf

Signed-off-by: Peter Wagner <tripolar@gmx.at>