openwrt/staging/blogic.git
5 years agomac80211: Update to version 5.4-rc2
Hauke Mehrtens [Tue, 1 Oct 2019 21:28:36 +0000 (23:28 +0200)]
mac80211: Update to version 5.4-rc2

This updates mac80211 to backports based on kernel 5.4-rc2

ath10k-ct was updated to match the API changes and iw now uses the new
nl80211.h header file.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agomac80211: Update to version 5.3.6
Hauke Mehrtens [Fri, 11 Oct 2019 21:15:57 +0000 (23:15 +0200)]
mac80211: Update to version 5.3.6

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agoipq806x: WPQ864: fix partition unit-address
Christian Lamparter [Fri, 11 Oct 2019 20:53:14 +0000 (22:53 +0200)]
ipq806x: WPQ864: fix partition unit-address

This patch fixes what seems to be a simple copy & paste
error with the unit-address of the BOOTCONFIG partition.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agobuild: fix seq host tool check
Jo-Philipp Wich [Fri, 15 Mar 2019 18:23:31 +0000 (21:23 +0300)]
build: fix seq host tool check

Problem found on alpine linux when trying to `./scripts/feeds update -a`,
which results in `Build dependency: Missing seq command`.

Ref: https://github.com/openwrt/openwrt/pull/1926
Suggested-by: imShara <shara@protonmail.com>
[reworded commit and turned faulty Sob into Suggested-by]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agowwan: Double quote to prevent globbing and word splitting
Florian Eckert [Tue, 29 Aug 2017 09:10:48 +0000 (11:10 +0200)]
wwan: Double quote to prevent globbing and word splitting

Fix some shellcheck warnings.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agowwan: add ec25 to database
Florian Eckert [Tue, 19 Dec 2017 10:37:51 +0000 (11:37 +0100)]
wwan: add ec25 to database

Add ec25 to database.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agowwan: add mc7304 to database
Florian Eckert [Tue, 29 Aug 2017 09:34:45 +0000 (11:34 +0200)]
wwan: add mc7304 to database

Add mc7304 to database.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agowwan: check new uci bus option on proto setup event
Florian Eckert [Wed, 23 Aug 2017 05:23:52 +0000 (07:23 +0200)]
wwan: check new uci bus option on proto setup event

If system has more then one and different wwan interface (modem). Then the
wwan protohandler will always take the modem which is discovered first.
The protohandler will always setup the same interface. To fix this add a
new usb "bus" option which is associated with wwan device and so will set
the specified interface up. With this change more then one interface
could be mananged by the wwan protohandler.

If the "bus" option is not set in the uci network config then the protohandler
behaves as before the change. The protohanldler will take the first
interface which he founds.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
5 years agoprocd: allow usage of * as procd_running() instance parameter
Alin Nastac [Thu, 17 Oct 2019 12:06:40 +0000 (14:06 +0200)]
procd: allow usage of * as procd_running() instance parameter

service_running() implementation in /etc/rc.common use it.
It is preferable to use wildcard than assuming the instance
name is the default one.

jsonfilter returns all matches when wildcards are used, hence
the -l 1 argument used to limit output to only one value.

Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
5 years agoutil-linux: add more command
Lucian Cristian [Tue, 15 Oct 2019 08:00:37 +0000 (11:00 +0300)]
util-linux: add more command

at least vtysh needs it for proper listing, busybox is not modular so add it here

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
5 years ago6in4: add rfc1918 check function
Sean Kenny [Thu, 15 Aug 2019 05:06:18 +0000 (23:06 -0600)]
6in4: add rfc1918 check function

This is a precursor to adding proper support for multiple
6in4 tunnels with the already programmed tunlink parameter.
This is an essential sanity check so as to not break existing
and working behind NAT setups.

Signed-off-by: Sean Kenny <skenny@wfap.ca>
6in4: add myip he.net api parameter logic

This is to add proper support for multiple 6in4 tunnels
with the already programmed tunlink parameter.
As it stands before this commit, if there is a multi wan setup that
consists of dynamic ips, there is no way to use the
dynamic update feature as the he.net api is implicitly using
the ip address of the caller. This will explicitly use the
ipaddr specified in the interface config OR the ip of the
tunlink interface specified in the dynamic update api call instead
ONLY if the final resolved ipaddr variable is not an rfc1918 address.

Signed-off-by: Sean Kenny <skenny@wfap.ca>
5 years agolua: install luac symlink on host
Alin Nastac [Mon, 7 Oct 2019 07:58:23 +0000 (09:58 +0200)]
lua: install luac symlink on host

Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
5 years agolantiq: Fix fw_cutter LzmaWrapper
Christian Franke [Thu, 17 Oct 2019 13:12:05 +0000 (15:12 +0200)]
lantiq: Fix fw_cutter LzmaWrapper

The destination buffer size `d_len` is passed to `lzma_inflate` as a
pointer. Therefore, it needs to be dereferenced to compare its content.

Signed-off-by: Christian Franke <nobody@nowhere.ws>
5 years agokernel: fix MBIM description
Bjørn Mork [Thu, 17 Oct 2019 08:30:02 +0000 (10:30 +0200)]
kernel: fix MBIM description

Signed-off-by: Bjørn Mork <bjorn@mork.no>
5 years agofwtool: do not omit final 16 byte when image does not contain signature
Jo-Philipp Wich [Thu, 17 Oct 2019 14:59:11 +0000 (16:59 +0200)]
fwtool: do not omit final 16 byte when image does not contain signature

The fwutil command will interpret the final 16 byte of a given firmware
image files as "struct fwimage_trailer".

In case these bytes do look like a valid trailer, we must ensure that we
print them out along with the remainder of the image to not accidentally
truncate non-trailer-images by 16 bytes when they're piped through fwtool,
e.g. as part of an image verification command sequence.

Some command sequences pipe images through fwtool in order to strip any
possible metadata, certificate or signature trailers and do not expect
bare images without any of that metadata to get truncated as other non-
fwtool specific metadata is expected at the end of the file, e.g. an
information block with an md5sum in case of the combined image format.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobuild: add buildinfo as single Makefile target
Paul Spooren [Sun, 13 Oct 2019 19:53:40 +0000 (09:53 -1000)]
build: add buildinfo as single Makefile target

The prepare target was added some 11 years ago to build tools and
toolchain and was recently extended to  create buildinfo files for
reproducibility, meaning {feeds,version,config}.buildinfo.

As the buildbot workflow is more complex than the single prepare (kmod
feed insertion), prepare is only used to create those buildinfo files.
Running prepare however runs `target/compile` as well, taking time even
everything is already compiled.

Splitting this allows the buildbot to run only the `buildinfo` target
while others can still use the convenience feature `prepare`.

