oweals/openwrt.git
6 years agobase-files: sysupgrade: fix handling get_image unpack commands
Matthias Schiffer [Sun, 10 Jun 2018 13:41:52 +0000 (15:41 +0200)]
base-files: sysupgrade: fix handling get_image unpack commands

On bcm53xx and brcm47xx, commands are passed to default_do_upgrade that
expect the image to be passed on stdin, rather than as an argument.

Fixes: 30f61a34b4cf ("base-files: always use staged sysupgrade")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agomac80211: rt2x00: no longer use TXOP_BACKOFF for probe frames
Daniel Golle [Mon, 28 May 2018 13:45:43 +0000 (15:45 +0200)]
mac80211: rt2x00: no longer use TXOP_BACKOFF for probe frames

Import a revert-commit from Stanislaw Gruszka which significantly
improves WiFi performance on rt2x00 based hardware.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry-picked from commit f4a639a3d7d40b4f63c431c2d554c479fbcc6b74)

6 years agoramips: fix network config for ravpower wd03
Matthias Badaire [Wed, 23 May 2018 21:19:47 +0000 (23:19 +0200)]
ramips: fix network config for ravpower wd03

This device has only one ethernet port.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
[add the existing eth0 as lan block, shorten commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agoar71xx: use Power-LED as Diag-LED on FRITZBox 4020
David Bauer [Fri, 8 Jun 2018 19:42:52 +0000 (21:42 +0200)]
ar71xx: use Power-LED as Diag-LED on FRITZBox 4020

This commit makes use of the Power-LED as Diag-LED, allowing the LED to
work as a status indicator.

Signed-off-by: David Bauer <mail@david-bauer.net>
6 years agoar71xx: fix AVM package selection
David Bauer [Fri, 8 Jun 2018 19:41:25 +0000 (21:41 +0200)]
ar71xx: fix AVM package selection

The AVM package selection partially broke with the addition of the
FRITZ!Box 4020. This commit restores the intended behavior.

Signed-off-by: David Bauer <mail@david-bauer.net>
6 years agomtd-utils: revert faulty upstream patch for now
Christian Lamparter [Thu, 7 Jun 2018 21:30:14 +0000 (23:30 +0200)]
mtd-utils: revert faulty upstream patch for now

Some of the ubi-tools in the upstream mtd-utils have been
broken by a bad patch upstream. It causes major breakage
during sysupgrade when the kernel, rootfs, ... volumes
are deleted in the wrong order.

This patch therefore reverts the faulty upstream commit which
fixes the bug.

linux-mtd mailing-list thread:
<http://lists.infradead.org/pipermail/linux-mtd/2018-June/081562.html>

Cc: John Crispin <john@phrozen.org>
Reported-by: L. Wayne Leach <LLeachii@aol.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit daf19649dbf101ce7ae17abf84eeed7a30b41275)

6 years agoar71xx: fix USB switch to mPCIE for Mikrotik rb91x boards
Koen Vandeputte [Thu, 7 Jun 2018 13:59:26 +0000 (15:59 +0200)]
ar71xx: fix USB switch to mPCIE for Mikrotik rb91x boards

Some devices like the Mikrotik RB912 only have 1 USB port
which is shared between an USB A type port, and the mini PCIe socket.

Toggling a gpio selects the output to which USB is connected.

Since kernel 4.9, gpio base is rounded up to a value of 32.

Commit 65da6f9ca164 ("ar71xx: fix secondary gpio controller base values") accounts correctly for that.
In this commit, rb912 sees it's value changed from AR934X_GPIO_COUNT (23) to 32
This means that the USB toggle gpio number actually also changes from 52 to 61.

But ..
Some of these GPIO numbers are also used in other locations, like the boardfile.
The author forgot to also change them over there.

Switching the USB port to mPCIe now shows my modem is correctly discovered again:

[ 2863.864471] usb 1-1: new high-speed USB device number 4 using ehci-platform
[ 2864.055303] usb 1-1: config 1 has an invalid interface number: 8 but max is 3
[ 2864.062728] usb 1-1: config 1 has no interface number 1
[ 2864.074567] qcserial 1-1:1.0: Qualcomm USB modem converter detected
[ 2864.081474] usb 1-1: Qualcomm USB modem converter now attached to ttyUSB0
[ 2864.111960] qcserial 1-1:1.2: Qualcomm USB modem converter detected
[ 2864.118976] usb 1-1: Qualcomm USB modem converter now attached to ttyUSB1
[ 2864.139808] qcserial 1-1:1.3: Qualcomm USB modem converter detected
[ 2864.146777] usb 1-1: Qualcomm USB modem converter now attached to ttyUSB2
[ 2864.165276] qmi_wwan 1-1:1.8: cdc-wdm0: USB WDM device
[ 2864.171879] qmi_wwan 1-1:1.8 wwan0: register 'qmi_wwan' at usb-ehci-platform-1, WWAN/QMI device, 02:00:44:ed:3b:11

Fixes: 65da6f9ca164 ("ar71xx: fix secondary gpio controller base values")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Cc: Robin Leblon <robin.leblon@ncentric.com>
Cc: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 55b4b1eba0af6d2240f48eb93d68fb2e9ff41b08)

6 years agobusybox: udhcpc: no MSG_DONTROUTE when sending packet
Adi Shammout [Wed, 6 Jun 2018 19:53:24 +0000 (22:53 +0300)]
busybox: udhcpc: no MSG_DONTROUTE when sending packet

This reverts a change made in Sep 2017 [1] which introduced
MSG_DONTROUTE flag to prevent udhcpc from reaching out to servers on a
different subnet. That change violates RFC2131 by forcing fully
configured clients, who got their configurations through an offer
relayed by a DHCP relay, from renewing through a unicast request
directly to the DHCP server, resulting in the client resorting to
boradcasting lease extension requests instead of unicasting them,
further breaking RFC2131.

The problem with MSG_DONTROUTE appears when talking to a properly
configured DHCP server that rejects non-compliant requests. Such server
will reject lease extension attempts sent via broadcast rather than
unicast, as is the case with Finnish ISPs Telia and DNA as well as
Estonian ISP Starman. Once the lease expires without renewal, udhcpc
enters init mode, taking down the interfaces with it, and thus causing
interruption on every lease expiry. On some ISPs (such as the ones
mentioned above) that can be once every 10-20 minutes. The interruptions
appear in the logs as such:
----
udhcpc: sending renew to x.x.x.x
udhcpc: send: Network unreachable
udhcpc: sending renew to 0.0.0.0
udhcpc: sending renew to 0.0.0.0
...
udhcpc: lease lost, entering init state
Interface 'wan' has lost the connection
Interface 'wan' is now down
Network alias 'eth0' link is down
udhcpc: sending select for y.y.y.y
udhcpc: lease of y.y.y.y obtained, lease time 1200
Network alias 'eth0' link is up
Interface 'wan' is now up
----

During lease extension, a fully configured client should be able to
reach out to the server from which it recieved the lease for extension,
regardless in which network it is; that's up to the gateway to find. [2]
This patch ensures that.

[1]
http://lists.busybox.net/pipermail/busybox-cvs/2017-September/037402.html
[2]
https://www.netmanias.com/en/post/techdocs/6000/dhcp-network-protocol/
understanding-dhcp-relay-agents

Signed-off-by: Adi Shammout <adi.shammout@outlook.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
6 years agologd: create log directory for log_file
Karl Palsson [Thu, 22 Feb 2018 11:09:53 +0000 (11:09 +0000)]
logd: create log directory for log_file

