openwrt/openwrt.git
5 years agoipq806x: dts: Unify naming of gpio-led nodes
Petr Štetiar [Sun, 30 Dec 2018 11:42:53 +0000 (12:42 +0100)]
ipq806x: dts: Unify naming of gpio-led nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agoipq806x: dts: Unify naming of gpio-keys nodes
Petr Štetiar [Sun, 30 Dec 2018 11:17:25 +0000 (12:17 +0100)]
ipq806x: dts: Unify naming of gpio-keys nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agoipq40xx: dts: Unify naming of gpio-led nodes
Petr Štetiar [Sun, 30 Dec 2018 11:42:53 +0000 (12:42 +0100)]
ipq40xx: dts: Unify naming of gpio-led nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agoipq40xx: dts: Unify naming of gpio-keys nodes
Petr Štetiar [Sun, 30 Dec 2018 11:17:25 +0000 (12:17 +0100)]
ipq40xx: dts: Unify naming of gpio-keys nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agoapm821xx: dts overhaul
Christian Lamparter [Sun, 23 Dec 2018 21:15:34 +0000 (22:15 +0100)]
apm821xx: dts overhaul

 - remove stray #address-cells / #size-cells

 - fix partition unit-addresses in wd-mybooklive.dts

 - remove index from MBL's gpio node name

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: dts: Unify naming of gpio-led nodes
Petr Štetiar [Sun, 30 Dec 2018 11:42:53 +0000 (12:42 +0100)]
apm821xx: dts: Unify naming of gpio-led nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agoapm821xx: dts: Unify naming of gpio-keys nodes
Petr Štetiar [Sun, 30 Dec 2018 11:17:25 +0000 (12:17 +0100)]
apm821xx: dts: Unify naming of gpio-keys nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agoat91: dts: Unify naming of gpio-keys nodes
Petr Štetiar [Sun, 30 Dec 2018 11:17:25 +0000 (12:17 +0100)]
at91: dts: Unify naming of gpio-keys nodes

In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
5 years agomac80211: ath10k: remove "ath10k: fix otp failure result" patch
Christian Lamparter [Tue, 1 Jan 2019 15:03:01 +0000 (16:03 +0100)]
mac80211: ath10k: remove "ath10k: fix otp failure result" patch

Initially this patch was introduced as a quick fix following
the removal of 936-ath10k_skip_otp_check.patch which caused
multiple ath10k pcie devices in various ipq806x and ar71xx/ath79
targets to malfunction.

Thankfully, the affected devices have been updated to utilize
the pre-caldata method. And finally with the switch to ath10k-ct,
which never had the patch or any reports of similar issues, I
think it's time to remove this patch since it is no longer needed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agobrcm2708: boot-part feature integration
Christian Lamparter [Thu, 27 Dec 2018 20:56:28 +0000 (21:56 +0100)]
brcm2708: boot-part feature integration

This patch adds the boot-part feature which enables the brcm2708
target move from the custom boot partition size config option to
the generic CONFIG_TARGET_KERNEL_PARTSIZE.

Note:
For people using custom images: Just like with
CONFIG_TARGET_ROOTFS_PARTSIZE changing the value
can cause sysupgrade to repartition the device!
Make sure to have a backup in this case.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoiproute2: replace libelf1 dependency with libelf
Jo-Philipp Wich [Thu, 24 Jan 2019 11:56:31 +0000 (12:56 +0100)]
iproute2: replace libelf1 dependency with libelf

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoperf: replace libelf1 dependency with libelf
Jo-Philipp Wich [Thu, 24 Jan 2019 11:56:11 +0000 (12:56 +0100)]
perf: replace libelf1 dependency with libelf

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoelfutils: rename libelf1 to libelf
Jo-Philipp Wich [Thu, 24 Jan 2019 11:52:23 +0000 (12:52 +0100)]
elfutils: rename libelf1 to libelf

The ABI_VERSION:=1 tag will take care of transforming the binary
library package basename.

Add a virtual PROVIDES:=libelf1 for packages still having libelf1
in their DEPENDS:=... lists.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobuild: formatting fixes for per-provide ABI_VERSION suffixes
Jo-Philipp Wich [Thu, 24 Jan 2019 11:48:27 +0000 (12:48 +0100)]
build: formatting fixes for per-provide ABI_VERSION suffixes

 - Filter out potential duplicates with the package name
   (e.g. when renaming libfoo1 w/ ABI_VERSION:=1 to libfoo)
 - Use the GetABISuffix macro to properly separate the suffix
   with a dash in case the basename ends with a number

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agotreewide: revise library packaging
Jo-Philipp Wich [Tue, 22 Jan 2019 18:17:32 +0000 (19:17 +0100)]
treewide: revise library packaging

- Annotate versionless libraries (such as libubox, libuci etc.) with a fixed
  ABI_VERSION resembling the source date of the last incompatible change
- Annotate packages shipping versioned library objects with ABI_VERSION
- Stop shipping unversioned library symlinks for packages with ABI_VERSION

Ref: https://openwrt.org/docs/guide-developer/package-policies#shared_libraries
Ref: https://github.com/KanjiMonster/maintainer-tools/blob/master/check-abi-versions.pl
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobuild: extend ABI_VERSION suffixing to provides
Jo-Philipp Wich [Mon, 21 Jan 2019 16:29:57 +0000 (17:29 +0100)]
build: extend ABI_VERSION suffixing to provides

When a library package specifies additional provides, e.g. libncurses
which provides libncursesw, we should also append the abi version
suffix to each provide, since there may be more than one package
providing the virtual library.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agouclient: set fixed ABI_VERSION on libuclient
Jo-Philipp Wich [Mon, 21 Jan 2019 15:59:58 +0000 (16:59 +0100)]
uclient: set fixed ABI_VERSION on libuclient

Last incompatible change appeared to be 4924411
("http: add proper error handling to uclient_http_redirect()") which
changed the return value of uclient_http_redirect() from bool to int.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agokernel: bump 4.14 to 4.14.95
Koen Vandeputte [Wed, 23 Jan 2019 12:15:48 +0000 (13:15 +0100)]
kernel: bump 4.14 to 4.14.95

Refreshed all patches.

Removed superseded patches:
- 0400-Revert-MIPS-smp-mt-Use-CPU-interrupt-controller-IPI-.patch

Compile-tested on: ar71xx, cns3xxx, imx6, lantiq (xrx200, AVM 3370), x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6, lantiq (xrx200, AVM 3370)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Mathias Kresin <dev@kresin.me>
Tested-by: Robert Resch <openwrt@webnmail.de>
5 years agokernel: bump 4.9 to 4.9.152
Koen Vandeputte [Wed, 23 Jan 2019 12:07:48 +0000 (13:07 +0100)]
kernel: bump 4.9 to 4.9.152

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agowireguard: bump to 0.0.20190123
Jason A. Donenfeld [Wed, 23 Jan 2019 13:49:44 +0000 (14:49 +0100)]
wireguard: bump to 0.0.20190123