Signed-off-by: Paul Spooren <mail@aparcar.org>
5 years agowireguard: bump to latest snapshot 20191012
Kevin Darbyshire-Bryant [Sun, 13 Oct 2019 19:12:21 +0000 (20:12 +0100)]
wireguard: bump to latest snapshot 20191012

8eb8443 version: bump snapshot
be09cf5 wg-quick: android: use Binder for setting DNS on Android 10
4716f85 noise: recompare stamps after taking write lock
54db197 netlink: allow preventing creation of new peers when updating
f1b87d1 netns: add test for failing 5.3 FIB changes
a3539c4 qemu: bump default version

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years agotoolchain/kernel-headers: don't use TARGET_CFLAGS
Kevin Darbyshire-Bryant [Sat, 12 Oct 2019 07:41:41 +0000 (08:41 +0100)]
toolchain/kernel-headers: don't use TARGET_CFLAGS

Kernel utilities (e.g. scripts/kconfig/conf) are being built to run on
the host system at this stage, therefore it makes no sense to use the
target system CC flags.  Use HOSTCFLAGS instead

While we're here rename KMAKE macro to HOST_KMAKE to make it even more
obvious that we're building for host.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years agoiwinfo: update to latest Git HEAD
Jo-Philipp Wich [Wed, 16 Oct 2019 14:48:40 +0000 (16:48 +0200)]
iwinfo: update to latest Git HEAD

07315b6 nl80211: handle hidden SSIDs in wpa_supplicant scan results
3ac846e lua: fix string description of mixed WPA3 modes

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoramips: fix WiFi MAC addresses for D-Link DIR-810L
Adrian Schmutzler [Mon, 7 Oct 2019 15:08:52 +0000 (17:08 +0200)]
ramips: fix WiFi MAC addresses for D-Link DIR-810L

So far, WiFi MAC addresses for this device have been set up from
caldata. However, this returns values which do not look like MAC
addresses. They also do not match stock firmware:

wlan0 (5.0): 00:11:22:00:17:D0 from 0x8004
wlan1 (2.4): 00:11:22:00:17:CD from 0x4 (and 0x2e)

It looks like the only valid MAC address on this device is at 0x28.

So, this patch changes setup to calculate addresses based on the
value at 0x28:

lan: *:0A (flash, label)
wan: *:0B (flash + 1)
wifi2: *:0A (flash)
wifi5: *:0C (flash + 2)

Thanks to Roger Pueyo Centelles <roger.pueyo@guifi.net> for
investigating this on his devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agomac80211: add new acs_exclude_dfs option
Florian Eckert [Wed, 4 Sep 2019 08:00:48 +0000 (10:00 +0200)]
mac80211: add new acs_exclude_dfs option

The channel can be selected automatically at run time by setting
channel=acs_survey or channel=0, both of which will enable the ACS survey
based algorithm in hostapd. If the option acs_exclude_dfs is set in the
hostpad config DFS channels from ACS are excluded on channel selection.

This commit will add the possibilty to exclude the dfs channel on ACS
survey.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
5 years agolantiq: fix dsl_control status handling.
Martin Schiller [Mon, 23 Sep 2019 07:50:24 +0000 (09:50 +0200)]
lantiq: fix dsl_control status handling.

Commit 7519a36774ca ("base-files,procd: add generic service status")
introduced the generic 'status' command which broke the previous
dsl_control status output. To fix this, let's rename the "old" command
to "dslstat".

Fixes: 7519a36774ca ("base-files,procd: add generic service status")
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
5 years agolibevent2: Update to 2.1.11
Daniel Engberg [Sat, 23 Feb 2019 22:38:04 +0000 (22:38 +0000)]
libevent2: Update to 2.1.11

Update libevent to 2.1.11
Use CMake instead GNU Autotools
Backport following commits:
https://github.com/libevent/libevent/commit/f05ba671931e2b4e38459899f6f63f79f99869fe
..and partially
https://github.com/libevent/libevent/commit/7201062f3ef505a77baa6ccaf1cf73812462308a
to fix compilation

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agobcm53xx: sysupgrade: support Luxul NAND devices
Dan Haab [Tue, 15 Oct 2019 15:35:08 +0000 (09:35 -0600)]
bcm53xx: sysupgrade: support Luxul NAND devices

This adds support for UBI-aware sysupgrade using Luxul formats.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
5 years agobrcm47xx: fix switch port labels for Asus WL500GP V2
Michael Heimpold [Fri, 20 Sep 2019 22:15:24 +0000 (00:15 +0200)]
brcm47xx: fix switch port labels for Asus WL500GP V2

The switch port naming in LuCI does not fit the physical numbers
on the front of this device. Since this is confusing, fix it.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
5 years agolua: fix linking under glibc
Rosen Penev [Tue, 15 Oct 2019 05:59:42 +0000 (22:59 -0700)]
lua: fix linking under glibc

Compilation of liblua itself works, but when other packages link against
it, the linker starts throwing undefined references to a bunch of math
functions in libm.

First discovered in a failed attempt to transition a package to uClibc++.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[fix commit title capitalization]
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agotreewide: use a single ath10k MAC patching function with checksum
Adrian Schmutzler [Mon, 14 Oct 2019 12:02:40 +0000 (14:02 +0200)]
treewide: use a single ath10k MAC patching function with checksum

While all ath10k eeproms have a checksum field, so far two
functions for patching ath10k MAC address have been present (and
been used).

This merges code to provide a single function ath10k_patch_mac
in caldata.sh, having its name in accordance with ath9k functions.
By doing so, correct MAC patching for current and future ath10k
devices should be ensured.

This patch adds checksum adjustments for several targets on
ath79 and lantiq.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoipq40xx: add label MAC address for FritzBox 4040
Adrian Schmutzler [Mon, 7 Oct 2019 11:15:04 +0000 (13:15 +0200)]
ipq40xx: add label MAC address for FritzBox 4040

The CWMP-Account on the device's label contains the eth0 MAC
address.

This only changes 4.19 files as label-mac-device is introduced
after 19.07 branch, so there won't be a 4.14 release anymore.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: correct ar71xx boardname for UniFi AC Lite
David Bauer [Mon, 14 Oct 2019 09:16:54 +0000 (11:16 +0200)]
ath79: correct ar71xx boardname for UniFi AC Lite

This corrects the additional boardname for the image metadata to the one
used in ar71xx. The previously present additional entry was never used
on a running system.

Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agompc85xx: correct TP-LINK TL-WDR4900 MAC addresses
David Bauer [Sun, 13 Oct 2019 21:37:59 +0000 (23:37 +0200)]
mpc85xx: correct TP-LINK TL-WDR4900 MAC addresses

This commit fixes TP-Link TL-WDR4900 v1 MAC address assignment.
Previously, the MAC addrss was read for the ethernet from the "config"
partition. However, the content of this partition is dependent on the
firmware which was previously installed on the device.