If log_file is specified, make sure its directory exists.

Signed-off-by: Karl Palsson <karlp@etactica.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
6 years agokernel: fix 811-pci_disable_usb_common_quirks.patch
Stijn Tintel [Thu, 7 Jun 2018 13:16:09 +0000 (16:16 +0300)]
kernel: fix 811-pci_disable_usb_common_quirks.patch

The kernel bump wrongly modified the patch
generic/pending-4.14/811-pci_disable_usb_common_quirks.patch.
Sync it from master.

Fixes: 1199a9109526 ("kernel: bump 4.14 to 4.14.48 for 18.06")

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
6 years agokernel: bump 4.14 to 4.14.48 for 18.06
Stijn Segers [Tue, 5 Jun 2018 21:29:31 +0000 (23:29 +0200)]
kernel: bump 4.14 to 4.14.48 for 18.06

Refreshed patches. The following patches were upstreamed and have been deleted:

* target/linux/lantiq/patches-4.14/0025-MIPS-lantiq-gphy-Remove-reboot-remove-reset-asserts.patch
* target/linux/generic/pending-4.14/101-clocksource-mips-gic-timer-fix-clocksource-counter-w.patch
* target/linux/generic/pending-4.14/103-MIPS-c-r4k-fix-data-corruption-related-to-cache-coherence.patch
* target/linux/generic/pending-4.14/181-net-usb-add-lte-modem-wistron-neweb-d18q1.patch

Compile-tested: ramips/mt7621, x86/64
Run-tested: ramips/mt7621

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
6 years agokernel: bump 4.9 to 4.9.106 for 18.06
Stijn Segers [Tue, 5 Jun 2018 21:29:30 +0000 (23:29 +0200)]
kernel: bump 4.9 to 4.9.106 for 18.06

Refreshed patches. The following patches were upstreamed and have been deleted:

* target/linux/ar71xx/patches-4.9/106-01-MIPS-ath79-fix-AR724X_PLL_REG_PCIE_CONFIG-offset.patch
* target/linux/generic/pending-4.9/180-net-phy-at803x-add-support-for-AT8032.patch
* target/linux/generic/pending-4.9/181-net-usb-add-lte-modem-wistron-neweb-d18q1.patch
* target/linux/generic/pending-4.9/182-net-qmi_wwan-add-BroadMobi-BM806U-2020-2033.patch

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
6 years agoar71xx: switch CPE/WBS 210/510 to okli-loader
Matthias Schiffer [Tue, 5 Jun 2018 22:35:17 +0000 (00:35 +0200)]
ar71xx: switch CPE/WBS 210/510 to okli-loader

We recently increased the kernel partition size of the CPE/WBS 210/510.
This works fine for new installations of the factory image, but on
sysupgrades, the partition table read by the bootloader is not adjusted.
This limits the maximum size of the kernel loaded by the bootloader to the
old partition size.

While adjusting the partition table would be a cleanest solution, such a
migration would have to happen before an upgrade to a new version with a
newer kernel. This is error-prone and would require a two-step upgrade, as
we mark the partition table partition read-only.

Instead, switch from the lzma-loader with embedded kernel to the
okli-loader, so only the tiny lzma-loader is loaded by the bootloader as
"kernel", and the lzma-loader will then load the rest of the kernel by
itself.

Fixes: e39847ea2f70 ("ar71xx: increase kernel partition size for CPE/WBS 210/510")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoar71xx: make loader-okli build step more generic
Matthias Schiffer [Tue, 5 Jun 2018 22:34:25 +0000 (00:34 +0200)]
ar71xx: make loader-okli build step more generic

Add support for different loader types.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoar71xx: lzma-loader: constify kernel argv array
Matthias Schiffer [Tue, 5 Jun 2018 22:30:57 +0000 (00:30 +0200)]
ar71xx: lzma-loader: constify kernel argv array

By making the kernel argv array const, the .data section can always be
omitted from the laoder binary.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoar71xx: lzma-loader: set page size to 4KB
Matthias Schiffer [Tue, 5 Jun 2018 22:27:42 +0000 (00:27 +0200)]
ar71xx: lzma-loader: set page size to 4KB

The text section in the ELF loader is aligned to the maximum page size,
which defaults to 64KB. Reduce it to the actual page size to avoid wasting
flash space for this alignment.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoar71xx: lzma-loader: move padding workaround to gzip step
Matthias Schiffer [Wed, 6 Jun 2018 18:51:05 +0000 (20:51 +0200)]
ar71xx: lzma-loader: move padding workaround to gzip step

Some devices (TP-Link TL-WR1043ND v1) don't boot reliably when the
uncompressed loader is too small. This was workarounded in the loader by
adding 512KB of padding to the .data section of the loader binary.

This approach had two issues:

- The padding was only working when .data was non-empty (otherwise the
  section would become NOBITS, omitting it in the binary). .data was only
  empty when no CMDLINE was set, leading to further workarounds like
  fe594bf90d09 ("ath79: fix loader-okli, lzma-loader"), and this
  workaround was only effective because a missing "const" led to the kernel
  argv being stored in .data instead of .rodata
- The padding was not only added to the compressed .gz loader, but also
  uncompressed .bin and .elf loaders. The prevented embedding the kernel
  cmdline in the loader for non-gz loader types.

To fix both issues, move the creation of the padding from the linker script
to the gzip step.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agobase-files: fix UCI config parsing and callback handling
Tony Ambardar [Thu, 8 Mar 2018 05:00:45 +0000 (21:00 -0800)]
base-files: fix UCI config parsing and callback handling

There are several long-standing issues present in the UCI shell API as
documented in https://wiki.openwrt.org/doc/devel/config-scripting. They
relate both to high-level, user-defined callback functions used to
process UCI config files, and also to low-level functions used within
scripts generally.

The related problems have been encountered now and in the past, e.g.
https://forum.openwrt.org/viewtopic.php?id=54295, and include:

a) UCI parsing option() function and user-defined option_cb() callbacks
being erroneously called during processing of "list" config file entries;

b) normal usage of the low-level config_set() unexpectedy calling any
defined option_cb() if present; and

c) handling of the list_cb() not respecting the NO_CALLBACK variable.

Root causes include a function stack "inversion", where the low-level
config_set() function incorrectly calls the high-level option() function,
intended only for processing the "option" keyword of UCI config files.

This change addresses the inversion and other issues, making the option
handling code more consistent and smaller, and simplifying developers'
usage of UCI callbacks.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
6 years agokernel: backport patch to fix dst handling for offloaded connections
Felix Fietkau [Tue, 5 Jun 2018 08:16:49 +0000 (10:16 +0200)]
kernel: backport patch to fix dst handling for offloaded connections

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoRevert "ramips: Move PCI driver to files directory"
John Crispin [Fri, 1 Jun 2018 19:03:10 +0000 (21:03 +0200)]
Revert "ramips: Move PCI driver to files directory"

This reverts commit a098a78a33a6b096d15c9982b5d6457988e09f03.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoRevert "ramips: Remove redundant owner assignment"
John Crispin [Fri, 1 Jun 2018 19:03:09 +0000 (21:03 +0200)]
Revert "ramips: Remove redundant owner assignment"

This reverts commit 2ad4daf5794b08878467c1dac5bef7487109e4da.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoRevert "ramips: improve interrupt mapping"
John Crispin [Fri, 1 Jun 2018 19:03:08 +0000 (21:03 +0200)]
Revert "ramips: improve interrupt mapping"