* tools: curve25519: handle unaligned loads/stores safely

This should fix sporadic crashes with `wg pubkey` on certain architectures.

* netlink: auth socket changes against namespace of socket

In WireGuard, the underlying UDP socket lives in the namespace where the
interface was created and doesn't move if the interface is moved. This
allows one to create the interface in some privileged place that has
Internet access, and then move it into a container namespace that only
has the WireGuard interface for egress. Consider the following
situation:

1. Interface created in namespace A. Socket therefore lives in namespace A.
2. Interface moved to namespace B. Socket remains in namespace A.
3. Namespace B now has access to the interface and changes the listen
port and/or fwmark of socket. Change is reflected in namespace A.

This behavior is arguably _fine_ and perhaps even expected or
acceptable. But there's also an argument to be made that B should have
A's cred to do so. So, this patch adds a simple ns_capable check.

* ratelimiter: build tests with !IPV6

Should reenable building in debug mode for systems without IPv6.

* noise: replace getnstimeofday64 with ktime_get_real_ts64
* ratelimiter: totalram_pages is now a function
* qemu: enable FP on MIPS

Linux 5.0 support.

* keygen-html: bring back pure javascript implementation

Benoît Viguier has proofs that values will stay well within 2^53. We
also have an improved carry function that's much simpler. Probably more
constant time than emscripten's 64-bit integers.

* contrib: introduce simple highlighter library

This is the highlighter library being used in:
- https://twitter.com/EdgeSecurity/status/1085294681003454465
- https://twitter.com/EdgeSecurity/status/1081953278248796165

It's included here as a contrib example, so that others can paste it into
their own GUI clients for having the same strictly validating highlighting.

* netlink: use __kernel_timespec for handshake time

This readies us for Y2038. See https://lwn.net/Articles/776435/ for more info.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
5 years agoiproute2: update to 4.20.0
Deng Qingfang [Tue, 22 Jan 2019 11:55:21 +0000 (19:55 +0800)]
iproute2: update to 4.20.0

Update to the latest version of iproute2; see https://lwn.net/Articles/776174/
for a full overview of the changes in 4.20.
Remove upstream patch 001-fix-print_0xhex-on-32-bit.patch and 002-tc-fix-xtables-incorrect-usage-of-LDFLAGS.patch
Introduce a patch to include <linux/limits.h> for XATTR_SIZE_MAX in tc

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
5 years agoramips: fix two-way hash and auto ageout on MT7621
HsiuWen Yen [Wed, 23 Jan 2019 04:14:19 +0000 (12:14 +0800)]
ramips: fix two-way hash and auto ageout on MT7621

Current code directly writes the FOE entry to hash_val+1 position
when hash collision occurs. However, it is found that this behavior
will cause the cache and the hardware FOE table to be inconsistent.

For example, there are three flows, and their hashed values are all
equal to 100. The first flow is written to the position of 100. The
second flow is written to the position of 100+1. Then, the logic of
the current code will also write the third flow to 100+1.

At this time, the cache has flow 1 and 2; and the hardware FOE table
has flow 1 and 3, where these two parts store different contents.
So it is necessary to check whether the hash_val+1 is also occupied
before writing. If hash_val+1 is also occupied, we won’t bind th
third flow to the FOE table.

Addition to that, we also cancel the processing of foe_entry removal
because the hardware has auto age-out ability. The hardware will
periodically iterate through the FOE table to find out the time-out
entry and set it as INVALID.

Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
5 years agouboot-ar71xx: fix musl host build
Andy Walsh [Tue, 14 Aug 2018 12:27:47 +0000 (14:27 +0200)]
uboot-ar71xx: fix musl host build

On musl based distributions, u-boot 2010.03 fails to build with:

    u-boot-2010.03/include/u-boot/crc.h:29:50: error: unknown type name 'uint'
      uint32_t crc32 (uint32_t, const unsigned char *, uint);

The issue was fixed in the newer u-boot-2018.03 version, this commit
backports the change to the older version used by ar71xx/ath79.

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
[add commit message from PR description]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agolibrpc: remove package
Andy Walsh [Mon, 13 Aug 2018 11:14:17 +0000 (13:14 +0200)]
librpc: remove package

* replaced with packages/libtirpc
* remove busybox options rarely used/deprecated
BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
BUSYBOX_CONFIG_FEATURE_INETD_RPC

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
5 years agomusl: improve crypt() size hack
Jo-Philipp Wich [Tue, 22 Jan 2019 08:50:09 +0000 (09:50 +0100)]
musl: improve crypt() size hack

Instead of silently downgrading any non-MD5 crypt() request to DES,
cleanly fail with return NULL and errno = ENOSYS. This allows callers
to notice the missing support instead of the unwanted silent fallback
to DES.

Also add a menuconfig toolchain option to optionally disable the crypt
size hack completely. This can be probably made dependant on SMALL_FLASH
or a similar feature indicator in a future commit.

Ref: https://github.com/openwrt/openwrt/pull/1331
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobusybox: handle crypt() errors in loginutils
Jo-Philipp Wich [Tue, 22 Jan 2019 11:01:09 +0000 (12:01 +0100)]
busybox: handle crypt() errors in loginutils

The crypt(3) function is allowed to fail with either EINVAL or ENOSYS when
the given salt is either invalid or when the requested algorithm is not
implemented.

In such a case, libbb's pw_encrypt() function will silently convert the
crypt() NULL return value into an empty string which is then processed
without further errors by utilities such as chpasswd or passwd, causing
them to set an empty password when an unsupported cipher is requested.

Patch the relevant users of pw_encrypt() to abort in case an empty hash
is returned by pw_encrypt() in order to mitigate the problem.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoncurses: build host libraries with -fPIC
Jo-Philipp Wich [Tue, 22 Jan 2019 10:12:04 +0000 (11:12 +0100)]
ncurses: build host libraries with -fPIC

Since readline/host links ncurses/host now, we need to ensure that the
libncursesw.so host library is built with -fPIC.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agotools/sed: fix incorrect dependency.
Kuang Rufan [Thu, 27 Sep 2018 14:08:35 +0000 (22:08 +0800)]
tools/sed: fix incorrect dependency.

sed shall depend on xz instead of xz depends on sed.

Signed-off-by: Kuang Rufan <master@a1983.com.cn>
5 years agobuild: Optionally provide file checksums in package metadata
Michal Hrusecky [Wed, 17 Jan 2018 12:25:43 +0000 (13:25 +0100)]
build: Optionally provide file checksums in package metadata

This may be useful if you don't entirely trust your flash and want to be able
to check for corruptions.