Switch the MAC address source to the U-Boot partition, where the MAC
address is always present at a fixed partition. The partition was
previously already used for the WiFi MAC-addresses.

Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoath79: add support for UniFi AC-LR
Andreas Ziegler [Sun, 6 Oct 2019 17:48:34 +0000 (19:48 +0200)]
ath79: add support for UniFi AC-LR

The Unifi AC-LR has identical hardware to the Unifi AC-Lite.
The antenna setup is different according to the vendor,
which explains the thicker enclosure.

Therefore, it is helpful to know the exact device variant,
instead of having "Ubiquiti UniFi-AC-LITE/LR".

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
[fix legacy name in commit message; add old boardname to
SUPPORTED_DEVICES]
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agogdb: bump to 8.3.1
Koen Vandeputte [Mon, 14 Oct 2019 15:37:28 +0000 (17:37 +0200)]
gdb: bump to 8.3.1

GDB 8.3.1 brings the following fixes and enhancements over GDB 8.3:

PR c++/20020 (GDB segfault on printing objects)
PR gdb/24454 (nat/x86-linux-dregs.c failed assertion)
PR breakpoints/24541 (Incorrect evaluation of systemtap probes due to register being signed and probe expression assuming unsigned)
PR symtab/24545 (Symbol loading performance regression with cc1)
PR gdb/24592 (amd64->i386 linux syscall restart problem)
PR gdb/25009 (terminate called after throwing an instance of 'srchilite::ParserException')
PR gdb/25010 (Calls to error () can cause SIGTTOU to send gdb to the background)
PR breakpoints/25011 (Breakpoints on file reloads broken for PIE binaries)

This corrective release also brings the following testsuite fixes and
enhancements:

PR testsuite/25005 (gdb-caching-proc.exp takes a lot of time on skip_opencl_tests)
PR testsuite/25016 (Test-case failures for -pie)

GDB 8.3 includes the following changes and enhancements:

* Support for new native configurations (also available as a target configuration):
     - RISC-V GNU/Linux (riscv*-*-linux*)
     - RISC-V FreeBSD (riscv*-*-freebsd*)

* Support for new target configurations:
     - CSKY ELF (csky*-*-elf)
     - CSKY GNU/Linux (csky*-*-linux)
     - NXP S12Z ELF (s12z-*-elf)
     - OpenRISC GNU/Linux (or1k*-*-linux*)

* Native Windows debugging is only supported on Windows XP or later.

* The Python API in GDB now requires Python 2.6 or later.

* GDB now supports terminal styling for the CLI and TUI.
  Source highlighting is also supported by building GDB with GNU
  Highlight.

* Experimental support for compilation and injection of C++ source
  code into the inferior (requires GCC 7.1 or higher, built with
  libcp1.so).

* GDB and GDBserver now support IPv6 connections.

* Target description support on RISC-V targets.

* Various enhancements to several commands:
     - "frame", "select-frame" and "info frame" commands
     - "info functions", "info types", "info variables"
     - "info thread"
     - "info proc"
     - System call alias catchpoint support on FreeBSD
     - "target remote" support for Unix Domain sockets.

* Support for displaying all files opened by a process

* DWARF index cache: GDB can now automatically save indices of DWARF
  symbols on disk to speed up further loading of the same binaries.

* Various GDB/MI enhancements.

* GDBserver on PowerPC GNU/Linux now supports access to the PPR,
  DSCR, TAR, EBB/PMU, and HTM registers.

* Ada task switching support when debugging programs built with
  the Ravenscar profile added to aarch64-elf.

* GDB in batch mode now exits with status 1 if the last executed
  command failed.

* Support for building GDB with GCC's Undefined Behavior Sanitizer.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agotoolchain/gdb: bump to 8.3.1
Koen Vandeputte [Mon, 14 Oct 2019 14:09:08 +0000 (16:09 +0200)]
toolchain/gdb: bump to 8.3.1

GDB 8.3.1 brings the following fixes and enhancements over GDB 8.3:

PR c++/20020 (GDB segfault on printing objects)
PR gdb/24454 (nat/x86-linux-dregs.c failed assertion)
PR breakpoints/24541 (Incorrect evaluation of systemtap probes due to register being signed and probe expression assuming unsigned)
PR symtab/24545 (Symbol loading performance regression with cc1)
PR gdb/24592 (amd64->i386 linux syscall restart problem)
PR gdb/25009 (terminate called after throwing an instance of 'srchilite::ParserException')
PR gdb/25010 (Calls to error () can cause SIGTTOU to send gdb to the background)
PR breakpoints/25011 (Breakpoints on file reloads broken for PIE binaries)

This corrective release also brings the following testsuite fixes and
enhancements:

PR testsuite/25005 (gdb-caching-proc.exp takes a lot of time on skip_opencl_tests)
PR testsuite/25016 (Test-case failures for -pie)

GDB 8.3 includes the following changes and enhancements:

* Support for new native configurations (also available as a target configuration):
     - RISC-V GNU/Linux (riscv*-*-linux*)
     - RISC-V FreeBSD (riscv*-*-freebsd*)

* Support for new target configurations:
     - CSKY ELF (csky*-*-elf)
     - CSKY GNU/Linux (csky*-*-linux)
     - NXP S12Z ELF (s12z-*-elf)
     - OpenRISC GNU/Linux (or1k*-*-linux*)

* Native Windows debugging is only supported on Windows XP or later.

* The Python API in GDB now requires Python 2.6 or later.

* GDB now supports terminal styling for the CLI and TUI.
  Source highlighting is also supported by building GDB with GNU
  Highlight.

* Experimental support for compilation and injection of C++ source
  code into the inferior (requires GCC 7.1 or higher, built with
  libcp1.so).

* GDB and GDBserver now support IPv6 connections.

* Target description support on RISC-V targets.

* Various enhancements to several commands:
     - "frame", "select-frame" and "info frame" commands
     - "info functions", "info types", "info variables"
     - "info thread"
     - "info proc"
     - System call alias catchpoint support on FreeBSD
     - "target remote" support for Unix Domain sockets.

* Support for displaying all files opened by a process

* DWARF index cache: GDB can now automatically save indices of DWARF
  symbols on disk to speed up further loading of the same binaries.

* Various GDB/MI enhancements.

* GDBserver on PowerPC GNU/Linux now supports access to the PPR,
  DSCR, TAR, EBB/PMU, and HTM registers.

* Ada task switching support when debugging programs built with
  the Ravenscar profile added to aarch64-elf.

* GDB in batch mode now exits with status 1 if the last executed
  command failed.

* Support for building GDB with GCC's Undefined Behavior Sanitizer.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.19 to 4.19.79
Koen Vandeputte [Mon, 14 Oct 2019 12:37:25 +0000 (14:37 +0200)]
kernel: bump 4.19 to 4.19.79

Refreshed all patches.

Remove upstreamed (superseded):
- 950-0726-can-mcp251x-Allow-more-time-after-a-reset.patch