This reverts commit 5f7396ebef09b224edf08b0bda113613a42f0928.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoRevert "ramips: remove conditional compilation."
John Crispin [Fri, 1 Jun 2018 19:03:07 +0000 (21:03 +0200)]
Revert "ramips: remove conditional compilation."

This reverts commit 1f786257147f978ce4c5750fdc404851453fafcb.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoRevert "ramips: remove unnecessary resource details."
John Crispin [Fri, 1 Jun 2018 19:03:05 +0000 (21:03 +0200)]
Revert "ramips: remove unnecessary resource details."

This reverts commit edea934799911c54ffa7024ef9a650f9dfc8c695.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoRevert "ramips: pci: sync with staging driver"
John Crispin [Fri, 1 Jun 2018 19:03:04 +0000 (21:03 +0200)]
Revert "ramips: pci: sync with staging driver"

This reverts commit e07baec9faf487fd143976636025b5da55e13c20.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoRevert "ramips: Fix WiFi after 5f7396ebef09b224edf08b0bda113613a42f0928"
John Crispin [Fri, 1 Jun 2018 19:03:02 +0000 (21:03 +0200)]
Revert "ramips: Fix WiFi after 5f7396ebef09b224edf08b0bda113613a42f0928"

This reverts commit 8ccdf809c0de567cfb781f38ce1c897b04cbeb78.

Signed-off-by: John Crispin <john@phrozen.org>
6 years agomvebu: fix broken console on WRT32X (venom)
Michael Gray [Tue, 29 May 2018 09:43:48 +0000 (19:43 +1000)]
mvebu: fix broken console on WRT32X (venom)

The console bootarg is being corrupted on boot, causing various issues
including broken sysupgrade.
Utilising the bootargs mangle patch from other targets, hardcode the console
arguments and fetch the rootfs from the bootloader.

Kernel command line: console=ttyS0,115200 root=/dev/mtdblock8

Bootloader command line (ignored): console= root=/dev/mtdblock8

Please cherry pick to 18.06 too

Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
(cherry picked from commit 4fdc6ca31bda4aad2a65b8460b0caa5c60f87f41)

6 years agowireguard: bump to 0.0.20180531 to fix flow offloading
Jason A. Donenfeld [Thu, 31 May 2018 01:05:51 +0000 (03:05 +0200)]
wireguard: bump to 0.0.20180531 to fix flow offloading

This version bump was made upstream mostly for OpenWRT, and should fix
an issue with a null dst when on the flow offloading path.

While we're at it, Kevin and I are the only people actually taking care
of this package, so trim the maintainer list a bit.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
6 years agoramips: Use generic board detect for GnuBee devices
Rosen Penev [Sun, 27 May 2018 00:26:14 +0000 (17:26 -0700)]
ramips: Use generic board detect for GnuBee devices

This is a port of an old commit from mkresin's tree:

09260cdf3e9332978c2a474a58e93a6f2b55f4a8

This has the potential to break sysupgrade but it should be fine as
there is no stable release of LEDE or OpenWrt that support these devices.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 9685f3978795727ac99d5d20a4af16c808b1e24b)

6 years agoramips: Fix WiFi after 5f7396ebef09b224edf08b0bda113613a42f0928
Rosen Penev [Tue, 29 May 2018 18:03:03 +0000 (11:03 -0700)]
ramips: Fix WiFi after 5f7396ebef09b224edf08b0bda113613a42f0928

That commit exposed a bug in the DTS files used by mt7621 where the wrong
reg value for pcie1 (and potentially pcie2) was being used. This was
causing WiFi failures for interfaces in pcie1.

eg. 2.4GHz working but not 5GHz.

As all of these dts entries are already specified in mt7621.dtsi, remove
them.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 02f815d1907cdd7e042415a2b4a749c819087168)

6 years agotarget/linux: drop anything not on v4.9 or v4.14
John Crispin [Thu, 24 May 2018 15:23:41 +0000 (17:23 +0200)]
target/linux: drop anything not on v4.9 or v4.14

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoath79: drop, its not ready for a release yet
John Crispin [Thu, 24 May 2018 14:53:10 +0000 (16:53 +0200)]
ath79: drop, its not ready for a release yet

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoramips: Fix up GnuBee PC1 DTS file a little
Rosen Penev [Thu, 24 May 2018 02:24:43 +0000 (19:24 -0700)]
ramips: Fix up GnuBee PC1 DTS file a little

There's nothing connected to i2c on this board, so remove it.

Also edited the gpio group to match the PC2 as they're the same.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 8c818fa1f0507b0e17aa3ebf051439c9c65f78f3)

6 years agobrcm47xx: add switch port mapping to Asus WL-500W
Mirko Parthey [Tue, 22 May 2018 19:23:36 +0000 (21:23 +0200)]
brcm47xx: add switch port mapping to Asus WL-500W

Switch ports 0..3 are connected to external ports LAN{1..4} in sequence,
switch port 4 is not used, and switch port 5 is connected to the CPU.
The WAN port is attached to the CPU's second network interface; it has no
connection to the internal switch.

Reuse the "Dell TrueMobile 2300" entry, which describes the same mapping.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
(cherry picked from commit 7ac238fc9855d20f0cfbc5754a1f9591438abfe3)

6 years agoipq806x: drop "mtd: nand: add Winbond manufacturer and chip"
Stefan Lippers-Hollmann [Fri, 18 May 2018 02:54:12 +0000 (04:54 +0200)]
ipq806x: drop "mtd: nand: add Winbond manufacturer and chip"

The W25N01GV NAND is currently not used in any ipq806x device.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit a436ef992d26768652e5a76d9e0983377adfc89b)

6 years agoipq806x: drop linux 4.9 support
Stefan Lippers-Hollmann [Fri, 18 May 2018 02:50:09 +0000 (04:50 +0200)]
ipq806x: drop linux 4.9 support

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 2819732219904a81205abe0fa3fbe9c06884f119)

6 years agoipq806x: switch to linux 4.14
Stefan Lippers-Hollmann [Fri, 18 May 2018 02:48:20 +0000 (04:48 +0200)]
ipq806x: switch to linux 4.14

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 18e9ed2482d6988b5962e856ec0792d5794ad93f)

6 years agoipq806x: remove spi-nor from r7800 dts
Pavel Kubelun [Thu, 18 Jan 2018 12:03:57 +0000 (15:03 +0300)]
ipq806x: remove spi-nor from r7800 dts

There's no spi-nor in R7800, so disable unequipped interfaces.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 8c1c1c4874c3bcaa16a21257a8fe15c2f6ec4012)

6 years agoipq806x: remove rpm pinctrl from board dts
Pavel Kubelun [Thu, 18 Jan 2018 11:01:13 +0000 (14:01 +0300)]
ipq806x: remove rpm pinctrl from board dts

These pins seem to be used by hw exclusively, so claiming it in
kernel causes an error in syslog in k4.14+.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 96cd31655d3de9078036ff74562ee50ef8724318)

6 years agoipq806x: fix EA8500 switch control
Pavel Kubelun [Thu, 18 Jan 2018 16:45:15 +0000 (19:45 +0300)]
ipq806x: fix EA8500 switch control

EA8500 has pcie2 slot unequipped.
By EA8500 hw design default pcie2 reset gpio (gpio63) is used to
reset the switch. That's why enabling pcie2 brings the switch into
a working state.

So let's just control the gpio63 without enabling the pcie2 slot.

We have to remove the pcie2_pins node so the gpio63 is not defined
twice. Because pcie2 node has a reference to pcie2_pins we have to
remove it as well.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 7f694ef3d9f1121c03935c330093c594b8437098)