Signed-off-by: Michal Hrusecky <Michal@Hrusecky.net>
5 years agoath79: fix port order for dir 825-c1 and 835-a1
Sebastian Kemper [Sun, 20 Jan 2019 08:13:24 +0000 (09:13 +0100)]
ath79: fix port order for dir 825-c1 and 835-a1

LAN ports 1 and 4 and 2 and 3 are interchanged. Fix this in 02_network
so the ports show up in the correct order in luci.

The correct ucidef_add_switch line is already present. This commit moves
the blocks around to keep alphabetical order.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
5 years agoar71xx: ag71xx: preserve port mirror flags during swconfig apply
Milan Krstic [Sun, 20 Jan 2019 11:44:37 +0000 (12:44 +0100)]
ar71xx: ag71xx: preserve port mirror flags during swconfig apply

The swconfig load operation always triggers 'apply' function which in
this driver currently clears port mirroring flags effectively undoing
port mirroring configuration.

This fix preserves port mirroring flags during apply.

Signed-off-by: Milan Krstic <milan.krstic@gmail.com>
5 years agoath79: ag71xx: preserve port mirror flags during swconfig apply
Milan Krstic [Mon, 21 Jan 2019 21:26:33 +0000 (22:26 +0100)]
ath79: ag71xx: preserve port mirror flags during swconfig apply

The swconfig load operation always triggers 'apply' function which in
this driver currently clears port mirroring flags effectively undoing
port mirroring configuration.

Signed-off-by: Milan Krstic <milan.krstic@gmail.com>
5 years agoprocd: Add wrapper for uci_validate_section()
Jeffery To [Sat, 12 Jan 2019 18:14:22 +0000 (02:14 +0800)]
procd: Add wrapper for uci_validate_section()

This adds a wrapper (uci_load_validate) for uci_validate_section() that
allows callers (through a callback function) to access the values set by
uci_validate_section(), without having to manually declare a
(potentially long) list of local variables.

The callback function receives two arguments when called, the config
section name and the return value of uci_validate_section().

If no callback function is given, then the wrapper exits with the value
returned by uci_validate_section().

This also updates several init scripts to use the new wrapper function.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
5 years agoiputils: install ping, ping6, traceroute6 with setuid root
Carsten Wolff [Sun, 8 Apr 2018 19:39:10 +0000 (21:39 +0200)]
iputils: install ping, ping6, traceroute6 with setuid root

these utilities need to run with uid 0 to be useful. Thus,
install them setuid root like other distros do, too.

Signed-off-by: Carsten Wolff <carsten@wolffcarsten.de>
[use INSTALL_SUID macro]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agofstools: media change detection (eg:sdcard) using kernel polling
Matthias Badaire [Tue, 15 May 2018 22:07:37 +0000 (00:07 +0200)]
fstools: media change detection (eg:sdcard) using kernel polling

Linux kernel has a polling mechanism that can be activated by changing
the parameter /sys/module/block/parameters/events_dfl_poll_msecs which
is deactivated by default or the /sys/block/[device]/events_poll_msecs
for one device.

This patch set the events_poll_msecs when a disk is inserted.
Once the media disk change event is sent by the kernel then we force a
re-read of the devices using /sbin/block info.

With this patch, insertion and ejection of sd card will automatically
generate partition devices in /dev.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
[rewrap commit message, fix bashisms, fix non-matching condition,
 bump pkg release]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoncurses: package only versioned shared objects
Jo-Philipp Wich [Tue, 22 Jan 2019 07:41:21 +0000 (08:41 +0100)]
ncurses: package only versioned shared objects

Also fix the libxxxw.so* -> libxxx.so* linking to actually work, the
prevsious code failed to properly symlink the versioned .so files.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoreadline: Update to 8.0 and various fixes
Daniel Engberg [Sat, 12 Jan 2019 17:07:25 +0000 (18:07 +0100)]
readline: Update to 8.0 and various fixes

Update (lib)readline to 8.0
Remove autoreconf
Remove blankspace at the end of the lines in description
Remove --enable-shared and --enable-static as they're enabled by default
Remove TARGET_CPPFLAGS
Simplify install sections
Install readline.pc (pkgconfig)
Add patch for linking (lib)ncurses

Source:
https://git.buildroot.net/buildroot/plain/package/readline/0000-curses-link.patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agolibnetfilter-conntrack: update to 1.0.7
Peter Wagner [Tue, 22 Jan 2019 07:15:41 +0000 (08:15 +0100)]
libnetfilter-conntrack: update to 1.0.7