Compile-tested on: brcm2708, cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.149
Koen Vandeputte [Mon, 14 Oct 2019 12:36:09 +0000 (14:36 +0200)]
kernel: bump 4.14 to 4.14.149

Refreshed all patches.

Altered patches:
- 820-sec-support-layerscape.patch

Compile-tested on: cns3xxx, layerscape
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agotoolchain/musl: bump to version 1.1.24
Koen Vandeputte [Mon, 14 Oct 2019 10:59:09 +0000 (12:59 +0200)]
toolchain/musl: bump to version 1.1.24

1.1.24 release notes

new features:
- GLOB_TILDE extension to glob
- non-stub catgets localization API, using netbsd binary catalog format
- posix_spawn file actions for [f]chdir (extension, pending future standard)
- secure_getenv function (extension)
- copy_file_range syscall wrapper (Linux extension)
- header-level support for new linux features in 5.2

performance:
- new fast path for lrint (generic C version) on 32-bit archs

major internal changes:
- functions involving time are overhauled to be time64-ready in 32-bit archs
- x32 uses the new time64 code paths to replace nasty hacks in syscall glue

compatibility & conformance:
- support for powerpc[64] unaligned relocation types
- powerpc[64] and sh sys/user.h no longer clash with kernel asm/ptrace.h
- select no longer modifies timeout on failure (or at all)
- mips64 stat results are no longer limited to 32-bit time range
- optreset (BSD extension) now has a public declaration
- support for clang inconsistencies in wchar_t type vs some 32-bit archs
- mips r6 syscall asm no longer has invalid lo/hi register clobbers
- vestigial asm declarations of __tls_get_new are removed (broke some tooling)
- riscv64 mcontext_t mismatch glibc's member naming is corrected

bugs fixed:
- glob failed to match broken symlinks consistently
- invalid use of interposed calloc to allocate initial TLS
- various dlsym symbol resolution logic errors
- semctl with SEM_STAT_ANY didn't work
- pthread_create with explicit scheduling was subject to priority inversion
- pthread_create failure path had data race for thread count
- timer_create with SIGEV_THREAD notification had data race getting timer id
- wide printf family failed to support l modifier for float formats

arch-specific bugs fixed:
- x87 floating point stack imbalance in math asm (i386-only CVE-2019-14697)
- x32 clock_adjtime, getrusage, wait3, wait4 produced junk (struct mismatches)
- lseek broken on x32 and mipsn32 with large file offsets
- riscv64 atomics weren't compiler barriers
- riscv64 atomics had broken asm constraints (missing earlyclobber flag)
- arm clone() was broken when compiled as thumb if start function returned
- mipsr6 setjmp/longjmp did not preserve fpu register state correctly

Refreshed all patches.
Removed upstreamed.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoiwinfo: update to latest Git HEAD
Jo-Philipp Wich [Tue, 15 Oct 2019 13:51:11 +0000 (15:51 +0200)]
iwinfo: update to latest Git HEAD

a29b7d4 nl80211: align path to phy mapping logic with mac80211.sh

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Mon, 14 Oct 2019 19:31:35 +0000 (21:31 +0200)]
odhcpd: update to latest git HEAD

9a4531a ndp: fix endian issue

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agotreewide: move MAC address patch functions to common library
Adrian Schmutzler [Sun, 22 Sep 2019 09:57:14 +0000 (11:57 +0200)]
treewide: move MAC address patch functions to common library

This unifies MAC address patch functions and moves them to a
common script. While those were implemented differently for
different targets, they all seem to do the same. The number of
different variants is significantly reduced by this patch.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agotreewide: move calibration data extraction function to library
Adrian Schmutzler [Sun, 22 Sep 2019 09:57:13 +0000 (11:57 +0200)]
treewide: move calibration data extraction function to library

This moves the almost identical calibration data extraction
functions present multiple times in several targets to a single
library file /lib/functions/caldata.sh.

Functions are renamed with more generic names to merge different
variants that only differ in their names.

Most of the targets used find_mtd_chardev, while some used
find_mtd_part inside the extraction code. To merge them, the more
abundant version with find_mtd_chardev is used in the common code.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[rebase on latest master; add mpc85xx]
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agobase-files: move xor() from caldata extraction to functions.sh
Adrian Schmutzler [Sat, 28 Sep 2019 13:12:55 +0000 (15:12 +0200)]
base-files: move xor() from caldata extraction to functions.sh

The xor() function is defined in each of the caldata extraction
scripts for several targets. Move it to functions.sh to reduce
duplicate code.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: add support for COMFAST CF-E313AC
Roger Pueyo Centelles [Mon, 18 Mar 2019 12:20:47 +0000 (13:20 +0100)]
ath79: add support for COMFAST CF-E313AC

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

Specifications:

 - QCA9531 SoC
 - 650/400/216 MHz (CPU/DDR/AHB)
 - 1x 10/100 Mbps WAN Ethernet, 48V PoE-in
 - 1x 10/100 Mbps LAN Ethernet, pass-through 48V PoE-out
 - 1x manual pass-through PoE switch
 - 64 MB RAM (DDR2)
 - 16 MB FLASH
 - QCA9886 2T2R 5 GHz 802.11ac, 23 dBm
 - 12 dBi built-in antenna
 - POWER/LAN/WAN/WLAN green LEDs
 - 4x RSSI LEDs (2x red, 2x green)
 - UART (115200 8N1)

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 the WAN LED flashes, until it starts flashing faster.
 Once in failsafe mode, perform a factory reset as usual.

 Alternatively, 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 device's LEDs will
 blink several times and the recovery page will be at
 http://192.168.1.1; use it to upload the sysupgrade image.

Note:

 Four MAC addresses are stored in the "art" partition (read-only):
  - 0x0000: 40:A5:EF:AA:AA:A0
  - 0x0006: 40:A5:EF:AA:AA:A2
  - 0x1002: 40:A5:EF:AA:AA:A1
  - 0x5006: 40:A5:EF:AA.AA:A3 (inside the 5 GHz calibration data)

 The stock firmware assigns MAC addresses to physical and virtual
 interfaces in a very particular way:
  - eth0 corresponds to the physical Ethernet port labeled as WAN
  - eth1 corresponds to the physical Ethernet port labeled as LAN

  - eth0 belongs to the bridge interface br-wan
  - eth1 belongs to the bridge interface br-lan

  - eth0 is assigned the MAC from 0x0 (*:A0)
  - eth1 is assigned the MAC from 0x1002 (*:A1)

  - br-wan is forced to use the MAC from 0x1002 (*:A1)
  - br-lan is forced to use the MAC from 0x0 (*:A0)

  - radio0 uses the calibration data from 0x5000 (which contains
    a valid MAC address, *:A3). However, it is overwritten by the
    one at 0x6 (*:A2)

 This commit preserves the LAN/WAN roles of the physical Ethernet
 ports (as labeled on the router) and the MAC addresses they expose
 by default (i.e., *:A0 on LAN, *:A1 on WAN), but swaps the position
 of the eth0/eth1 compared to the stock firmware:
  - eth0 corresponds to the physical Ethernet port labeled as LAN
  - eth1 corresponds to the physical Ethernet port labeled as WAN

  - eth0 belongs to the bridge interface br-lan
  - eth1 is the interface at @wan

  - eth0 is assigned the MAC from 0x0 (*:A0)
  - eth1 is assigned the MAC from 0x1002 (*:A1)

  - br-lan inherits the MAC from eth0 (*:A0)
  - @wan inherits the MAC from eth1 (*:A1)

  - radio0's MAC is overwritten to the one at 0x6