6 years agoipq806x: move mmc specific nodes into v1.0 dtsi
Pavel Kubelun [Thu, 18 Jan 2018 14:32:19 +0000 (17:32 +0300)]
ipq806x: move mmc specific nodes into v1.0 dtsi

These nodes are common for all revisions so put it into SoC v1.0
dtsi file.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 7a4f9c5993a726a3009a93dcd6aacb93d2aea6e1)

6 years agoipq806x: fix pcie tx termination offset
Pavel Kubelun [Thu, 18 Jan 2018 10:51:25 +0000 (13:51 +0300)]
ipq806x: fix pcie tx termination offset

According to GPL tarballs and QSDK related branch tx termination
offset for ipq8064 SoC version >= 2.0 should be equal to 0 and
not 7.

https://github.com/paul-chambers/netgear-r7800/blob/master/git_home/linux.git/sourcecode/arch/arm/mach-msm/board-ipq806x.c#L1682-L1685

Fix this.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit fbedc2213c19023bb4ec4ed7bd71908501aaf6d1)

6 years agoipq806x: apply updated USB PHY settings to v2.0 SoC
Pavel Kubelun [Thu, 18 Jan 2018 10:38:18 +0000 (13:38 +0300)]
ipq806x: apply updated USB PHY settings to v2.0 SoC

USB PHY power settings introduced for ipq8065 SoC with commit
644a0d5 "ipq8065: adjust SS USB PHY power settings"

According to that commit msg and in correspondence to GPL tarballs
and related QSDK branch those settings are applied to ipq8064
SoCs of version >= 2.0.

https://github.com/paul-chambers/netgear-r7800/blob/master/git_home/linux.git/sourcecode/arch/arm/mach-msm/board-ipq806x.c#L2507-L2514

Now as we have clarified that mass market boards are of SoC v2.0
move those USB PHY settings from ipq8065 (v3.0 SoC) dtsi to
ipq8064 v2.0 dtsi.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit d4b98c38c6acdabf37c9d099be5e2c3cf06a05fb)

6 years agoipq806x: reference ipq8065 as ipq8064 v3.0
Pavel Kubelun [Thu, 18 Jan 2018 10:21:49 +0000 (13:21 +0300)]
ipq806x: reference ipq8065 as ipq8064 v3.0

ipq8065 is ipq8064 v3.0
> socinfo_init: v6, id=280, ver=3.0, raw_id=17, raw_ver=17, hw_plat=0,  hw_plat_ver=65536

Include dtsi accordingly and remove the unneeded qcom-ipq8065-v1.0.dtsi

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit e16f9abf6b5b5d56d83892d7d86d89023f1e5d42)

6 years agoipq806x: move mass market ipq8064 to v2 dtsi
Pavel Kubelun [Thu, 18 Jan 2018 10:04:33 +0000 (13:04 +0300)]
ipq806x: move mass market ipq8064 to v2 dtsi

According to OEM bootlog entry mass market devices are ipq8064 SoC
v2.0:
> socinfo_init: v6, id=202, ver=2.0, raw_id=2064, raw_ver=2064, hw_plat=0,  hw_plat_ver=65536

I've checked C2600, EA8500 and VR2600v but couldn't find other
boards bootlog. I think it's safe to assume that other boards are
also v2.0. R7500 may be an exception because it was the first
device to hit the market.

So switch to v2.0 dtsi.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 067036e8750a61a700718bf874e52b18a11cb277)

6 years agoipq806x: introduce ipq8064 SoC v2 dtsi
Pavel Kubelun [Thu, 18 Jan 2018 09:39:50 +0000 (12:39 +0300)]
ipq806x: introduce ipq8064 SoC v2 dtsi

According to QCA internal numbering there are 3 versions of
ipq8064/5 SoC:
ipq8064 v1.0 - probably ipq8064 evaluation boards only
ipq8064 v2.0 - probably ipq8064 mass market boards only
ipq8064 v3.0 - aka ipq8065, boards based on ipq8065.

Each next revision includes configuration differences from
previous revision and adds something new.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit adbdf780492c0b877057ffb6765d0329adcbd2be)

6 years agokernel: iqp806x low latency kernel does not boot
Marc Benoit [Wed, 4 Apr 2018 22:57:50 +0000 (18:57 -0400)]
kernel: iqp806x low latency kernel does not boot

It keeps failing (R7800) with the stack trace below

BUG: scheduling while atomic: kworker/0:1/26/0x00000002

(unwind_backtrace) from [<c02121d0>] (show_stack+0x10/0x14)
(show_stack) from [<c03932e4>] (dump_stack+0x7c/0x9c)
(dump_stack) from [<c0239b90>] (__schedule_bug+0x5c/0x80)
(__schedule_bug) from [<c05b7260>] (__schedule+0x50/0x3f4)
(__schedule) from [<c05b76a8>] (schedule+0xa4/0xd4)
(schedule) from [<c05ba430>] (schedule_hrtimeout_range_clock+0xc8/0x100)
(schedule_hrtimeout_range_clock) from [<c05ba480>]
       (schedule_hrtimeout_range+0x18/0x20)
(schedule_hrtimeout_range) from [<c05b9f78>] (usleep_range+0x48/0x50)
(usleep_range) from [<c03f333c>] (__clk_hfpll_enable+0x44/0xd0)
(__clk_hfpll_enable) from [<c03f3474>] (clk_hfpll_set_rate+0xac/0xc4)
(clk_hfpll_set_rate) from [<c03ec390>] (clk_change_rate+0xf4/0x1fc)
(clk_change_rate) from [<c03ec510>] (clk_core_set_rate_nolock+0x78/0x94)
(clk_core_set_rate_nolock) from [<c03ec54c>] (clk_set_rate+0x20/0x30)
(clk_set_rate) from [<c0424168>] (dev_pm_opp_set_rate+0x190/0x26c)
(dev_pm_opp_set_rate) from [<c04a8548>] (set_target+0x40/0x108)
(set_target) from [<c04a4.140>] (__cpufreq_driver_target+0x3f4/0x488)
(__cpufreq_driver_target) from [<c04a7494>] (od_dbs_timer+0xcc/0x154)
(od_dbs_timer) from [<c04a7998>] (dbs_work_handler+0x2c/0x54)
(dbs_work_handler) from [<c02309e8>] (process_one_work+0x1c0/0x2f0)
(process_one_work) from [<c02319a8>] (worker_thread+0x2a4/0x404)
(worker_thread) from [<c0235944>] (kthread+0xd8/0xe8)
(kthread) from [<c020eef0>] (ret_from_fork+0x14/0x24)

Signed-off-by: Marc Benoit <marcb62185@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit e40db2907e2a7d4837b25be3bedb1f25fc248bbf)

6 years agoipq806x: define KERNEL_SIZE in KB instead of byte for the image generation
Stefan Lippers-Hollmann [Fri, 18 May 2018 02:23:01 +0000 (04:23 +0200)]
ipq806x: define KERNEL_SIZE in KB instead of byte for the image generation

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 05f53eecca5e1b28706ef074477a55917ed6deb1)

6 years agoipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500v2
Stefan Lippers-Hollmann [Fri, 18 May 2018 02:18:17 +0000 (04:18 +0200)]
ipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500v2

Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 R7500v2.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit c3af761e4740820a29e993414d3d2f49c7eff6e7)