Signed-off-by: Peter Wagner <tripolar@gmx.at>
[split from https://github.com/openwrt/openwrt/pull/1274]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoconntrack-tools: relocated to packages feed
Jo-Philipp Wich [Tue, 22 Jan 2019 07:14:00 +0000 (08:14 +0100)]
conntrack-tools: relocated to packages feed

In order to prepare the switch from librpc to libtirpc, we need to relocate
conntrack-tools to the packages feed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoscripts: ipkg-remove: handle existing .ipk files without SourceName field
Jo-Philipp Wich [Mon, 21 Jan 2019 15:35:40 +0000 (16:35 +0100)]
scripts: ipkg-remove: handle existing .ipk files without SourceName field

Package archives built before commit e6bcf1e4ac
("build: add ABI_VERSION to binary package names") lack the SourceName
control file field which caused ipkg-remove to skip such archives.

Add fallback code that matches the files by their basename followed by
an underscore, similar to how the old cleanup code worked.

Fixes: #2067
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agokernel: bump 4.14 to 4.14.94
Koen Vandeputte [Fri, 18 Jan 2019 10:22:01 +0000 (11:22 +0100)]
kernel: bump 4.14 to 4.14.94

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.151
Koen Vandeputte [Fri, 18 Jan 2019 10:19:29 +0000 (11:19 +0100)]
kernel: bump 4.9 to 4.9.151

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agobcm53xx: add support for Phicomm K3
Hao Dong [Sat, 19 Jan 2019 17:39:19 +0000 (17:39 +0000)]
bcm53xx: add support for Phicomm K3

Hardware specifications:

- CPU: Broadcom BCM4709C0 @1.4GHz (Dual-Core ARM)
- RAM: 512 MB (DDR3)
- Flash: 128 MB (NAND)
- LAN ports: 3, LAN speed: 10/100/1000
- WAN ports: 1, WAN speed: 10/100/1000
- 2.4G: BCM4366 4x4 MIMO 1000Mbps -- Skyworks SE2623L 2.4GHz Power Amplifier (x4)
- 5G: BCM4366 4x4 MIMO 2167Mbps -- RFMD RFPA5542 5GHz Power Amplifier Module (x4)
- USB: 1x USB 3.0 port
- 1x LED, 1x reset button, 1x power switch
- 1x system status touch screen

Flash:

- Enter CFE
- Upload the trx file
- Reboot

Signed-off-by: Hao Dong <halbertdong@gmail.com>
5 years agomt76: update to the latest version
Felix Fietkau [Sun, 20 Jan 2019 17:01:57 +0000 (18:01 +0100)]
mt76: update to the latest version

d273ddd mt7603: fix number of frames limit in .release_buffered_frames
63bf183 mt76: add channel switch announcement support
e45db12 mt7603: fix tx status info
9d11596 mt7603: discard bogus tx status data
4bcb2f9 mt7603: fix txd q_idx field value
4206db7 mt76: set IEEE80211_HW_NEEDS_UNIQUE_STA_ADDR flag
c4e4982 mt7603: set IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN
702f557 mt7603: use maximum tx count for buffered multicast packets
158529d mt7603: fix PSE reset retry sequence
fc31457 mt7603: implement support for SMPS

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomac80211: add support for indicating missing tx A-MPDU length
Felix Fietkau [Wed, 16 Jan 2019 22:07:22 +0000 (23:07 +0100)]
mac80211: add support for indicating missing tx A-MPDU length

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agonghttp2: bump to 1.36.0
Hans Dedecker [Sun, 20 Jan 2019 17:11:32 +0000 (18:11 +0100)]
nghttp2: bump to 1.36.0

e7e8ee5f Update bash_completion
b3b4e335 Update manual pages
bd93d90a Don't treat text as option if it matches -[0-9]
ea69c84b Bump up version number to 1.36.0
783b649b Update AUTHORS
eb21e6f8 Merge branch 'update-http-parser'
ab2aa567 Fix test failure
ff87a542 Use http-parser 0d0a24e19eb5ba232d2ea8859aba2a7cc6c42bc4
439dbce6 Merge branch 'nghttpx-h1-connection-pool-per-addr'
e9c9838c nghttpx: Pool h1 backend connection per address
803d4ba9 Merge branch 'nghttpx-randomize-roundrobin-order'
732245e5 make clang-format
9e8d5433 Use clang-format-7
fdcdb21c nghttpx: Randomize backend address round robin order per thread
11d0533c nghttpx: Ensure that cert serial does not exceed 20 bytes
dbb5f00d Merge pull request #1287 from rckclmbr/fix_serial_size
9cc412e2 Merge pull request #1285 from staticinvocation/master
5b2efc0a Fix getting long serial numbers for openssl < 1.1
7e4c48a4 Disable shared library if ENABLE_SHARED_LIB is OFF
082e162f Merge pull request #1282 from alagoutte/travis
7cc7c06c .travis(.yml): no longer need llvm-toolchain-trusty-7
12ebeb30 .travis(.yml): Update to Xenial
c78abbe1 Update mruby to 2.0.0
124c7848 nghttpx: Add missing return
ce9667c4 Merge branch 'nghttpx-fix-trailing-slash-handling'
f3f40840 nghttpx: Fix broken trailing slash handling
302abf1b h2load: Fix compile error with gcc
089a03be h2load: Write log file with write(2)
de4fe728 Merge branch 'pyos-master'
d1b3a83f h2load: add an option to write per-request logs
eb679253 Merge branch 'puscas-port_in_use'
6800d317 added access to the number of the current server port
c98362ea Bump up version number to 1.36.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agokernel: N_BADCLASS: fix macro to actually work - class e support
Kevin Darbyshire-Bryant [Sat, 19 Jan 2019 19:42:21 +0000 (19:42 +0000)]
kernel: N_BADCLASS: fix macro to actually work - class e support

Backport upstream patch:

Commit 65cab850f0ee ("net: Allow class-e address assignment via ifconfig
ioctl") modified the IN_BADCLASS macro a bit, but unfortunatly one too
many '(' characters were added to the line, making any code that used
it, not build properly.

Also, the macro now compares an unsigned with a signed value, which
isn't ok, so fix that up by making both types match properly.

Reported-by: Christopher Ferris <cferris@google.com>
Fixes: 65cab850f0ee ("net: Allow class-e address assignment via ifconfig ioctl")
Cc: Dave Taht <dave.taht@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years agobuild: add ABI_VERSION to binary package names
Jo-Philipp Wich [Thu, 17 Jan 2019 16:31:09 +0000 (17:31 +0100)]
build: add ABI_VERSION to binary package names

Add the ABI_VERSION source makefile variable to the binary package basename
and resolve source dependencies on packages with ABI_VERSION set to such
expanded names.

If for example a package specifies DEPENDS:=libopenssl while the OpenSSL
Makefile specifies ABI_VERSION:=1.0.0, the resulting ipk control data
dependency will be "Depends: libopenssl1.0.0" and the libopenssl ipk file
will be called "libopenssl1.0.0_<version>_<arch>.ipk".

The next time a library such as OpenSSL is updated to an incompatible
version, the ABI_VERSION shall be changed accordingly to prevent opkg from
simply upgrading to an incompatible library without considering the
dependencies of already installed packages.

Also introduce another "SourceName" control field which is required by
the newly introduced "scritps/ipkg-remove" to determine the proper related
.ipk files to delete upon buildroot package clean operations.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobuild: expose ABI version in .packageauxvars
Jo-Philipp Wich [Fri, 18 Jan 2019 11:43:06 +0000 (12:43 +0100)]
build: expose ABI version in .packageauxvars

Subdequent commits need this information to resolve the ABI version when
computing binary ipk dependencies.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobuild: rename .packagesubdirs to .packageauxvars
Jo-Philipp Wich [Fri, 18 Jan 2019 11:32:57 +0000 (12:32 +0100)]
build: rename .packagesubdirs to .packageauxvars

Subsequent commits will put more auxiliary information into this file,
such as the per-package ABI version, so rename the metadata script
subcommand and file names accordingly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agopackages: set more explicit ABI_VERSION values
Jo-Philipp Wich [Thu, 17 Jan 2019 16:24:31 +0000 (17:24 +0100)]
packages: set more explicit ABI_VERSION values

In the case of upstream libraries, set the ABI_VERSION variable to the
soname value of the first version version after the last backwards
incompatible change.

For custom OpenWrt libraries, set the ABI_VERSION to the date of the
last Git commit doing backwards incompatible changes to the source,
such as changing function singatures or dropping exported symbols.

The soname values have been determined by either checking
https://abi-laboratory.pro/index.php?view=tracker or - in the case
of OpenWrt libraries - by carefully reviewing the changes made to
header files thorough the corresponding Git history.

In the future, the ABI_VERSION values must be bumped whenever the
library is updated to an incpompatible version but not with every
package update, in order to reduce the dependency churn in the
binary package repository.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoopkg: update to latest Git head
Jo-Philipp Wich [Fri, 18 Jan 2019 17:43:18 +0000 (18:43 +0100)]
opkg: update to latest Git head

This update fixes some cosmetical issues and a number of segmentation
faults when parsing lists having Conflicts or Replaces tags.

d217daf libopkg: fix replacelist parsing and writing
9dd9a07 libopkg: fix segmentation fault when traversing conflicts
34571ba libopkg: consider provided packages in pkg_vec_mark_if_matches()
18740e6 opkg_download: print error when fork() fails
e3d7330 libopkg: don't print unresolved dependencies twice

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoramips: fix firmware splitter for edimax based boards
Mathias Kresin [Sat, 19 Jan 2019 09:23:21 +0000 (10:23 +0100)]
ramips: fix firmware splitter for edimax based boards

Use the correct splitter for board with the edimax header.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agokernel: add DT binding support to the Edimax uImage parser
Mathias Kresin [Sat, 19 Jan 2019 09:12:53 +0000 (10:12 +0100)]
kernel: add DT binding support to the Edimax uImage parser

It allows specifying those parsers directly in the DT.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agodnsmasq: allow building without tftp server support
Rosy Song [Mon, 7 Jan 2019 01:52:43 +0000 (09:52 +0800)]
dnsmasq: allow building without tftp server support

It saves 2871 bytes on package size while 4 bytes on memory size.

Signed-off-by: Rosy Song <rosysong@rosinson.com>
5 years agokernel: remove upstreamed patch from 4.19
Stijn Tintel [Thu, 17 Jan 2019 08:39:34 +0000 (10:39 +0200)]
kernel: remove upstreamed patch from 4.19

This patch applies cleanly, so it doesn't cause errors while rebasing
patches. It results in redifinition of inode_still_linked, causing build
to fail when ubifs is enabled. Drop the patch.

Fixes: a37098a2d013 ("kernel: bump 4.19 to 4.19.16")
Reported-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agokernel: drop old symbol from 4.19
Stijn Tintel [Thu, 17 Jan 2019 01:06:24 +0000 (03:06 +0200)]
kernel: drop old symbol from 4.19

CONFIG_LIRC_STAGING was removed in kernel 4.16.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agokernel: bump 4.19 to 4.19.16
Stijn Tintel [Wed, 16 Jan 2019 23:01:18 +0000 (01:01 +0200)]
kernel: bump 4.19 to 4.19.16

Refresh patches.
Remove upstreamed patches:
- backport/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch
- backport/096-v4.20-netfilter-ipv6-Preserve-link-scope-traffic-original-.patch
- backport/424-v4.20-net-dsa-fix-88e6060-roaming.patch
- hack/100-mtd-rawnand-qcom-fix-memory-corruption-that-causes-p.patch
- pending/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch
Update patch that no longer applies:
- backport/343-netfilter-nft_flow_offload-handle-netdevice-events-f.patch

Compile-tested: mesongx
Runtime-tested: mesongx

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agoodhcpd: fix onlink IA check (FS#2060)
Hans Dedecker [Wed, 16 Jan 2019 21:57:54 +0000 (22:57 +0100)]
odhcpd: fix onlink IA check (FS#2060)

0a36768 dhcpv6-ia: fix compiler warning
1893905 dhcpv6-ia: fix onlink IA check (FS#2060)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agodnsmasq: backport latest pre2.81 patches
Kevin Darbyshire-Bryant [Mon, 17 Dec 2018 16:36:44 +0000 (16:36 +0000)]
dnsmasq: backport latest pre2.81 patches

f52bb5b fix previous commit
18eac67 Fix entries in /etc/hosts disabling static leases.
f8c77ed Fix removal of DHCP_CLIENT_MAC options from DHCPv6 relay replies.
4bf62f6 Tidy cache_blockdata_free()
9c0d445 Fix e7bfd556c079c8b5e7425aed44abc35925b24043 to actually work.
2896e24 Check for not(DS or DNSKEY) in is_outdated_cname_pointer()
a90f09d Fix crash freeing negative SRV cache entries.
5b99eae Cache SRV records.
2daca52 Fix typo in ra-param man page section.
2c59473 File logic bug in cache-marshalling code. Introduced a couple of commits back.
cc921df Remove nested struct/union in cache records and all_addr.
ab194ed Futher address union tidying.
65a01b7 Tidy address-union handling: move class into explicit argument.
bde4647 Tidy all_addr union, merge log and rcode fields.
e7bfd55 Alter DHCP address selection after DECLINE in consec-addr mode. Avoid offering the same address after a recieving a DECLINE message to stop an infinite protocol loop. This has long been done in default address allocation mode: this adds similar behaviour when allocaing addresses consecutively.

The most relevant fix for openwrt is 18eac67 (& my own local f52bb5b
which fixes a missing bracket silly) To quote the patch:

It is possible for a config entry to have one address family specified by a
dhcp-host directive and the other added from /etc/hosts. This is especially
common on OpenWrt because it uses odhcpd for DHCPv6 and IPv6 leases are
imported into dnsmasq via a hosts file.

To handle this case there need to be separate *_HOSTS flags for IPv4 and IPv6.
Otherwise when the hosts file is reloaded it will clear the CONFIG_ADDR(6) flag
which was set by the dhcp-host directive.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years agokernel: bump 4.9 to 4.9.150
Koen Vandeputte [Tue, 15 Jan 2019 11:56:22 +0000 (12:56 +0100)]
kernel: bump 4.9 to 4.9.150

Refreshed all patches.

Remove upstreamed:
- 096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch

Altered patches:
- 024-7-net-reorganize-struct-sock-for-better-data-locality.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 3.18 to 3.18.132
Koen Vandeputte [Tue, 15 Jan 2019 08:19:44 +0000 (09:19 +0100)]
kernel: bump 3.18 to 3.18.132

Refreshed all patches.

Compile-tested: adm5120
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agofirmware-utils: mksercommfw: overhaul image creation
Mathias Kresin [Sat, 12 Jan 2019 19:18:52 +0000 (20:18 +0100)]
firmware-utils: mksercommfw: overhaul image creation

Move the zip compression into a build recipe. Pad the image using the
existing build recipes as well to remove duplicate functionality

Change the code to append header and footer in two steps. Allow to use a
fixed filename as the netgear update image does.

Use a fixed timestamp within the zip archive to make the images
reproducible.

Due to the changes we are now compatible to the gnu89 c standard used by
default on the buildbots and we don't need to force a more recent
standard anymore.

Beside all changes, the footer still looks wrong in compare to the
netgear update image.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agotools: zip: add option for reproducible archives
Mathias Kresin [Sat, 12 Jan 2019 18:39:33 +0000 (19:39 +0100)]
tools: zip: add option for reproducible archives

Add the option -mt/--mtime to pass a timestamp which is used as filedate
for the containing files.

So far, it isn't used for anything written to the extra fields,
therefore requires the -X (eXclude eXtra file attributes) parameter to
be effective.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agotools: add zip utility
Mathias Kresin [Sat, 5 Jan 2019 19:51:00 +0000 (20:51 +0100)]
tools: add zip utility

One image requires a zip compressed image, so add the zip util found in
the packages feed, and extend it with some useful debian patches.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoodhcpd: update to latest git HEAD (FS#2020)
Hans Dedecker [Tue, 15 Jan 2019 12:54:35 +0000 (13:54 +0100)]
odhcpd: update to latest git HEAD (FS#2020)

7abbed4 dhcpv6: add setting to choose IA_NA, IA_PD or both
dd1aefd router: add syslog tracing for skipped routes
0314d58 router: filter route information option
5e99738 router: make announcing DNS info configurable (FS#2020)
1fe77f3 router: check return code of odhcpd_get_interface_dns_addr()
8f49804 config: check for invalid DNS addresses

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agokmod-sched-cake: bump to latest cake
Kevin Darbyshire-Bryant [Thu, 29 Nov 2018 16:19:22 +0000 (16:19 +0000)]
kmod-sched-cake: bump to latest cake

331ac70 Correctly update parent qlen when splitting GSO packets
581967c Makefile: Hook into Kbuild/Kconfig infrastructure

The parent qlen change is relevant if using cake as a leaf qdisc,
the makefile is a no-op.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years agoelfutils: bump to 0.175
Kevin Darbyshire-Bryant [Thu, 20 Dec 2018 12:09:33 +0000 (13:09 +0100)]
elfutils: bump to 0.175

4ea9a2db164c Update upload-release.sh script and po files.
a01938d584b9 libelf: Mark both fsize and msize with const attribute.
c338a0541663 libebl: Don't update w, t and len unnecessarily in ebl_object_note_type_name.
422b549007f6 Prepare for 0.175
22ec8efc1dd8 elflint: Allow PT_GNU_EH_FRAME segment to match SHT_X86_64_UNWIND section.
cf10453f8252 libelf: Correctly setup alignment of SHF_COMPRESSED section data.
d3e6266754b9 strip: Also handle gnu compressed debug sections with --reloc-debug-sections
72e30c2e0cb4 Handle GNU Build Attribute ELF Notes.
7a3f6fe60b85 Recognize NT_VERSION notes.
cff53f1784c9 libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT and BPF_JSLE
ecbe3120cddb libdwelf: New function dwelf_elf_begin.
4b0342b85b5b backends: Add x86_64 section_type_name for SHT_X86_64_UNWIND.
825e48c4e942 Also find CFI in sections of type SHT_X86_64_UNWIND
4789e0fb92b0 libelf: Explicitly update section data after (de)compression.
1628254ba215 strip: Add --reloc-debug-sections-only option.
f2d59180b90b strip: Extract code to update shdrstrndx into new common function.
f6ae0ab9350e strip: Split out debug section relocation into separate helper functions.
b15ee95bcee4 strip: Always copy over any phdrs if there are any.
e574889d92b1 unstrip: Add ELF_CHECK to make sure gelf_getehdr () doesn't return NULL.
5199e15870e0 Recognize and parse GNU Property notes.
b75ff1bbd060 addr2line: Use elf_getshdrstrndx not Ehdr field to print section name.
35197ea4c43e readelf: Use shstrndx to lookup section names.
9a74c190a2b3 backends: ppc use define instead of const for size of dwarf_regs array.
72d023b35f36 readelf: Make sure readp is smaller than cieend in print_debug_frame_section.
dce0b3b63ba0 readelf: Make sure readp is smaller than cieend in print_debug_frame_section.
1e7c230b277b Check sh_entsize is not zero.
22d2d082d57a size: Handle recursive ELF ar files.
2b16a9be6993 arlib: Check that sh_entsize isn't zero.
4cdb0fd0d3b4 ar: Assume epoch if ar_date is bogus.
577511f66842 findtextrel: Check that sh_entsize isn't zero.
20f9de9b5f70 libdwfl: Sanity check partial core file data reads.
2f4a040fab52 readelf: Handle multiple .debug_macro sections and decode header flag.
eee4269e5315 unstrip: Renumber the group section indexes.
c06ab0bbb476 strip, unstrip: Handle SHT_GROUP correctly.
2876b3b648f6 Handle ADD/SUB relocations
69d6e67eee30 tests: backtrace-dwarf.c improve error handling in test framework.

Originally-produced--by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
5 years agokernel: bump 4.14 to 4.14.93
Stijn Tintel [Sun, 13 Jan 2019 19:50:36 +0000 (21:50 +0200)]
kernel: bump 4.14 to 4.14.93

Refresh patches.
Remove upstreamed patches:
- backport/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch
- pending/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch
- brcm2708/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch

Compile-tested: ar71xx, ath79, brcm2708/bcm27{08,10}, octeon, x86/64
Runtime-tested: ar71xx, ath79, brcm2708/bcm27{08,10}, octeon, x86/64

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agobusybox: fix ALTERNATIVES alphabetical ordering
Hans Dedecker [Sun, 13 Jan 2019 20:33:53 +0000 (21:33 +0100)]
busybox: fix ALTERNATIVES alphabetical ordering

Commit 3f0eb71dae added ALTERNATIVES for wget but not in correct
alphabetical order; increase PKG_RELEASE as well.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agofirmware-utils: mkdlinkfw: fix build
Mathias Kresin [Sun, 13 Jan 2019 18:28:54 +0000 (19:28 +0100)]
firmware-utils: mkdlinkfw: fix build

While we don't need the gnu99 option anymore, we still need to force the
c99 standard to fix the following build error on the build bots:

src/mkdlinkfw.c: In function 'find_auh_headers':
src/mkdlinkfw.c:267:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
   for (int i = 0; i < header_counter; i++) {
   ^
src/mkdlinkfw.c:267:3: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agobuild: remove duplicate mksercomfw image recipe
Mathias Kresin [Sat, 5 Jan 2019 20:02:33 +0000 (21:02 +0100)]
build: remove duplicate mksercomfw image recipe

Keep the ramips/mt76x8 copy, since it's only required for this target at
the moment.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agofirmware-utils: mkdlinkfw: fix error handling
Mathias Kresin [Sat, 5 Jan 2019 06:40:55 +0000 (07:40 +0100)]
firmware-utils: mkdlinkfw: fix error handling

fread() doesn't set errno, ferror need to be used to check for errors.
While at it, check if we read the expect number of elements.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agofirmware-utils: mkdlinkfw: create reproducible header
Mathias Kresin [Sat, 5 Jan 2019 06:34:02 +0000 (07:34 +0100)]
firmware-utils: mkdlinkfw: create reproducible header

Use the SOURCE_DATE_EPOCH environment variable if set instead of the
current time. The used timestamp matches the timestamp of the latest
commit this way and make the images reproducible.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agofirmware-utils: mkdlinkfw: cleanup code
Mathias Kresin [Sat, 5 Jan 2019 11:08:09 +0000 (12:08 +0100)]
firmware-utils: mkdlinkfw: cleanup code

Drop unused function and macros. With the cleanup the gnu extension
typeof isn't used any longer and the gnu99 compile flag can be dropped.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agouclient: add ALTERNATIVES for wget
Hans Dedecker [Fri, 11 Jan 2019 15:18:20 +0000 (16:18 +0100)]
uclient: add ALTERNATIVES for wget

Don't symlink uclient-fetch anymore to /bin/wget but rather use
the ALTERNATIVES support for wget to install it as /usr/bin/wget.
Let uclient-fetch provide wget

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agobusybox: add ALTERNATIVES for wget
Hans Dedecker [Fri, 11 Jan 2019 15:15:57 +0000 (16:15 +0100)]
busybox: add ALTERNATIVES for wget

Busybox wget applet conflicts with the version from uclient.
Fix this by using ALTERNATIVE support for wget in busybox.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agouboot-sunxi: Orange Pi Zero Plus: Fix SdCard detection
Hauke Mehrtens [Sun, 13 Jan 2019 16:16:42 +0000 (17:16 +0100)]
uboot-sunxi: Orange Pi Zero Plus: Fix SdCard detection

The Detection pin is at PF6 and not at PH13 like defined before. I
checked the schematics and now I am am not seeing this error message any
more:
Loading Environment from FAT... Card did not respond to voltage select!

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agouboot-sunxi: disable AXP209 on Olimex A13 Olinuxino
Zoltan HERPAI [Fri, 4 Jan 2019 12:11:26 +0000 (13:11 +0100)]
uboot-sunxi: disable AXP209 on Olimex A13 Olinuxino

Disable the PMIC on Olimex A13 Olinuxino, as the SPL cannot set the
core voltage correctly, which causes the board to freeze later at
kernel if CPU throttling is enabled (see below). This will almost
certainly kill the VGA output (which requires LDO3 to be set), but
this is still a better option than to disable CPU throttling for
all Cortex-A8 based devices.

[    2.485632] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 384000 KHz
[    2.525698] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 432000 KHz

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
5 years agouboot-sunxi: update Theobroma A31 Pangolin support
Zoltan HERPAI [Mon, 31 Dec 2018 14:41:38 +0000 (15:41 +0100)]
uboot-sunxi: update Theobroma A31 Pangolin support

Drop removed pinctrl definitions from the i2c3 pin layout.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
5 years agoarm-trusted-firmware-sunxi: Replace with official ARM version
Hauke Mehrtens [Wed, 19 Dec 2018 12:12:49 +0000 (13:12 +0100)]
arm-trusted-firmware-sunxi: Replace with official ARM version

Instead of using a fork of the ARM trusted firmware specifically for the
Allwinner SoCs, use the official version from ARM now, this version
supports the Allwinner SoCs now and the older ATF repository is
deprecated.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agouboot-sunxi: Update to version 2018.11
Hauke Mehrtens [Wed, 19 Dec 2018 11:53:52 +0000 (12:53 +0100)]
uboot-sunxi: Update to version 2018.11

This updates the uboot for the sunxi target to version 2018.11
The removed patches are applied upstream and not needed any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agosunxi: Add support for kernel 4.19
Hauke Mehrtens [Mon, 26 Nov 2018 22:47:00 +0000 (23:47 +0100)]
sunxi: Add support for kernel 4.19

This adds supprot for kernel 4.19 to the sunxi target. The patches and
the configuration were copied from the kernel 4.14 patches folder and
adapted for kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agosunxi: Refresh kernel 4.14 configuration
Hauke Mehrtens [Sat, 8 Dec 2018 17:33:17 +0000 (18:33 +0100)]
sunxi: Refresh kernel 4.14 configuration

Refresh the sunxi kernel configuration without doing any intentional
changes.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agosunxi: Use kernel specific sub target configuration
Hauke Mehrtens [Sat, 8 Dec 2018 15:37:14 +0000 (16:37 +0100)]
sunxi: Use kernel specific sub target configuration

To make it easier to support multiple kernel versions in parallel also
copy the sub target specific kernel configurations into kernel specific
files.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agosunxi: Remove unneeded patches
Hauke Mehrtens [Mon, 26 Nov 2018 23:17:05 +0000 (00:17 +0100)]
sunxi: Remove unneeded patches

In the device tree file the higher offsets of the reset controller are
not used, so this patch supporting higher bits is not needed.
The sunxi architecture switched to the simple reset controller with
kernel 4.19 and then this patch does not apply any more.
The sunxi target in OpenWrt is very close to mainline, so if the device
tree files from the mainline Linux kernel need this the mainline kernel
will get support for this.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agokernel/modules: Add missing config option
Hauke Mehrtens [Sun, 13 Jan 2019 14:33:26 +0000 (15:33 +0100)]
kernel/modules: Add missing config option

This configuration option was added in kernel 4.15 and is missing in the
kernel 4.19 configuration.

Fixes: ed2839ac419 ("kernel/modules: add kmod-pmbus-zl6100 module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agomalta: Add support for kernel 4.19
Hauke Mehrtens [Sun, 13 Jan 2019 13:50:44 +0000 (14:50 +0100)]
malta: Add support for kernel 4.19

This adds a kernel configuration file for kernel 4.19 on malta.
CONFIG_POWER_RESET_PIIX4_POWEROFF and CONFIG_POWER_RESET_SYSCON were
activated because malta now uses this driver for reboot.

CONFIG_BLK_DEV_SR was also added because it was also added to the kernel
default configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agomalta: Refresh kernel 4.14 configuration
Hauke Mehrtens [Sun, 13 Jan 2019 13:31:03 +0000 (14:31 +0100)]
malta: Refresh kernel 4.14 configuration

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agokernel: MIPS: Add CPU option reporting to /proc/cpuinfo
Hauke Mehrtens [Sun, 23 Dec 2018 17:41:51 +0000 (18:41 +0100)]
kernel: MIPS: Add CPU option reporting to /proc/cpuinfo

Many MIPS CPUs have optional CPU features which are not activates for
all CPU cores. Print the CPU options which are implemented in the core
in /proc/cpuinfo. This makes it possible to see what features are
supported and which are not supported. This should cover all standard
MIPS extensions, before it only printed information about the main MIPS
ASEs.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agokernel/modules: Fix build of kmod-pmbus
Hauke Mehrtens [Sun, 13 Jan 2019 12:12:51 +0000 (13:12 +0100)]
kernel/modules: Fix build of kmod-pmbus

This fixes two build problems introduced with the recently added new
kernel module package.

Fixes: ed2839ac4190 ("kernel/modules: add kmod-pmbus-zl6100 module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agogeneric: ar8216: ar8327: kill warnings
Chuanhong Guo [Thu, 10 Jan 2019 17:22:42 +0000 (01:22 +0800)]
generic: ar8216: ar8327: kill warnings

This fixed warnings caused by returning value in a void function

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years agompc85xx: add support for Sophos RED 15w Rev.1
David Bauer [Tue, 8 Jan 2019 00:20:56 +0000 (01:20 +0100)]
mpc85xx: add support for Sophos RED 15w Rev.1

Hardware
========
CPU:  Freescale P1010 PowerPC
RAM:  128M DDR3
NAND: 128MiB
ETH:  RTL8211F SGMII PHY
      RTL8367B 5-port RGMII switch
      (not connected to SoC - unmanaged)
WiFi: SparkLan WPEA-121N
       - Atheros AR9382 2T2R abgn
USB:  1x USB 2.0
LED:  System, Router, Internet, Tunnel controllable
      LAN1-4, WAN, Power non-controllable
BTN:  None

Installation
============
1. Power on the device while attached to the Console port.

2. Halt the U-Boot by pressing Enter when prompted.

3. Set the correct bootcmd for booting OpenWRT:
 > setenv bootargs_owrt "setenv bootargs console=ttyS0,115200"
 > setenv bootcmd "run bootargs_owrt;
   nand read 0x1000000 0x300000 0x800000;
   bootm 0x1000000;"
 > saveenv

5. Rename OpenWRT initramfs image to 'kernel.bin' and place it in a
   TFTP server root-directory served on 192.168.1.2/24. Connect your
   computer to one of the LAN-ports.

4. Boot OpenWRT initramfs image with
 > run bootargs_owrt; tftpboot 0x1000000 192.168.1.2:kernel.bin;
   bootm 0x1000000;

6. (Optional)
   Make a Backup of 'sophos-os1', 'sophos-os2' and 'sophos-data' in case
   you ever want to go back to the vendor firmware.

7. Create Ubi Volume on mtd4 by executing
 > ubiformat /dev/mtd4 -y

8. Transfer OpenWRT sysupgrade image to the device via SCP and install it
   with
 > sysupgrade -n <openwrt-image-file>

Back to Stock
=============
If you want to go back to the stock firmware, here is the bootcmd of the
vendor firmware:
 > setenv bootargs console=ttyS0,115200 root=/dev/mtdblock5;
   nand read 0xc00000 0x00300000  0x100000;
   nand read 0x1000000 0x00400000 0x00800000;
   bootm 0x1000000 - 0xc00000

Set it via 'setenv' from the U-Boot shell and don't forget to save it
using 'saveenv'!

After this, boot the OpenWRT initramfs image just like you would for
installation. Write back the three vendor partitions using mtd. Reboot
the device afterwards.

Signed-off-by: David Bauer <mail@david-bauer.net>
[refresh and reorder patches]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: 4.14: sync config
Christian Lamparter [Sat, 5 Jan 2019 21:21:40 +0000 (22:21 +0100)]
apm821xx: 4.14: sync config

This patch syncs the 4.14 kernel config to the
current generic configuration.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agompc85xx: disable initramfs image in TL-WDR4900
Pawel Dembicki [Sun, 13 Jan 2019 07:18:55 +0000 (07:18 +0000)]
mpc85xx: disable initramfs image in TL-WDR4900

Initramfs image isn't required for this device and regular
initramfs generation isn't work properly. It create not working
binaries.

This patch disable initramfs image for TL-WDR4900.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agompc85xx: add support for Freescale (NXP) P2020RDB
Pawel Dembicki [Sun, 30 Dec 2018 07:38:45 +0000 (07:38 +0000)]
mpc85xx: add support for Freescale (NXP) P2020RDB

This commit add initial support for Freescale (NXP) P2020RDB

Hardware:
SoC: P2020 2x1GHz
DRAM: 512-1GB DDR3
2 + 4 GBE (2 separate ports and four in VSC7385)
Flash: 16MB NOR, 32MB NAND, 16MB SPI-NOR
PCIE x1 and mPCIE x1
SD Reader

Interfaces:
GBE RJ45 x6
USB2.0 x1
UART x2
I2C x2
JTAG x1
SD x1
PCIE x2 (PCIE and mPCIE)

Flash instructions:
Place sysupgrade image to 0x80000 address in NOR.
Eg. (no brakelines in setenv command):

setenv 'firmware_flash tftpboot $loadaddr $firmwarefile;
 protect off $norfdtaddr +$filesize; erase $norfdtaddr +$filesize;
 cp.b $loadaddr $norfdtaddr $filesize; protect on $norfdtaddr +$filesize;
 cmp.b $loadaddr $norfdtaddr $filesize'
setenv firmwarefile firmware.bin
run firmware_flash

Boot (no brakeline in setenv command):
setenv bootcmd 'setenv bootargs root=/dev/mtdblock3 rw console=$consoledev,
$baudrate rootfstype=squashfs $othbootargs;
bootm $norfdtaddr'
saveenv
boot

Known issues:
-Switch is unmanaged (VSC 7385 is connected via eLBC, driver uses SPI)
-No SD reader support

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [refreshed patches]
5 years agokernel/modules: add kmod-pmbus-zl6100 module
Pawel Dembicki [Wed, 2 Jan 2019 19:59:05 +0000 (19:59 +0000)]
kernel/modules: add kmod-pmbus-zl6100 module

This patch adds the kmod packaging for the Intersil / Zilker Labs
ZL6100 and compatible digital DC-DC controllers as well as the
core kernel module for the Power Management Bus.

Add:
kmod-pmbus-core
kmod-pmbus-zl6100

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agox86: Add support for kernel 4.19
Hauke Mehrtens [Thu, 1 Nov 2018 17:03:00 +0000 (18:03 +0100)]
x86: Add support for kernel 4.19

This adds initial support for kernel 4.19 to the x86 target.
The patches and the kernel configurations were copied from kernel 4.14
and then refreshed.

The legacy and the genode target will not support PAE any more because
they use a CPU type which does not support PAE, the generic sub target
still supports PAE.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agox86: Refresh kernel 4.14 configuration
Hauke Mehrtens [Sun, 30 Dec 2018 18:05:18 +0000 (19:05 +0100)]
x86: Refresh kernel 4.14 configuration

This refreshes the kernel configuration for kernel 4.14.
First this was run for the legacy target:
make kernel_oldconfig
Then for all targets including the legacy target this was run:
make kernel_oldconfig CONFIG_TARGET=subtarget
The option CONFIG_104_QUAD_8 was added to the generic configuration
because it would have been automatically removed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agox86: Use kernel specific subtarget configurations
Hauke Mehrtens [Sat, 8 Dec 2018 12:09:14 +0000 (13:09 +0100)]
x86: Use kernel specific subtarget configurations

This makes it possible to use different sub target configurations for
kernel 4.19 for example.
To support kernel 4.9 and kernel 4.14 with the same configuration file
already needed some extra work this will not be needed for kernel 4.19
any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>