This way, eth0/eth1's positions differ from the stock firmware, but
the weird MAC ressignations in br-lan/br-wan are avoided while the
external behaviour of the router is maintained. Additionally, WAN
port is connected to the PHY gmac, allowing to monitor the link
status (e.g., to restart DHCP negotiation when plugging a cable).

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
5 years agoramips: mt7621: Alternative name KE 2P for Phicomm K2P
Roger Pueyo Centelles [Sun, 6 Oct 2019 19:07:33 +0000 (21:07 +0200)]
ramips: mt7621: Alternative name KE 2P for Phicomm K2P

The Phicomm KE 2P is identical to the already supported Phicomm K2P,
renamed for the European market. Use the ALT0 buildroot tags to show
both devices.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
5 years agokernel: add kmod-iio-bme680
Stijn Tintel [Sun, 7 Apr 2019 22:39:34 +0000 (01:39 +0300)]
kernel: add kmod-iio-bme680

This driver supports the Bosch Sensortec BME680 gas, humidity, pressure
and temperature sensor.

Tested I2C and SPI modes on a Raspberry Pi Zero W.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agotrelay: log "started" and "stopped"
Ali MJ Al-Nasrawy [Wed, 25 Sep 2019 14:47:13 +0000 (17:47 +0300)]
trelay: log "started" and "stopped"

It is informative especially when using multiple device pairs.

Signed-off-by: Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com>
5 years agotrelay: fix deadlock on remove
Ali MJ Al-Nasrawy [Wed, 25 Sep 2019 14:47:12 +0000 (17:47 +0300)]
trelay: fix deadlock on remove

Upon writing to "remove" file, debugfs_remove_recursive() blocks while
holding rtnl_lock. This is because debugfs' file_ops callbacks are
executed in debugfs_use_file_*() context which prevents file removal.

Fix this by only flagging the device for removal and then do the cleanup
in file_ops.release callback which is executed out of that context.

Signed-off-by: Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com>
5 years agotrelay: handle netdevice events correctly
Ali MJ Al-Nasrawy [Wed, 25 Sep 2019 14:47:11 +0000 (17:47 +0300)]
trelay: handle netdevice events correctly

Since v3.11, netdevice notification data are of type
"struct netdev_notifier_info". Handle it as such!

This should fix a critical bug in which devices are unable get released
because trelay does not release resources in response to UNREGISTER
event spamming the log with something like:

unregister_netdevice: waiting for eth0.1 to become free. Usage count = 1

Signed-off-by: Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com>
5 years agokernel: NFSD: add dependency kmod-crypto-arc4 for kmod-fs-nfs-common-rpcsec
Ruixi Zhou [Sat, 5 Oct 2019 10:16:33 +0000 (18:16 +0800)]
kernel: NFSD: add dependency kmod-crypto-arc4 for kmod-fs-nfs-common-rpcsec

crypto-arc4 move into a module with commit c3a78955f34a61d402044f357f54f21c75a19ff9,
fs-nfs-common-rpcsec compile error without arc4 support.

Ref: https://github.com/openwrt/packages/issues/9912

Fixes: c3a78955f34a ("kernel: move crypto-arc4 into a module")
Signed-off-by: Ruixi Zhou <zhouruixi@gmail.com>
5 years agobase-files: coreutil-date breaks setting kernel timezone
Val Kulkov [Mon, 7 Oct 2019 16:06:52 +0000 (12:06 -0400)]
base-files: coreutil-date breaks setting kernel timezone

"coreutil-date" package from the packages feed replaces the Busybox date
applet by symlinking /usr/bin/gnu-date to /bin/date. This prevents the system
init script from setting kernel timezone because the GNU date utility does not
provide such functionality:

   root@OpenWrt:~# date -k
   date: invalid option -- 'k'
   Try 'date --help' for more information.

A specific reference to the Busybox date applet prevents alternative date
utilities from breaking the system init script.

Signed-off-by: Val Kulkov <val.kulkov@gmail.com>
5 years agohostapd: adjust to removal of WOLFSSL_HAS_AES_GCM
Eneas U de Queiroz [Mon, 7 Oct 2019 21:02:38 +0000 (18:02 -0300)]
hostapd: adjust to removal of WOLFSSL_HAS_AES_GCM

WolfSSL is always built with AES-GCM support now.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
5 years agouClibc++: Fix three bugs
Rosen Penev [Mon, 7 Oct 2019 22:59:52 +0000 (15:59 -0700)]
uClibc++: Fix three bugs

The first allows usage of several functions in the std namespace, which
broke compilation of gddrescue specifically with uClibc-ng and uClibc++.

The second allows usage of long long with normal C++11, which is part of
the standard. Before, std=gnu++11 needed to be passsed to work around it.

As a result of the second patch, the pedantic patch can safely be removed.

Both patches are upstream backports.

Added -std=c++11 to CFLAGS to guarentee proper inclusion of long long.

Added another patch that fixes a typo with the long long support. Sent to
upstream.

Fixed up license information according to SPDX.

Small cleanups for consistency.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
5 years agolantiq: add set_port_link feature to xrx200-net driver
Martin Schiller [Wed, 18 Sep 2019 04:35:10 +0000 (06:35 +0200)]
lantiq: add set_port_link feature to xrx200-net driver

This makes it possible to configure the link attributes (aneg, duplex,
speed) of each switch ports.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
5 years agomvebu: backport mvneta and comphy from linux 5.x
Scott Roberts [Fri, 27 Sep 2019 20:19:01 +0000 (14:19 -0600)]
mvebu: backport mvneta and comphy from linux 5.x

These patches backport support for the ARMADA 3700 COMPHY driver.
Also backported is the mvneta driver.  This will allow switching
the SGMII speed using SMC calls.  To support this you must update
the firmware using Marvells 18.12 version (this has now been
upstreamed).  The mvneta driver allows 2500basex and 2500baset.