6 years agoipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500
Stefan Lippers-Hollmann [Fri, 18 May 2018 02:12:04 +0000 (04:12 +0200)]
ipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500

Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 R7500

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
(cherry picked from commit c228bbe616a52921a9d8fc961b3efcbdd3880c25)

6 years agoipq806x: increase kernel partition size for the Netgear Nighthawk X4 D7800
Stefan Lippers-Hollmann [Fri, 18 May 2018 01:49:27 +0000 (03:49 +0200)]
ipq806x: increase kernel partition size for the Netgear Nighthawk X4 D7800

Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 D7800.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Tathagata Das <tathagata@alumnux.com>
(cherry picked from commit 45b8a7c1a6415125f4fe872ec83b3d31a2fa799b)

6 years agoipq806x: increase kernel partition size for the TP-Link Archer VR2600v
Stefan Lippers-Hollmann [Fri, 18 May 2018 01:34:44 +0000 (03:34 +0200)]
ipq806x: increase kernel partition size for the TP-Link Archer VR2600v

The default image does not fit 2 MB anymore, expand kernel partition
to 3 MB.

Upgrading should work transparently via sysupgrade in both directions.
Another option would be to merge "kernel" and "rootfs" into a single
"firmware" partition using MTD_SPLIT_TPLINK_FW, but just changing the
sizes of the existing partitioning has been deemed safer in the absence
of an actual runtime test on an affected device; the maximum for rootfs
changes from 10.4 MB to 9.4 MB.

This change follows the example for the TP-Link Archer C2600, but has
not been runtime tested on a TP-Link Archer VR2600v.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Sebastian Quilitz <zeraphim@x-pantion.de>
(cherry picked from commit 0c967d92b3d9ca34f01f194ad0353f131b42e986)

6 years agoipq806x: increase kernel partition size for the TP-Link Archer C2600
Stefan Lippers-Hollmann [Fri, 18 May 2018 01:10:18 +0000 (03:10 +0200)]
ipq806x: increase kernel partition size for the TP-Link Archer C2600

The default image does not fit 2 MB anymore, expand os-image partition
to 4 MB.

Upgrading works transparently via sysupgrade in both directions.
Another option would have been to merge "os-image" and "rootfs" into a
single "firmware" partition using MTD_SPLIT_TPLINK_FW, but just
changing the sizes of the existing partitioning has been deemed safer
and actually tested on an affected device; the maximum for rootfs
changes from 27 MB to 25 MB.

Run-tested on TP-Link Archer C2600.

Signed-off-by: Joris de Vries <joris@apptrician.nl>
[slh: extend comments and commit message, rename rootfs]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit b72b36653a3fc8347456ab9c45d26a3144688a4c)

6 years agoipq806x: increase kernel partition size for the Netgear r7800
Stefan Lippers-Hollmann [Fri, 18 May 2018 01:00:41 +0000 (03:00 +0200)]
ipq806x: increase kernel partition size for the Netgear r7800

Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This patch is based on a corresponding change by Pavel Kubelun
<be.dissent@gmail.com> and has been tested by Michael Yartys
<michael.yartys@protonmail.com>

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit dc50694bd1a8f81b40c185bc8cacbdc8e821a3c6)

6 years agoipq806x: cleanup kernel config
Ram Chandra Jangir [Thu, 17 May 2018 12:55:29 +0000 (18:25 +0530)]
ipq806x: cleanup kernel config

Disable MSM8960, MSM8974 and APQ8084
 - since these are different SoC's than IPQ806x
Removed unrequired serial configs
 - since ipq806x uses SERIAL_MSM only

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 7ac6697fe269e7915e2dd55ba872cffcc102338b)

6 years agoipq806x: add kernel 4.14 support
Ram Chandra Jangir [Fri, 4 May 2018 16:27:33 +0000 (21:57 +0530)]
ipq806x: add kernel 4.14 support

 - Rebased the patches for 4.14
 - Dropped spi-qup and 0027, 0028, 0029
   clk patches since it's already included
   in upstream.

 Tested on IPQ AP148 Board:
  1) NOR boot and NAND boot
  2) Tested USB and PCIe interfaces
  3) WDOG test
  4) cpu frequency scaling
  5) ethernet, 2G and 5G WiFi
  6) ubi sysupgrade

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 93dd2f7211db6607184adadb488582e01fd5c29b)

6 years agoipq40xx: add eva-image for FRITZ!Box 4040
David Bauer [Tue, 15 May 2018 23:57:16 +0000 (01:57 +0200)]
ipq40xx: add eva-image for FRITZ!Box 4040

This commit adds an EVA flashable image for the FRITZ!Box 4040.

The image contains the U-Boot with OpenWRT appended to it. This way we
remove the need to use UART for initial flashing.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 70e6ea319d3bfdfdb34be540dc7d89aa175b5587)

6 years agobuild: add apend-uboot command
David Bauer [Tue, 15 May 2018 17:02:48 +0000 (19:02 +0200)]
build: add apend-uboot command

This commit adds an append-uboot command to append U-Boot from the
bin-directory.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 399495a952bf687d9c59226bddf4e73d3b42b30c)

6 years agoramips: change wifi led trigger for Archer C50v3
David Bauer [Fri, 18 May 2018 21:37:49 +0000 (23:37 +0200)]
ramips: change wifi led trigger for Archer C50v3

This commit alters the TP-Link Archer C50v3 LED settings to use the phy
trigger instead of the netdev one. This way the WiFi status is displayed
even if the wifi interface name is altered.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit ce91c85e01050cb19c89c9a19369a56a94619e7f)

6 years agoramips: fix Archer C50v3 LED mapping
David Bauer [Fri, 18 May 2018 15:48:31 +0000 (17:48 +0200)]
ramips: fix Archer C50v3 LED mapping

This commit fixes the wrong LED mapping of the Archer C50 v3.
Commit was tested with an EU device.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 35d00d9a41ac369fd4be4e37998043f11ce80906)

6 years agoar71xx: Add support for PISEN TS-D084
Chuanhong Guo [Sun, 22 Apr 2018 10:29:36 +0000 (18:29 +0800)]
ar71xx: Add support for PISEN TS-D084

PISEN TS-D084 is an wireless router with a battery and integrated power supply based on Atheros AR9331.

Specification:

- 400/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 1x 10/100 Mbps Ethernet
- 1T1R 2.4 GHz (AR9331)
- 1x USB 2.0

Flash instruction:
The manufacturer are using exactly the same firmware header as TP-LINK TL-WR703N (including device ID!). Simply upload the factory firmware into WebUI and flashing is done.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit a789c0f49159c618d990541c23e00630f7296ebc)

6 years agokernel: enable THIN_ARCHIVES by default
Sergey Ryazanov [Mon, 21 May 2018 09:12:37 +0000 (12:12 +0300)]
kernel: enable THIN_ARCHIVES by default

THIN_ARCHIVES option is enabled by default in the kernel configuration
and no one target config disables it. So enable it by default and remove
this symbol from target specific configs to keep them light.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit 67a3cdcbb05559549985a189eabaf2df92559ed7)

6 years agokernel: enable FUTEX_PI by default
Sergey Ryazanov [Mon, 21 May 2018 09:12:36 +0000 (12:12 +0300)]
kernel: enable FUTEX_PI by default

New FUTEX_PI configuration symbol enabled if FUTEX and RT_MUTEX symbols
are enabled. Both of these symbols are enabled by default in the
generic config, so enable FUTEX_PI by default too to keep platform
specific configs minimal.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit bdc2b58c4bccb50242af853dc80b50f9324b841c)