Signed-off-by: Scott Roberts <ttocsr@gmail.com>
5 years agokirkwood: Fix FS#505 - Can't install LEDE on Linksys EA3500
Eubert Bao [Sat, 21 Sep 2019 04:44:16 +0000 (21:44 -0700)]
kirkwood: Fix FS#505 - Can't install LEDE on Linksys EA3500

The default sizes render Device/linksys_audi mage un-flashable.
Restore the pagesize, subpagesize, and blocksize for linksys_audi
from https://github.com/openwrt/archive.

Signed-off-by: Eubert Bao <bunnier@gmail.com>
5 years agopistachio: split up DEVICE_TITLE
Moritz Warning [Wed, 25 Sep 2019 22:02:21 +0000 (00:02 +0200)]
pistachio: split up DEVICE_TITLE

DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT

Signed-off-by: Moritz Warning <moritzwarning@web.de>
5 years agokernel: fix typos in video KernelPackage description
Sungbo Eo [Tue, 8 Oct 2019 14:25:03 +0000 (23:25 +0900)]
kernel: fix typos in video KernelPackage description

Fixes: 4b3d17b709a5 ("kernel: add kmod-fb-sys-ram")
Fixes: b774acb47912 ("package/modules: add missing gspca video drivers for 2.6.32 (patch from #6595)")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
5 years agouboot-oxnas: remove unnecessary execute permission bit
Sungbo Eo [Wed, 9 Oct 2019 02:15:55 +0000 (11:15 +0900)]
uboot-oxnas: remove unnecessary execute permission bit

.c files do not need to be executable. 644 is enough.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
5 years agoar71xx: remove unnecessary execute permission bit
Sungbo Eo [Wed, 9 Oct 2019 02:15:40 +0000 (11:15 +0900)]
ar71xx: remove unnecessary execute permission bit

.c files do not need to be executable. 644 is enough.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
5 years agomediatek: remove unnecessary execute permission bit
Sungbo Eo [Wed, 9 Oct 2019 02:14:58 +0000 (11:14 +0900)]
mediatek: remove unnecessary execute permission bit

kernel config and dts files do not need to be executable. 644 is enough.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
5 years agotcpdump: update to 4.9.3
DENG Qingfang [Sat, 12 Oct 2019 16:29:13 +0000 (00:29 +0800)]
tcpdump: update to 4.9.3

Fixed CVEs:
CVE-2017-16808
CVE-2018-10103
CVE-2018-10105
CVE-2018-14461
CVE-2018-14462
CVE-2018-14463
CVE-2018-14464
CVE-2018-14465
CVE-2018-14466
CVE-2018-14467
CVE-2018-14468
CVE-2018-14469
CVE-2018-14470
CVE-2018-14879
CVE-2018-14880
CVE-2018-14881
CVE-2018-14882
CVE-2018-16227
CVE-2018-16228
CVE-2018-16229
CVE-2018-16230
CVE-2018-16300
CVE-2018-16301
CVE-2018-16451
CVE-2018-16452
CVE-2019-15166
CVE-2019-15167

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
5 years agolibpcap: update to 1.9.1
DENG Qingfang [Sat, 12 Oct 2019 16:28:32 +0000 (00:28 +0800)]
libpcap: update to 1.9.1

Fixed CVEs:
CVE-2018-16301
CVE-2019-15161
CVE-2019-15162
CVE-2019-15163
CVE-2019-15164
CVE-2019-15165

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
5 years agomvebu: Refresh kernel 4.19 configuration
Hauke Mehrtens [Sat, 12 Oct 2019 18:32:04 +0000 (20:32 +0200)]
mvebu: Refresh kernel 4.19 configuration

This refreshes the kernel 4.19 configuration, it looks like this was not
done initially.

When did a compile with the default settings I had to select some
kernel configuration options.

Fixes: 98684d99b250 ("mvebu: add kernel 4.19 support")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agokernel: Set GCC version to 80300 by default
Hauke Mehrtens [Sat, 12 Oct 2019 20:21:46 +0000 (22:21 +0200)]
kernel: Set GCC version to 80300 by default

The kernel 4.19 configuration contains the GCC version used, set it to
8.3.0 as this is now our default compiler.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agokernel: kmod-rtc-pcf2127: Fix dependencies
Hauke Mehrtens [Sat, 12 Oct 2019 20:31:38 +0000 (22:31 +0200)]
kernel: kmod-rtc-pcf2127: Fix dependencies

Add missing dependencies to i2c-core and regmap-spi. These get activated
when these modules are build in this driver, which is the case when we
build all modules. This fixes the build on some targets. This was found
by the buildbot.

Fixes: 34e2526f9fcc ("kernel: add kmod-rtc-pcf2127")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agobrcm47xx: split up DEVICE_TITLE
Moritz Warning [Thu, 11 Jul 2019 10:21:01 +0000 (12:21 +0200)]
brcm47xx: split up DEVICE_TITLE

DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT

Signed-off-by: Moritz Warning <moritzwarning@web.de>
5 years agoomap: split up DEVICE_TITLE
Moritz Warning [Wed, 25 Sep 2019 22:13:13 +0000 (00:13 +0200)]
omap: split up DEVICE_TITLE

DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT

Signed-off-by: Moritz Warning <moritzwarning@web.de>
5 years agolibnl-tiny: fix package mirror hash
Petr Štetiar [Fri, 11 Oct 2019 20:48:06 +0000 (22:48 +0200)]
libnl-tiny: fix package mirror hash

Current hash doesn't match with the content of the source tarball.

Fixes: a92f74ba8db8 ("libnl-tiny: move source code into separate Git repository")
Reported-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agobuild: fix menuconfig submenu sorting for gcc options
Felix Fietkau [Fri, 11 Oct 2019 08:37:02 +0000 (10:37 +0200)]
build: fix menuconfig submenu sorting for gcc options

The hidden symbol GCC_USE_IREMAP was breaking it, move it to Config.version
instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomt76: update to the latest version
Felix Fietkau [Thu, 10 Oct 2019 21:09:35 +0000 (23:09 +0200)]
mt76: update to the latest version

71c2ef0420b5 mt76: fix aggregation stop issue
5b02a078d4a7 mt76: add missing locking around ampdu action
7d8764d320cf mt76: avoid enabling interrupt if NAPI poll is still pending
d94cc81d3980 mt76: drop rcu read lock in mt76_rx_aggr_stop
c11a4ad06d9d mt76: mt76x0: eeprom: add support for MAC address from OF
01642d8bed33 mt76: mt76x02: fix use-after-free in tx status code handling airtime
391e1488f885 mt76: add sanity check for a-mpdu rx wcid index
d3a589586d1b mt76: fix a-mpdu boundary detection issue for airtime reporting

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agoppp: update to version 2.4.7.git-2019-10-04
Hans Dedecker [Thu, 10 Oct 2019 19:53:38 +0000 (21:53 +0200)]
ppp: update to version 2.4.7.git-2019-10-04

0d004db Revert "pppd: Include time.h before using time_t"
e400854 pppdump: Eliminate printf format warning by using %zd
7f2f0de pppd: Refactor setjmp/longjmp with pipe pair in event wait loop
4e71317 make: Avoid using host include for cross-compiling
3202f89 pppoe: Remove the use of cdefs
d8e8d7a pppd: Remove unused rcsid variables
486f854 pppd: Fix GLIBC version test for non-glibc toolchains
b6cd558 pppd: Include time.h before using time_t
ef8ec11 radius: Fix compiler warning
f6330ec magic: Remove K&R style of arguments
347904e Add Submitting-patches.md

Remove patches 130-no_cdefs_h.patch, 131-missing_prototype_macro.patch,
132-fix_linux_includes.patch as fixed upstream
Refresh patches

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agobuild: adjust gcc/g++ version checks for newer apple compilers
Felix Fietkau [Thu, 10 Oct 2019 11:42:56 +0000 (13:42 +0200)]
build: adjust gcc/g++ version checks for newer apple compilers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomac80211: fix scan when operating on DFS channels in ETSI domains
Stefan Lippers-Hollmann [Wed, 9 Oct 2019 04:21:58 +0000 (06:21 +0200)]
mac80211: fix scan when operating on DFS channels in ETSI domains

In non-ETSI regulatory domains scan is blocked when operating channel
is a DFS channel. For ETSI, however, once DFS channel is marked as
available after the CAC, this channel will remain available (for some
time) even after leaving this channel.

Therefore a scan can be done without any impact on the availability
of the DFS channel as no new CAC is required after the scan.

Enable scan in mac80211 in these cases.

Signed-off-by: Aaron Komisar <aaron.komisar@tandemg.com>
Link: https://lore.kernel.org/r/1570024728-17284-1-git-send-email-aaron.komisar@tandemg.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
5 years agobase-files: upgrade: add case to export_bootdevice
Klaus Kudielka [Sat, 17 Aug 2019 13:52:01 +0000 (15:52 +0200)]
base-files: upgrade: add case to export_bootdevice

The factory uboot of the Turris Omnia boots with "root=b301", and we
instruct new users to sysupgrade from there (e.g. method 1, step 7).
Currently, this will fail with "Unable to determine upgrade device".
Add a new case to export_bootdevice, which parses the hex argument.

Fixes commit 2e5a0b81 ("mvebu: sysupgrade: sdcard: keep user added ...")

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
5 years agokernel: Fix off-by-one error in FIT mtd partition search.
Oldřich Jedlička [Wed, 25 Sep 2019 19:45:42 +0000 (21:45 +0200)]
kernel: Fix off-by-one error in FIT mtd partition search.

This fixes off-by-one error introduced in commit dc76900021b8
("kernel: Correctly search for the FIT image in mtd partition.")

Function `mtd_read` starts reading at `offset` and
needs `hdr_len` number of bytes to be available. Suppose
the easiest case when `offset` is `0` and `hdr_len` equals
to `mtd->size` - the `for` loop will not be entered even
when enough bytes are available to be read.

Same happens for any non-zero `offset`, when `hdr_len` is
just enough bytes to be read until `mtd->size` is reached.
Imagine that for example `mtd->size=5`, `offset=4` and
`hdr_len=1`. Then `offset+hdr_len=5` and the check has to
be `offset+hdr_len <= mtd->size`, i.e. `5 <= 5`. The
check for `offset + hdr_len` value needs to be inclusive,
therefore use `<=`.

Fixes: dc76900021b8 ("kernel: Correctly search for the FIT image in mtd partition.")
Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
[adjusted commit ref, fixes tag]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agokernel.mk: add KCFLAGS to make kmods reproducible
Paul Spooren [Tue, 8 Oct 2019 23:11:27 +0000 (13:11 -1000)]
kernel.mk: add KCFLAGS to make kmods reproducible

Some kmods (gpio-hotplug, wireguard) store the build path in the
compiled files and therefore make it harder to rebuild the official
binaries. As the same "iremap" function is used as for other binaries,
the change is compatible with gcc7 and 8.

Tested with both gcc7 and gcc8 resulting in build path independent
reproducible builds.

Signed-off-by: Paul Spooren <mail@aparcar.org>
5 years agotoolchain/gcc: switch to version 8 by default
Paul Spooren [Wed, 2 Oct 2019 07:15:44 +0000 (21:15 -1000)]
toolchain/gcc: switch to version 8 by default

Main motivation for this commit is the introduction of
`-ffile-prefix-map=` which alows reproducible build path.

Compile tested on Linux and macOS without errors on the following
targets:

 * ath79
 * imx6
 * brcm2708
 * brcm63xx
 * ixp4xx
 * ramips
 * sunxi
 * x86

Thanks to Andre for the iremap fixup.

Ref: https://reproducible-builds.org/docs/build-path/
Tested-by: Andre Heider <a.heider@gmail.com>
Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Paul Spooren <mail@aparcar.org>
[refactored into separate commit]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoconfig: remove unused GCC_VERSION_4_8 config symbols
Paul Spooren [Wed, 9 Oct 2019 04:36:53 +0000 (06:36 +0200)]
config: remove unused GCC_VERSION_4_8 config symbols

Lets remove unused GCC_VERSION_4_8 symbol after the series of patches
which has switched to target gcc-8 by default.

Signed-off-by: Paul Spooren <mail@aparcar.org>
[refactored into separate commit]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agotoolchain,build: prefer -ffile-prefix-map for gcc-8+
Paul Spooren [Wed, 9 Oct 2019 04:41:00 +0000 (06:41 +0200)]
toolchain,build: prefer -ffile-prefix-map for gcc-8+

-ffile-prefix-map=OLD=NEW is an alias for both -fdebug-prefix-map and
-fmacro-prefix-map and is available since GCC 8.

Co-Developed-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Paul Spooren <mail@aparcar.org>
[refactored into separate commit]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoopenssl: add gcc-8 -ffile-prefix-map filter
Paul Spooren [Wed, 9 Oct 2019 04:33:06 +0000 (06:33 +0200)]
openssl: add gcc-8 -ffile-prefix-map filter

gcc-8 switch -ffile-prefix-map helps a lot with reproducible build paths
in the resulting binaries.

Ref: https://reproducible-builds.org/docs/build-path/
Signed-off-by: Paul Spooren <mail@aparcar.org>
[refactored into separate commit]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agotarget/imagebuilder: use multi-thread support for xz compression
Martin Schiller [Mon, 7 Oct 2019 04:52:08 +0000 (06:52 +0200)]
target/imagebuilder: use multi-thread support for xz compression