6 years agokernel: enable EXPORTFS by default
Sergey Ryazanov [Mon, 21 May 2018 09:12:35 +0000 (12:12 +0300)]
kernel: enable EXPORTFS by default

OVERLAY_FS config symbol selects EXPORTFS since 4.12 kernel, we have
OVERLAY_FS enabled by default, so enable EXPORTFS in the generic config
of 4.14 and remove this option from platform specific configs.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit a08b0d0c3149060f1585ad3ea2ea3edfde71bce4)

6 years agokernel: disable DRM_LIB_RANDOM by default
Sergey Ryazanov [Mon, 21 May 2018 09:12:34 +0000 (12:12 +0300)]
kernel: disable DRM_LIB_RANDOM by default

DRM_LIB_RANDOM config symbol selected only by DRM_DEBUG_MM_SELFTEST
which is disable by default, so disable DRM_LIB_RANDOM by default too.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit 978543a246c6badb5e5e1c2430211e01f005af27)

6 years agokernel: disable DMA_{NOOP|VIRT}_OPS by default
Sergey Ryazanov [Mon, 21 May 2018 09:12:33 +0000 (12:12 +0300)]
kernel: disable DMA_{NOOP|VIRT}_OPS by default

These options do not used by any supported arch, so disable them by
default to make arch configs a bit more clean.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit ead26e9db649a508ba93e7e8193ada70322620b1)

6 years agokernel: disable ARCH_WANTS_THP_SWAP by default
Sergey Ryazanov [Mon, 21 May 2018 09:12:32 +0000 (12:12 +0300)]
kernel: disable ARCH_WANTS_THP_SWAP by default

Only one arch (x86_64) enables this option. So disable
ARCH_WANTS_THP_SWAP by default and remove referencies to it from all
configs (except x86_64) to make them clean.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit f928c338ad6c8215a5fe280473e37786157a2d05)

6 years agoarc770: remove source-only
Evgeniy Didin [Mon, 21 May 2018 13:55:30 +0000 (16:55 +0300)]
arc770: remove source-only

In commit 8b9cdebc9c53 ("arc770: mark as source-only") arc770 was marked
as source-only because of iproute2 compile issues.
With uClibc-ng version 1.0.30 issues with iproute2 were fixed.
Lets remove "source-only" for arc770 as soon as uClibc-ng version
will be updated to 1.0.30. Patch for uClibc-ng is here:
https://patchwork.ozlabs.org/patch/917547/

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
(cherry picked from commit a2418dba0214318f4ef22c5bd3f9204d0f092253)

6 years agouClibc-ng: update to 1.0.30
Evgeniy Didin [Mon, 21 May 2018 10:50:33 +0000 (13:50 +0300)]
uClibc-ng: update to 1.0.30

uClibc-ng 1.0.28 does not provide PF_VSOCK/AF_VSOCK definitions,
which causes iproute2 v4.16.0 compile errors.
In commit 57f2f80383b5 ("bits/socket.h: add missing defines")
necessary defines were included and iproute2 builds fine.
This commit now is part of uClibc-ng 1.0.30.
Lets update uClibc-ng to latest 1.0.30 version.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
(cherry picked from commit 83e926270361ca2cc7c773282bb1b57a5e67588f)

6 years agoar71xx: Fix build for dap-1330-a1 board
Hauke Mehrtens [Mon, 21 May 2018 13:22:00 +0000 (15:22 +0200)]
ar71xx: Fix build for dap-1330-a1 board

Using a version number of 16 character causes a buffer overflow in the
version number overwriting the first bit of the signature in the
mkdapimg2 tool.
I am not sure if the version number should be null terminated or not.
This patch reduces the size of the version number by removing the number
of private commits from it.

This was the original version number which caused problems:
OpenWrt-r6727+10
Now it uses this version number:
OpenWrt-r6727

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ae8ff1c65c4ea4e0b2e1e8ef94fad87587d979bc)

6 years agoath25: drop 4.9 kernel support
Sergey Ryazanov [Mon, 21 May 2018 09:19:31 +0000 (12:19 +0300)]
ath25: drop 4.9 kernel support

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit 06116473cca4ee765978aa3035eab321cd57bd71)

6 years agoath25: switch to 4.14 kernel
Sergey Ryazanov [Mon, 21 May 2018 09:19:30 +0000 (12:19 +0300)]
ath25: switch to 4.14 kernel

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit 5191ea56218b5c7f17dbe5cdb6fb6895ee386156)

6 years agoath25: add kernel 4.14 support
Sergey Ryazanov [Mon, 21 May 2018 09:19:29 +0000 (12:19 +0300)]
ath25: add kernel 4.14 support

Copy and refresh patches and config from 4.9, no more work is need.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
(cherry picked from commit 3d69857ac1647e5bc924a9af1e8d00182316cb0d)

6 years agokernel: whitespace fixes
John Crispin [Fri, 18 May 2018 09:09:06 +0000 (11:09 +0200)]
kernel: whitespace fixes

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit 22c16c5d823fa8de1c05837faf7b404405b8c74f)

6 years agox86: disable CONFIG_EFI_VARS
Alif M. Ahmad [Tue, 27 Feb 2018 02:01:04 +0000 (02:01 +0000)]
x86: disable CONFIG_EFI_VARS

Disable CONFIG_EFI_VARS, since it suffers from sysfs limitation (no
support for variable longer than 1024 bytes).

kmod-fs-efivarfs is the replacement of this, which enables mounting
efivarfs file system and doesn't suffer from 1024 bytes limitation.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
(cherry picked from commit b0a51dab8c5b8d40828a00b0c6d66450bf90f217)

6 years agohostapd: fix IEEE 802.11r (fast roaming) defaults
Gospod Nassa [Fri, 18 May 2018 08:39:33 +0000 (09:39 +0100)]
hostapd: fix IEEE 802.11r (fast roaming) defaults

Use ft_psk_generate_local=1 by default, as it makes everything else fairly
trivial. All of the r0kh/r1kh and key management stuff goes away and hostapd
fairly much does it all for us.

We do need to provide nas_identifier, which can be derived from the BSSID,
and we need to generate a mobility_domain, for which we default to the first
four chars of the md5sum of the SSID.

The complex manual setup should also still work, but the defaults also
now work easily out of the box. Verified by manually running hostapd
(with the autogenerated config) and watching the debug output:

wlan2: STA ac:37:43:a0:a6:ae WPA: FT authentication already completed - do not start 4-way handshake

 This was previous submitted to LEDE in
 https://github.com/lede-project/source/pull/1382

[dwmw2: Rewrote commit message]
Signed-off-by: Gospod Nassa <devianca@gmail.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
(cherry picked from commit 3cc56a5534b8b49a7e9ba57edf9878ec32bdd27a)

6 years agowireguard: no longer need portability patch
Kevin Darbyshire-Bryant [Thu, 17 May 2018 22:08:21 +0000 (23:08 +0100)]
wireguard: no longer need portability patch

Drop package/network/services/wireguard/patches/100-portability.patch

Instead pass 'PLATFORM=linux' to make since we are always building FOR
linux.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit f06def4221c25f4ee43d31c2b90a1371ba4d6d33)

6 years agoramips: add support for YUKAI Engineering Inc. BOCCO
YuheiOKAWA [Thu, 22 Feb 2018 16:58:23 +0000 (01:58 +0900)]
ramips: add support for YUKAI Engineering Inc. BOCCO

BOCCO is a communication robot provided by YUKAI Engineering Inc.