This speeds up the packing of the imagebuilder a lot:

 imagebuilder-T0.tar.xz real 0m25.199s user 2m45.967s sys 0m1.218s
 imagebuilder-T1.tar.xz real 2m02.543s user 2m02.418s sys 0m1.653s
 imagebuilder-T2.tar.xz real 1m03.684s user 1m59.931s sys 0m0.587s
 imagebuilder-T3.tar.xz real 0m48.033s user 2m02.904s sys 0m0.637s
 imagebuilder-T4.tar.xz real 0m38.963s user 2m15.521s sys 0m0.783s
 imagebuilder-T5.tar.xz real 0m37.994s user 2m21.461s sys 0m0.919s
 imagebuilder-T6.tar.xz real 0m39.524s user 2m48.115s sys 0m1.279s
 imagebuilder-T7.tar.xz real 0m34.061s user 2m45.097s sys 0m1.174s
 imagebuilder-T8.tar.xz real 0m27.286s user 2m55.449s sys 0m1.329s
 imagebuilder-T9.tar.xz real 0m25.205s user 2m44.894s sys 0m1.208s

To keep the output reproducible in any case, we enforce a minimum amount
of 2 threads.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
[refactored into reusable NPROC var, more verbose commit message]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agolibnl-tiny: move source code into separate Git repository
Petr Štetiar [Mon, 7 Oct 2019 13:01:46 +0000 (15:01 +0200)]
libnl-tiny: move source code into separate Git repository

In order to make the source code usable and testable separately out of
buildroot.

Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agotools/e2fsprogs: Update to version 1.45.4
Josef Schlehofer [Thu, 3 Oct 2019 19:23:00 +0000 (21:23 +0200)]
tools/e2fsprogs: Update to version 1.45.4

Fixes CVE-2019-5094

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
5 years agomac80211: add an improved moving average algorithm to minstrel
Felix Fietkau [Sat, 28 Sep 2019 13:57:58 +0000 (15:57 +0200)]
mac80211: add an improved moving average algorithm to minstrel

Improves rate control responsiveness and performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agokernel: bump 4.19 to 4.19.78
Koen Vandeputte [Tue, 8 Oct 2019 13:03:32 +0000 (15:03 +0200)]
kernel: bump 4.19 to 4.19.78

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.148
Koen Vandeputte [Tue, 8 Oct 2019 13:02:52 +0000 (15:02 +0200)]
kernel: bump 4.14 to 4.14.148

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.9 to 4.9.196
Koen Vandeputte [Tue, 8 Oct 2019 12:59:08 +0000 (14:59 +0200)]
kernel: bump 4.9 to 4.9.196

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.19 to 4.19.77
Koen Vandeputte [Mon, 7 Oct 2019 11:09:31 +0000 (13:09 +0200)]
kernel: bump 4.19 to 4.19.77

Refreshed all patches.

Remove upstreamed:
- 110-ARM-zynq-Use-memcpy_toio-instead-of-memcpy.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.147
Koen Vandeputte [Mon, 7 Oct 2019 11:09:02 +0000 (13:09 +0200)]
kernel: bump 4.14 to 4.14.147

Refreshed all patches.

Altered patches:
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch (ar71xx)
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch (ath79)

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.195
Koen Vandeputte [Mon, 7 Oct 2019 10:53:17 +0000 (12:53 +0200)]
kernel: bump 4.9 to 4.9.195

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agoath79: improve DTS for TP-Link Archer D50 v1
Adrian Schmutzler [Wed, 4 Sep 2019 11:51:02 +0000 (13:51 +0200)]
ath79: improve DTS for TP-Link Archer D50 v1

This addresses several issues in the DTS file:
- add diag LED support
- remove unused node names
- fix whitespace issues

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoramips: enable LED VCC for Asus RT-AC51U
Davide Fioravanti [Sun, 29 Sep 2019 18:52:37 +0000 (20:52 +0200)]
ramips: enable LED VCC for Asus RT-AC51U

Previously only the power LED was working.
With this patch all leds except 5GHz are working.

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
[rephrased commit title, drop status property]
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoath79: fix whitespace issues in DTS files
Adrian Schmutzler [Tue, 17 Sep 2019 12:22:34 +0000 (14:22 +0200)]
ath79: fix whitespace issues in DTS files

This is the result of grepping/searching for several common
whitespace issues like double empty lines, leading spaces, etc.

This patch fixes them for the ath79 target.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agotreewide: remove kmod-usb-core from DEVICE_PACKAGES
Adrian Schmutzler [Sun, 22 Sep 2019 10:06:25 +0000 (12:06 +0200)]
treewide: remove kmod-usb-core from DEVICE_PACKAGES

This removes _all_ occurrences of kmod-usb-core from
DEVICE_PACKAGES and similar variables.

This package is pulled as dependency by one of the following
packages in any case:
- kmod-usb-chipidea
- kmod-usb-dwc2
- kmod-usb-ledtrig-usbport
- kmod-usb-ohci
- kmod-usb2
- kmod-usb2-pci
- kmod-usb3

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[remove kmod-usb-core from EnGenius ESR600]
Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agosunxi: update kernel config
Andre Heider [Mon, 23 Sep 2019 14:00:52 +0000 (16:00 +0200)]
sunxi: update kernel config

This is just a `make kernel_oldconfig` run without further changes.

Signed-off-by: Andre Heider <a.heider@gmail.com>
5 years agoexpat: Update to version 2.2.9
Josef Schlehofer [Sun, 29 Sep 2019 09:21:29 +0000 (11:21 +0200)]
expat: Update to version 2.2.9

Fixes CVE-2019-15903

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
5 years agomac80211: ath10k: fix latency issue for QCA988x
David Bauer [Fri, 4 Oct 2019 20:28:15 +0000 (22:28 +0200)]
mac80211: ath10k: fix latency issue for QCA988x

This backport fixes high latency (>100ms) on the WiFi link when using a
QCA988x Wave 1 radio. The ath10k-ct driver is not affected by this bug
from my testing, hence why it hasn't been discovered earlier.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agokernel: add kmod-rtc-pcf2127
Robert Marko [Wed, 16 May 2018 18:00:15 +0000 (20:00 +0200)]
kernel: add kmod-rtc-pcf2127

Add kernel module to support NXP PCF2127 and PCF2129 RTC clocks.

Signed-off-by: Robert Marko <robimarko@gmail.com>
5 years agofirewall: update to latest git HEAD
Hans Dedecker [Fri, 4 Oct 2019 18:38:46 +0000 (20:38 +0200)]
firewall: update to latest git HEAD

daed0cf utils: fix resource leak

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Fri, 4 Oct 2019 18:30:32 +0000 (20:30 +0200)]
odhcpd: update to latest git HEAD

e76ad06 netlink: fix potential infinite loops

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agokernel: bump 4.19 to 4.19.76
Koen Vandeputte [Fri, 4 Oct 2019 10:20:58 +0000 (12:20 +0200)]
kernel: bump 4.19 to 4.19.76

Refreshed all patches.

Altered patches:
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch

Compile-tested on: ath79, cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>