SoC: MT7620A
MEM: 256MB
Flash: 8MB
NAND: 512MB (non support)
Include Sound DAC and AMP.
No Wired Ethernet.

Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
(cherry picked from commit d91953cb5351f1ab3e75ae9e2d9622f754d518ed)

6 years agoar71xx: WNDR3700: enable RFKILL function for Wifi button
Michal Cieslakiewicz [Thu, 22 Feb 2018 22:11:08 +0000 (23:11 +0100)]
ar71xx: WNDR3700: enable RFKILL function for Wifi button

Wifi button for WNDR3700 dual band routers has been renamed to "rfkill"
and its emitted keycode changed to KEY_RFKILL. This allows OpenWrt/LEDE
to support it 'out of the box' without additional tweaking.

Until this patch, button had been sending BTN_2 keycode which was
ignored by default (no action script present). To get expected behaviour
of switching radios on and off, user had to manually rename/link
'rfkill' script to name 'BTN_2' in /etc/rc.button directory.

This patch follows similar changes for other Netgear ar71xx routers,
for example WNR2000v3. It applies cleanly to both latest trunk and 17.01
branch. Tested on WNDR3700v1.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
(cherry picked from commit 45dc530334d8694a962d0833432effd14fa5cc4a)

6 years agobrcm2708: add squashfs rootfs image
Christian Lamparter [Tue, 27 Mar 2018 17:42:18 +0000 (19:42 +0200)]
brcm2708: add squashfs rootfs image

This patch adds a image with squashfs as the root filesystem.
A rootfs_data partition will be generated on the first boot
and placed inside the rootfs partition (just after the squashfs
image).

advantages:
 - it is possible to migrate from an existing -ext4
   installation and back via sysupgrade.
 - existing partition layout will not be lost.
 - slightly smaller image size.
 - support for attendedsysupgrade

disadvantages:
 - needs f2fs + tools as well. This is because fs-tools decides on the
   blocksize of the sdcard. So either f2fs or ext4 can get choosen as
   the rootfs_data filesystem (depends on the size of the root partition).
 - rootfs_data is placed into the rootfs partition. This makes
   it difficult for tools that expect a /dev/mmc0pX device.
   It also makes it difficult for data recovery tools since they
   might not expect to find a embedded partition or will be
   confused.

For people with existing build configurations: make sure to include mkf2fs
and f2fsck package into the image... Otherwise the new -squashfs image will
boot of a ram-overlay and won't keep the configurations after a reboot.

Cc: Álvaro Fernández Rojas <noltari@gmail.com>
Cc: Paul Spooren <spooren@informatik.uni-leipzig.de>
Cc: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Acked-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 707b6c815bba34e9783d2695020bb17385fdcf1d)

6 years agox86: Add APU3 reference to x86 board.d
Kristian Evensen [Thu, 15 Mar 2018 12:30:27 +0000 (13:30 +0100)]
x86: Add APU3 reference to x86 board.d

There is a new APU-model available, APU3. The device is configured in
the same way as the APU1 and APU2, so the same LED/network setup can be
used.

I considered changing the case to pc-engines-apu*, but I chose to follow
the existing pattern and add the full board name.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
(cherry picked from commit 8f9baf5e1a9300fe66ff90486182a1fd2e645d9e)

6 years agoapm821xx: backport and reassign crypto4xx patches
Christian Lamparter [Sat, 28 Apr 2018 20:08:09 +0000 (22:08 +0200)]
apm821xx: backport and reassign crypto4xx patches

This patch backports several patches that went upstream into
Herbert Xu's cryptodev-2.6 tree:

crypto: Use zeroing memory allocator instead of allocator/memset
crypto: crypto4xx - performance optimizations
crypto: crypto4xx - convert to skcipher
crypto: crypto4xx - avoid VLA use
crypto: crypto4xx - add aes-ctr support
crypto: crypto4xx - properly set IV after de- and encrypt
crypto: crypto4xx - extend aead fallback checks
crypto: crypto4xx - put temporary dst sg into request ctx

The older, outstanding patches from 120-wxyz series have been
upstreamed as well and therefore they have been reassigned to
fit into the series.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 16e39624b728264bd4759580f6292bffefcae466)

6 years agoapm821xx: don't select swconfig for the MR24
Christian Lamparter [Sat, 28 Apr 2018 20:08:08 +0000 (22:08 +0200)]
apm821xx: don't select swconfig for the MR24

The swconfig package is part of the DEFAULT_PACKAGES list in
the apm821xx's nand subtarget. It's enabled by default because
the MX60(W) and WNDR4700 need it for their initramfs. However
the package is not necessary for the MR24's sysupgrade image, as
the MR24 does not have a switch.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit e6e51ce87fac2d6b9d082336f8d767f12154d79b)

6 years agoipq40xx: fix ethernet on ap-dk01.1
Roman Yeryomin [Fri, 4 May 2018 14:43:46 +0000 (17:43 +0300)]
ipq40xx: fix ethernet on ap-dk01.1

Not sure how it worked before but ethernet is disabled
by default in ipq4019 dtsi.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
(cherry picked from commit 1f42deec8edac3e99f83f7343cbd4fec29333345)

6 years agobrcm63xx: Tune the network configuration for several routers
Daniel Gonzalez Cabanelas [Wed, 21 Feb 2018 17:24:58 +0000 (18:24 +0100)]
brcm63xx: Tune the network configuration for several routers

- DGND3700v1: fix port numbers, they're in reverse order
- FaST2704n: there is no WAN port identified as such, only 4 LAN
- AD1018: configure the "FIBRE" port as WAN

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
(cherry picked from commit fbbb97777297bf8a168b840c88d18d6e2079ce8f)

6 years agoltq-xdsl-app: start after led script
Mathias Kresin [Wed, 7 Mar 2018 20:38:03 +0000 (21:38 +0100)]
ltq-xdsl-app: start after led script

During handshake we are highjack and reset a LED to the configured trigger
afterwards. ltq-xdsl-app need to start after the LED init script, to
ensure that the LED init script doesn't re-highjack the LED we are
currently using for handshake indication.

Drop the comment about the atm dependency. The dependency was fixed quite
some time ago by using hotplug scripts for br2684ctl.

Signed-off-by: Mathias Kresin <dev@kresin.me>
(cherry picked from commit 0678cc850ccc068ba33eb87f5f1bf8294a87e611)

6 years agotools: zlib: do not hardcode the install prefix in zlib.pc
Jo-Philipp Wich [Thu, 24 May 2018 15:01:54 +0000 (17:01 +0200)]
tools: zlib: do not hardcode the install prefix in zlib.pc

Our pkg-config wrapper relies on the ability to redefine the $prefix and
$exec_prefix variables in order to construct proper search paths relative
to the build environment.

Patch the .pc file template to construct libdir, sharedlibdir and includedir
relative to the ${prefix} variable so that it can be overridden as needed.

This also fixes the libxml2/host build issue raised at
https://github.com/openwrt/packages/issues/6073 - it was caused by libxml2's
configure picking up a wrong host search path through zlib.pc, letting it
include the wrong endian.h, causing spurious member redeclaration errors in
system headers.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 4da832e201da2493b66024f234a78a2249af4aff)

6 years agokernel: bump 4.14 to 4.14.43 for 18.06
Koen Vandeputte [Thu, 24 May 2018 08:08:20 +0000 (10:08 +0200)]
kernel: bump 4.14 to 4.14.43 for 18.06

Refreshed all patches

Dropped upstreamed patches:
522-PCI-aardvark-fix-logic-in-PCI-configuration-read-write-functions.patch
523-PCI-aardvark-set-PIO_ADDR_LS-correctly-in-advk_pcie_rd_conf.patch
525-PCI-aardvark-use-isr1-instead-of-isr0-interrupt-in-legacy-irq-mode.patch
527-PCI-aardvark-fix-PCIe-max-read-request-size-setting.patch

updated patches:
524-PCI-aardvark-set-host-and-device-to-the-same-MAX-payload-size.patch
030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch

Added new ARM64 symbol: CONFIG_ARM64_ERRATUM_1024718

Compile-tested on: cns3xxx, imx6, mvebu (arm64), x86_64
Runtime-tested on: cns3xxx, imx6, x86_64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 years agokernel: bump 4.9 to 4.9.102 for 18.06
Koen Vandeputte [Thu, 24 May 2018 08:08:19 +0000 (10:08 +0200)]
kernel: bump 4.9 to 4.9.102 for 18.06

Refreshed all patches

Added new ARM64 symbol: ARM64_ERRATUM_1024718

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 years agoRevert "dnsmasq: use "hostsdir" instead of "addn-hosts""
Hans Dedecker [Thu, 24 May 2018 08:27:07 +0000 (10:27 +0200)]
Revert "dnsmasq: use "hostsdir" instead of "addn-hosts""

This reverts commit c97189e26dfb9b0eaf5b9cd7e33a99e2f780cb58
as it has different issues:
-Host file is not written in a directory unique per dnsmasq instance
-odhcpd writes host info into the same directory but still sends a SIGHUP to dnsmasq

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
6 years agodnsmasq: use "hostsdir" instead of "addn-hosts"
Christian Schoenebeck [Tue, 22 May 2018 18:36:18 +0000 (20:36 +0200)]
dnsmasq: use "hostsdir" instead of "addn-hosts"

1.) "addn-hosts" per default point to a file (but it supports directory)
2.) "hostsdir" only support directory with the additional benefit: New or changed files are read automatically.

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
6 years agotoolchain/glibc: update to latest 2.26 commit
Hans Dedecker [Wed, 23 May 2018 13:14:43 +0000 (15:14 +0200)]
toolchain/glibc: update to latest 2.26 commit

af7519f7b3 Fix path length overflow in realpath [BZ #22786]
365722ace6 Fix stack overflow with huge PT_NOTE segment [BZ #20419]
be056fae3b Fix blocking pthread_join. [BZ #23137]
02f0dd83a4 Fix signed integer overflow in random_r (bug 17343).
3241353ab2 i386: Fix i386 sigaction sa_restorer initialization (BZ#21269)
677e6d13e0 [BZ #22342] Fix netgroup cache keys.
71d339cb86 Fix i386 memmove issue (bug 22644).
31e2d15b80 Fix crash in resolver on memory allocation failure (bug 23005)
1f7c4748d6 getlogin_r: return early when linux sentinel value is set
7e7a5f0bcd resolv: Fully initialize struct mmsghdr in send_dg [BZ #23037]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
6 years agouboot-zynq: fix build on hosts lacking pkg-config
Jo-Philipp Wich [Wed, 23 May 2018 07:32:25 +0000 (09:32 +0200)]
uboot-zynq: fix build on hosts lacking pkg-config

The uboot-mvebu package incorrectly used the host pkg-config for the tool
build parts, which broke the build on systems lacking pkg-config and only
worked by accident on those that have it installed.

Export the host-build specific environment variables for the uboot build
to redirect pkg-config invocations to our staged host build pkg-config in
buildroot.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 1289e00fffaebad7ab1a9cec33c7b0472edb4527)

6 years agouboot-mxs: fix build on hosts lacking pkg-config
Jo-Philipp Wich [Wed, 23 May 2018 07:15:52 +0000 (09:15 +0200)]
uboot-mxs: fix build on hosts lacking pkg-config

The uboot-mvebu package incorrectly used the host pkg-config for the tool
build parts, which broke the build on systems lacking pkg-config and only
worked by accident on those that have it installed.

Export the host-build specific environment variables for the uboot build
to redirect pkg-config invocations to our staged host build pkg-config in
buildroot.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 208b984dda0c2348d425b992b9a1c171d5aaa8e8)

6 years agouboot-mvebu: fix build on hosts lacking pkg-config
Jo-Philipp Wich [Wed, 23 May 2018 07:02:59 +0000 (09:02 +0200)]
uboot-mvebu: fix build on hosts lacking pkg-config

The uboot-mvebu package incorrectly used the host pkg-config for the tool
build parts, which broke the build on systems lacking pkg-config and only
worked by accident on those that have it installed.

Export the host-build specific environment variables for the uboot build
to redirect pkg-config invocations to our staged host build pkg-config in
buildroot.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 01c2ce3c7d374c7e00562a7f3e54e87d23fef169)

6 years agowireguard: bump to 20180519
Jason A. Donenfeld [Sat, 19 May 2018 03:55:58 +0000 (05:55 +0200)]
wireguard: bump to 20180519

* chacha20poly1305: add mips32 implementation

"The OpenWRT Commit" - this significantly speeds up performance on cheap
plastic MIPS routers, and presumably the remaining MIPS32r2 super computers
out there.

* timers: reinitialize state on init
* timers: round up instead of down in slack_time
* timers: remove slack_time
* timers: clear send_keepalive timer on sending handshake response
* timers: no need to clear keepalive in persistent keepalive

Andrew He and I have helped simplify the timers and remove some old warts,
making the whole system a bit easier to analyze.

* tools: fix errno propagation and messages

Error messages are now more coherent.

* device: remove allowedips before individual peers

This avoids an O(n^2) traversal in favor of an O(n) one. Before systems with
many peers would grind when deleting the interface.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
6 years agobuild: prevent spurious package rebuilds under CONFIG_AUTOREMOVE
Jo-Philipp Wich [Tue, 22 May 2018 07:18:33 +0000 (09:18 +0200)]
build: prevent spurious package rebuilds under CONFIG_AUTOREMOVE

When CONFIG_AUTOREMOVE is enabled, the build system touches an additional
".autoremove" stamp file in the cleaned build directory.

Since the autoremove stamp file is touched after the compile process
completed, it ends up being the most recent file of the package build
directory, causing the timestamp.pl check of depends.mk to erroneously
declare the ".built" and ".prepared" stamp files as stale, triggering
a forced clean-build submake process.

Fix the problem by using the ".built" stamp file as modification time
reference when touching the ".autoremove" stamp file.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit b287c82bed6673648a69be6c1cf84abe8885a3c4)

6 years agoopenwrt-keyring: bundle latest usign certificates
Jo-Philipp Wich [Sun, 20 May 2018 17:37:58 +0000 (19:37 +0200)]
openwrt-keyring: bundle latest usign certificates

Includes the public usign certificates used by the 18.06.* release builds.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 6d108c4a1a40708715e663d6e8eec3ce5ef79c21)

6 years agobase-files: depend on openwrt-keyring
Jo-Philipp Wich [Sun, 20 May 2018 17:34:36 +0000 (19:34 +0200)]
base-files: depend on openwrt-keyring

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 01329877bcb696dcbbda993a51992d468e1e3c74)

6 years agoopenwrt-keyring: rename from lede-keyring
Jo-Philipp Wich [Sun, 20 May 2018 17:32:29 +0000 (19:32 +0200)]
openwrt-keyring: rename from lede-keyring

Also let the new openwrt-keyring package provide lede-keyring for backwards
compatibility.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit fd72e67ffe10a130ae4ee9620e7670d83c2538ce)