openwrt/openwrt.git
3 years agogeneric: add missing symbol
David Bauer [Sun, 21 Feb 2021 22:47:39 +0000 (23:47 +0100)]
generic: add missing symbol

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: enable Regulator support for target
David Bauer [Sun, 21 Feb 2021 22:41:53 +0000 (23:41 +0100)]
ath79: enable Regulator support for target

Regulator support was enabled on all subtargets except for ath79-nand.
With Kernel 5.10, AT803x requires Regulator support, thus enabling on
the complete target, as ath79-nand requires AT803x.

While this is only required on Kernel 5.10, enable it also on 5.4. We
have no major size-constraint, so enabling it on 5.4 allows us to clean
up the occurences in the subtarget configuration.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agodownload: remove broken mirrors
David Bauer [Sat, 20 Feb 2021 20:24:11 +0000 (21:24 +0100)]
download: remove broken mirrors

These mirrors don't exist anymore. Remove them.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agompc85xx: add testing kernel for p1020
David Bauer [Sat, 20 Feb 2021 00:36:06 +0000 (01:36 +0100)]
mpc85xx: add testing kernel for p1020

CONFIG_REGULATOR is required for the p1020 subtarget, as the AT803X
driver depends on it.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: use ioremap kernel version independent
David Bauer [Sat, 20 Feb 2021 08:43:35 +0000 (09:43 +0100)]
ath79: use ioremap kernel version independent

As mangix pointed out on IRC, ioremap and ioremap_nocache are
functionally equivalent on kenrel 5.4 and 5.10.

Therefore we can use ioremap regardless of the kernel the driver
gets compiled for.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agokernel: sort config
Aleksander Jan Bajkowski [Sun, 21 Feb 2021 21:53:55 +0000 (22:53 +0100)]
kernel: sort config

This was done by executing this script:

find . -name "config-*"  > ../configs.txt
for config in $(cat ../configs.txt); do
./scripts/kconfig.pl '+' $config /dev/null > $config-new
mv $config-new $config
done
rm ../configs.txt

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
3 years agolibusb: Fix parsing of descriptors for multi-configuration devices
Georgi Valkov [Wed, 3 Feb 2021 07:41:54 +0000 (09:41 +0200)]
libusb: Fix parsing of descriptors for multi-configuration devices

Prerequisite patch:
Correct a typo in the Changelog and clean up a stray file

Fix changes in libusb which introduced a regression:
Commit e2be556bd2 ("linux_usbfs: Parse config descriptors during device
initialization") introduced a regression for devices with multiple
configurations. The logic that verifies the reported length of the
configuration descriptors failed to count the length of the
configuration descriptor itself and would truncate the actual length by
9 bytes, leading to a parsing error for subsequent descriptors.

Signed-off-by: Georgi Valkov <gvalkov@abv.bg>
3 years agobuild/json: generate json file for initramfs
Moritz Warning [Fri, 8 Jan 2021 23:02:57 +0000 (00:02 +0100)]
build/json: generate json file for initramfs

The initramfs images are missing from the profiles.json files.

Signed-off-by: Moritz Warning <moritzwarning@web.de>
[fix code by exporting device variables]
Signed-off-by: Paul Spooren <mail@aparcar.org>
3 years agotoplevel.mk: remove legacy packages feed from 'make distclean'
Michael Pratt [Sun, 31 Jan 2021 00:01:32 +0000 (19:01 -0500)]
toplevel.mk: remove legacy packages feed from 'make distclean'

package/openwrt-packages is left over
from what is now a legacy repository
and has no other reference in the build tree

Signed-off-by: Michael Pratt <mcpratt@pm.me>
3 years agotfa-layerscape: build fiptool again
Adrian Schmutzler [Sat, 20 Feb 2021 18:18:12 +0000 (19:18 +0100)]
tfa-layerscape: build fiptool again

The ls-ddr-phy package needs fiptool options that are not
available via the version from arm-trusted-firmware-tools.
This breaks build for layerscape with the recently added LX2160a:

  create: unrecognized option '--ddr-immem-udimm-1d'

Use the tfa-layerscape variant again for now, but rename it to
fiptool-layerscape to indicate that it's a specific variant.

This reverts 84bc7d31e0a8 ("tfa-layerscape: don't build fiptool").

Fixes: f59d7aab2a37 ("layerscape: add ddr-phy package")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm27xx: remove urngd package
Álvaro Fernández Rojas [Sat, 20 Feb 2021 18:55:14 +0000 (19:55 +0100)]
bcm27xx: remove urngd package

Now that khwrngd is working on all subtargets we can remove urgnd.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm27xx: enable bcm2711 HW RNG
Álvaro Fernández Rojas [Sat, 20 Feb 2021 18:53:50 +0000 (19:53 +0100)]
bcm27xx: enable bcm2711 HW RNG

Also add a patch setting its quality, which should make it usable by khwrngd.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agogeneric: add bcm2835-rng quality patch
Álvaro Fernández Rojas [Sat, 20 Feb 2021 17:59:25 +0000 (18:59 +0100)]
generic: add bcm2835-rng quality patch

This patch allows devices without a high resolution timer to boot up faster.
It should speed up boots for bcm2708 and bcm63xx.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoopenwrt-keyring: add OpenWrt 21.02 GPG/usign keys
Petr Štetiar [Sat, 20 Feb 2021 14:56:19 +0000 (15:56 +0100)]
openwrt-keyring: add OpenWrt 21.02 GPG/usign keys

49283916005d usign: add 21.02 release build pubkey
bc4d80f064f2 gpg: add OpenWrt 21.02 signing key

Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 years agox86: add led driver for PC Engines APU1
Andreas Eberlein [Tue, 23 Jun 2020 20:59:26 +0000 (22:59 +0200)]
x86: add led driver for PC Engines APU1

This driver adds the LED support for the PC Engines APU1.
This integrates the Linux kernel driver and includes a patch to support
 newer firmware versions. Also the default LED configuration is updated
 to use the correct devices.

Signed-off-by: Andreas Eberlein <foodeas@aeberlein.de>
3 years agowolfssl: fix Ed25519 typo in config prompt
Christian Lamparter [Sat, 20 Feb 2021 10:08:26 +0000 (11:08 +0100)]
wolfssl: fix Ed25519 typo in config prompt

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
3 years agohostapd: backport ignoring 4addr mode enabling error
Raphaël Mélotte [Wed, 17 Feb 2021 14:58:16 +0000 (15:58 +0100)]
hostapd: backport ignoring 4addr mode enabling error

This is a backport of the upstream commit 58bbbb598144 ("nl80211: Ignore
4addr mode enabling error if it was already enabled") which fixes same
issue as in the current fix contained in '130-wpa_supplicant-multi_ap_roam.patch',
but in a different way:

 nl80211_set_4addr_mode() could fail when trying to enable 4addr mode on
 an interface that is in a bridge and has 4addr mode already enabled.
 This operation would not have been necessary in the first place and this
 failure results in disconnecting, e.g., when roaming from one backhaul
 BSS to another BSS with Multi AP.

 Avoid this issue by ignoring the nl80211 command failure in the case
 where 4addr mode is being enabled while it has already been enabled.

Signed-off-by: Raphaël Mélotte <raphael.melotte@mind.be>
[bump PKG_RELEASE, more verbose commit description]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 years agosdk: expose binary strip settings
David Bauer [Fri, 20 Nov 2020 02:03:54 +0000 (03:03 +0100)]
sdk: expose binary strip settings

Expose the SDK options for binary stripping to the menuconfig. This
way, packages can easily be built with debug symbols using the SDK.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoramips: overwrite reset gpio properties in EX6150 DTS
Stijn Segers [Fri, 19 Feb 2021 22:11:09 +0000 (23:11 +0100)]
ramips: overwrite reset gpio properties in EX6150 DTS

The Netgear EX6150 can, just like the D-Link DIR-860L rev B1, fail to
initialise both radios in some cases. Add the reset GPIOs explicitly
so the PCI-E devices get re-initialised properly. See also FS #3632.

Error shows up in dmesg as follows:

  [    1.560764] mt7621-pci 1e140000.pcie: pcie1 no card, disable it (RST & CLK)

Tested-by: Kurt Roeckx <kurt@roeckx.be>
Signed-off-by: Stijn Segers <foss@volatilesystems.org>
[removed period from commit title]
Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoopenssl: update package sources
David Bauer [Fri, 19 Feb 2021 01:30:14 +0000 (02:30 +0100)]
openssl: update package sources

OpenSSL downloads itself are distributed using Akamai CDN, so use these
sources as the highest priority.

Remove a stale mirror which seems to be offline for a longer time
already.

Add fallbacks to the old release path also for the mirrors.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: add kernel 5.10 support
David Bauer [Wed, 17 Feb 2021 00:29:44 +0000 (01:29 +0100)]
ath79: add kernel 5.10 support

This adds Kernel 5.10 support for the generic, nand and tiny subtargets.

The following patch is not contained, as it needs to be reworked:
platform/920-mikrotik-rb4xx.patch

Tested-on:
 - Siemens WS-AP3610
 - Enterasys WS-AP3710
 - Aerohive HiveAP 121
 - TP-Link TL-WA901 v2
 - TP-Link TL-WR741 v1

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: ar934x-nand: add kernel 5.10 compatibility
David Bauer [Wed, 17 Feb 2021 21:12:43 +0000 (22:12 +0100)]
ath79: ar934x-nand: add kernel 5.10 compatibility

Adapt the driver to make it work with the NAND subsystem changes between
kernel 5.4 and 5.10.

Tested-on: Aerohive HiveAP121

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: specify device-type for PCI controllers
David Bauer [Wed, 17 Feb 2021 04:53:32 +0000 (05:53 +0100)]
ath79: specify device-type for PCI controllers

Specify the device_type property for PCI as well as PCIe controllers.
Otherwise, the PCI range parser will not be selected when using kernel
5.10.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: ag71xx: make kernel 5.10 compatible
David Bauer [Wed, 17 Feb 2021 01:04:46 +0000 (02:04 +0100)]
ath79: ag71xx: make kernel 5.10 compatible

Add the necessary kernel version ifdef switches in order to support the
kernel version 5.10.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agompc85xx-p1010: add Kernel 5.10 support
David Bauer [Tue, 16 Feb 2021 21:05:13 +0000 (22:05 +0100)]
mpc85xx-p1010: add Kernel 5.10 support

Tested on: Sophos RED 15W

The TP-Link WL-WDR4900 needs to be disabled when 5.10 becomes the
default kernel.

When building with all kmods enabled, the resulting kernel image
exceeds the maximum size the bootloader reads from the flash.

For more information, see GitHub issue #1773

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agorockchip: add Kernel 5.10 support
David Bauer [Tue, 16 Feb 2021 21:06:12 +0000 (22:06 +0100)]
rockchip: add Kernel 5.10 support

Remove all upstreamed patches and add the kernel configuration for
version 5.10.

The Rock Pi 4 was split in multiple versions. Add a DTS with the old
name in order to keep compatibility while having kernel 5.4 and 5.10 in
parallel. Switch to the Rock Pi 4A DTS once Kernel 5.4 support is
removed.

Tested-on: Nanoi R2S

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agokirkwood: rename files-5.4 to files
Sungbo Eo [Wed, 17 Feb 2021 12:09:26 +0000 (21:09 +0900)]
kirkwood: rename files-5.4 to files

Move local DTS files from "files-5.4" to "files" directory so kernel 5.10
can use it.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
3 years agolayerscape: add new devices in README and clean up
Yangbo Lu [Tue, 27 Oct 2020 08:26:11 +0000 (16:26 +0800)]
layerscape: add new devices in README and clean up

Support new devices LS1046AFRWY and LX2160ARDB in README.
Clean up README, and add missing LS1021ATWR deploy guide.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
[adjust set of devices added, update commit message/title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agolayerscape: add LX2160ARDB (Rev2.0 silicon) board support
Yangbo Lu [Thu, 30 Jul 2020 05:12:43 +0000 (13:12 +0800)]
layerscape: add LX2160ARDB (Rev2.0 silicon) board support

The QorIQ LX2160A reference design board provides a comprehensive platform
that enables design and evaluation of the LX2160A processor.

- Enables network intelligence with the next generation Datapath (DPPA2)
  which provides differentiated offload and a rich set of IO, including
  10GE, 25GE, 40GE, and PCIe Gen4

- Delivers unprecedented efficiency and new virtualized networks

- Supports designs in 5G packet processing, network function
  virtualization, storage controller, white box switching, network
  interface cards, and mobile edge computing

- Supports all three LX2 family members (16-core LX2160A; 12-core LX2120A;
  and 8-core LX2080A)

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
[use AUTORELEASE, add dtb to firmware part]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agolayerscape: add ddr-phy package
Yangbo Lu [Mon, 3 Aug 2020 03:59:55 +0000 (11:59 +0800)]
layerscape: add ddr-phy package

Add ddr-phy package for layerscape. Currently only LX2160ARDB
requires the package.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
[use AUTORELEASE]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agolayerscape: add FRWY-LS1046A board support
Yangbo Lu [Mon, 3 Aug 2020 04:52:22 +0000 (12:52 +0800)]
layerscape: add FRWY-LS1046A board support

The LS1046A Freeway board (FRWY) is a high-performance computing,
evaluation, and development platform that supports the QorIQ
LS1046A architecture processor capable of support more than 32,000
CoreMark performance. The FRWY-LS1046A board supports the QorIQ
LS1046A processor, onboard DDR4 memory, multiple Gigabit Ethernet,
USB3.0 and M2_Type_E interfaces for Wi-Fi.

The FRWY-LS1046A-TP includes the Coral Tensor Flow Processing Unit
that offloads AI/ML inferencing from the CPU to provide significant
boost for AI/ML applications. The FRWY-LS1046A-TP includes one M.2
TPU module and more modules can easily be added including USB
versions of the module to scale the AI/ML performance.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
[rebase, use AUTORELEASE, fix sorting, add dtb to firmware part]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agolayerscape: move rework-sdcard-images out of fsl-sdboot
Adrian Schmutzler [Fri, 12 Feb 2021 15:37:29 +0000 (16:37 +0100)]
layerscape: move rework-sdcard-images out of fsl-sdboot

Upcoming devices will not need the migration setup, so let's move
it out of the common definition.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoramips: use lzma-loader for Wevo devices
Seo Suchan [Wed, 17 Feb 2021 15:06:55 +0000 (00:06 +0900)]
ramips: use lzma-loader for Wevo devices

As kernel size increased it start to fail to load squishfs image,
using lzma-loader fixed it.
wevo_11acnas is almost same device as w2914ns-v2 except ram size,
so I expect same thing would've happen in that device too.

Signed-off-by: Seo Suchan <abnoeh@mail.com>
Reviewed-by: Sungbo Eo <mans0n@gorani.run>
3 years agoramips: mt7621: add TP-Link EAP235-Wall support
Sander Vanheule [Thu, 18 Feb 2021 19:52:53 +0000 (20:52 +0100)]
ramips: mt7621: add TP-Link EAP235-Wall support

The TP-Link EAP235-Wall is a wall-mounted, PoE-powered AC1200 access
point with four gigabit ethernet ports.

When connecting to the device's serial port, it is strongly advised to
use an isolated UART adapter. This prevents linking different power
domains created by the PoE power supply, which may damage your devices.

The device's U-Boot supports saving modified environments with
`saveenv`. However, there is no u-boot-env partition, and saving
modifications will cause the partition table to be overwritten. This is
not an issue for running OpenWrt, but will prevent the vendor FW from
functioning properly.

Device specifications:
* SoC: MT7621DAT
* RAM: 128MiB
* Flash: 16MiB SPI-NOR
* Wireless 2.4GHz (MT7603EN): b/g/n, 2x2
* Wireless 5GHz (MT7613BEN): a/n/ac, 2x2
* Ethernet: 4× GbE
  * Back side: ETH0, PoE PD port
  * Bottom side: ETH1, ETH2, ETH3
* Single white device LED
* LED button, reset button (available for failsafe)
* PoE pass-through on port ETH3 (enabled with GPIO)

Datasheet of the flash chip specifies a maximum frequency of 33MHz, but
that didn't work. 20MHz gives no errors with reading (flash dump) or
writing (sysupgrade).

Device mac addresses:
Stock firmware uses the same MAC address for ethernet (on device label)
and 2.4GHz wireless. The 5GHz wireless address is incremented by one.
This address is stored in the 'info' ('default-mac') partition at an
offset of 8 bytes.
From OEM ifconfig:
    eth     a4:2b:b0:...:88
    ra0     a4:2b:b0:...:88
    rai0    a4:2b:b0:...:89

Flashing instructions:
* Enable SSH in the web interface, and SSH into the target device
* run `cliclientd stopcs`, this should return "success"
* upload the factory image via the web interface

Debricking:
U-boot can be interrupted during boot, serial console is 57600 baud, 8n1
This allows installing a sysupgrade image, or fixing the device in
another way.
* Access serial header from the side of the board, close to ETH3,
  pin-out is (1:TX, 2:RX, 3:GND, 4:3.3V), with pin 1 closest to ETH3.
* Interrupt bootloader by holding '4' during boot, which drops the
  bootloader into its shell
* Change default 'serverip' and 'ipaddr' variables (optional)
* Download initramfs with `tftpboot`, and boot image with `bootm`
    # tftpboot 84000000 openwrt-initramfs.bin
    # bootm

Revert to stock:
Using the tplink-safeloader utility from the firmware-utils package,
TP-Link's firmware image can be converted to an OpenWrt-compatible
sysupgrade image:
  $ ./staging_dir/host/bin/tplink-safeloader -B EAP235-WALL-V1 \
      -z EAP235-WALLv1_XXX_up_signed.bin -o eap235-sysupgrade.bin

This can then be flashed using the OpenWrt sysupgrade interface. The
image will appear to be incompatible and must be force flashed, without
keeping the current configuration.

Known issues:
- DFS support is incomplete (known issue with MT7613)
- MT7613 radio may stop responding when idling, reboot required.
  This was an issue with the ddc75ff704 version of mt76, but appears to
  have improved/disappeared with bc3963764d.
  Error notice example:
  [ 7099.554067] mt7615e 0000:02:00.0: Message 73 (seq 1) timeout

Hardware was kindly provided for porting by Stijn Segers.

Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
3 years agoramips: remove factory image for TP-Link Archer C20 v1
Stijn Segers [Thu, 18 Feb 2021 23:53:26 +0000 (00:53 +0100)]
ramips: remove factory image for TP-Link Archer C20 v1

Similarly to the Archer C2 v1, the Archer C20 v1 will brick when one
tries to flash an OpenWrt factory image through the TP-Link web UI.
The wiki page contains an explicit warning about this [1].

Disable the factory image altogether since it serves no purpose.

[1] https://openwrt.org/toh/tp-link/tp-link_archer_c20_v1#installation

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
3 years agoath79: fix position of SPDX license identifier
Adrian Schmutzler [Fri, 19 Feb 2021 12:53:22 +0000 (13:53 +0100)]
ath79: fix position of SPDX license identifier

Strictly, the identifier needs to be in the line directly after the
shebang.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomediatek: fix SPDX license identifier on local DTS files
Adrian Schmutzler [Fri, 19 Feb 2021 12:47:45 +0000 (13:47 +0100)]
mediatek: fix SPDX license identifier on local DTS files

The SPDX license identifier must be in the first line of a file,
unless there is a shebang (then it's the second line).

Fix this for the local files, do not care about the upstream patches.

While at it, update the identifiers where necessary.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm63xx: update ethernet kernel panics fix
Álvaro Fernández Rojas [Fri, 19 Feb 2021 11:25:38 +0000 (12:25 +0100)]
bcm63xx: update ethernet kernel panics fix

Use new patch from Sieng Piaw Liew.

Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agocypress-firmware: fix PKG_SOURCE_URL
Álvaro Fernández Rojas [Fri, 19 Feb 2021 10:06:23 +0000 (11:06 +0100)]
cypress-firmware: fix PKG_SOURCE_URL

Download link has been moved.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agomediatek: move mt7623a-unielec-u7623*.dts* out of patch
Daniel Golle [Fri, 19 Feb 2021 09:16:19 +0000 (09:16 +0000)]
mediatek: move mt7623a-unielec-u7623*.dts* out of patch

Instead of adding those device tree sources using a patch, simply move
them to the newly created dts folder.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agobcm27xx: add diag LEDs
Álvaro Fernández Rojas [Fri, 19 Feb 2021 06:58:36 +0000 (07:58 +0100)]
bcm27xx: add diag LEDs

We can now use the power LED for diag in more devices thanks to the latest
patches from the RPi foundation.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm27xx: bcm2708: add missing RPi B DTS file
Álvaro Fernández Rojas [Fri, 19 Feb 2021 06:56:58 +0000 (07:56 +0100)]
bcm27xx: bcm2708: add missing RPi B DTS file

RPI 1B DTS has been splitted into 2 files:
 - bcm2708-rpi-b.dts: Newest (rev2) RPI 1B
 - bcm2708-rpi-b-rev1.dts: Old (rev1) RPI 1B

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agomediatek: more clean solution for out-of-tree DTS
Daniel Golle [Fri, 19 Feb 2021 01:13:26 +0000 (01:13 +0000)]
mediatek: more clean solution for out-of-tree DTS

Use approach suggested by Adrian Schmutzler instead of introducing
another device variable.
Also revert the unnecessary white-space changes accidentally introduced
by the previous commit.

Fixed: c067b1e79b ("mediatek: move out-of-tree DTS files to dedicated dts folder")
Suggested-by: Adrian Schmutzler <mail@adrianschmutzler.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agomediatek: move out-of-tree DTS files to dedicated dts folder
Daniel Golle [Thu, 18 Feb 2021 19:17:22 +0000 (19:17 +0000)]
mediatek: move out-of-tree DTS files to dedicated dts folder

Use dedicated dts folder like on ramips to store device tree source
files for boards not already supported in vanilla Linux.
Doing so instead of having them in files-* has several advantages:
 * we don't need to duplicate them for several kernel versions
 * changes to a device tree don't trigger a complete kernel rebuild
 * the files are more obvious to find

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agobcm27xx: add support for RPI CM4 and RPI 400
Álvaro Fernández Rojas [Thu, 18 Feb 2021 22:07:05 +0000 (23:07 +0100)]
bcm27xx: add support for RPI CM4 and RPI 400

Support added to bcm2709 (32 bits) and bcm2711 (64 bits).

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm27xx-userland: update to latest version
Álvaro Fernández Rojas [Thu, 18 Feb 2021 21:59:46 +0000 (22:59 +0100)]
bcm27xx-userland: update to latest version

Adds some fixes and removes upstreamed patch.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm27xx-gpu-fw: update to latest version
Álvaro Fernández Rojas [Thu, 18 Feb 2021 21:55:56 +0000 (22:55 +0100)]
bcm27xx-gpu-fw: update to latest version

This is needed to add support for CM4 and RPI 400.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm27xx: import latest patches from the RPi foundation
Álvaro Fernández Rojas [Thu, 18 Feb 2021 17:04:33 +0000 (18:04 +0100)]
bcm27xx: import latest patches from the RPi foundation

bcm2708: boot tested on RPi B+ v1.2
bcm2709: boot tested on RPi 3B v1.2 and RPi 4B v1.1 4G
bcm2710: boot tested on RPi 3B v1.2
bcm2711: boot tested on RPi 4B v1.1 4G

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agokernel: bump 5.4 to 5.4.99
John Audia [Wed, 17 Feb 2021 10:58:14 +0000 (05:58 -0500)]
kernel: bump 5.4 to 5.4.99

Ran update_kernel.sh in a fresh clone without any existing toolchains.
No manual changes needed.

Build system: x86_64
Build-tested: bcm27xx/bcm2711

Signed-off-by: John Audia <graysky@archlinux.us>
3 years agobuild: fix ABI version for PROVIDES symbols
Felix Fietkau [Thu, 18 Feb 2021 18:51:05 +0000 (19:51 +0100)]
build: fix ABI version for PROVIDES symbols

GetABISuffix does not work for intra-package ABI version of provided symbols,
since ABIV_$(provided) is not set.
Fix ABI version by using $(ABIV_$(1)) directly

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agokernel: lantiq: fix Module.symvers handling
Mathias Kresin [Sun, 27 Dec 2020 20:59:28 +0000 (21:59 +0100)]
kernel: lantiq: fix Module.symvers handling

If an external module uses exported symbols from another external
module, Kbuild needs to have full knowledge of all symbols to
avoid spitting out warnings about undefined symbols.

Use PKG_EXTMOD_SUBDIRS to point to the build directory which contains
the Module.symvers.

Pass KERNEL_MAKE_FLAGS to the external module build, to inject
KBUILD_EXTRA_SYMBOLS. KBUILD_EXTRA_SYMBOLS holds a space separated list
of Module.symvers, which list all exported symbols.

Signed-off-by: Mathias Kresin <dev@kresin.me>
3 years agolantiq: fritz7320: enable USB power supply
Mathias Kresin [Wed, 17 Feb 2021 22:37:54 +0000 (23:37 +0100)]
lantiq: fritz7320: enable USB power supply

The USB ports if a FRIZZ!Box 7320 do not supply power to connected
devices.

Add the GPIOs enabling USB power as regulator, to enable USB power
supply as soon as the USB driver is loaded.

Fixes FS#3624

Signed-off-by: Mathias Kresin <dev@kresin.me>
3 years agogeneric: don't lock when recursively deleting partitions
David Bauer [Wed, 17 Feb 2021 02:24:07 +0000 (03:24 +0100)]
generic: don't lock when recursively deleting partitions

When recursively deleting partitions, don't acquire the masters
partition lock twice. Otherwise the process endy up in a deadlocked
state.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agogeneric: add various kernel 5.10 config symbols
David Bauer [Wed, 17 Feb 2021 00:48:41 +0000 (01:48 +0100)]
generic: add various kernel 5.10 config symbols

These symbols were unset when configuring for ath79.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agomediatek: add support for Ubiquiti UniFi 6 LR
David Bauer [Thu, 11 Feb 2021 16:09:06 +0000 (17:09 +0100)]
mediatek: add support for Ubiquiti UniFi 6 LR

Hardware
--------

MediaTek MT7622
512MB DDR3 RAM
64M SPI-NOR Flash (Winbond W25Q512JV)
MediaTek MT7622 802.11bgn 4T4R WMAC
MediaTek MT7915 802.11ax 4T4R
Marvell AQR1112 100/1000/2500 NBase-T PHY
Holtek HT32F52241 LED controller
Reset Switch

UART
----

CPU UART0 at the pinout next to the Holtek MCU.

Pinout (first pin next to SoC / MCU)

0 3V3
1 RX
2 TX
3 GND

Settings are 115200 8N1.

Opening the case
----------------

Opening the case is not a nice task, as itis glued together. Insert a
flat knife between the front and back casing below the ethernet port.
Open up a gap this way and insert a flat scredriver, remove the knife.

Work your way around the casing by applying force to seperate the front
and back casing. This losens the glue and opens the plastic clips. Be
gentle, as these clips are very cheap and break quickly.

Installation
------------

1. Connect to the booted device at 192.168.1.20 using username/password
   "ubnt".

2. Transfer the OpenWrt sysupgrade image to the device using SCP.

3. Check the mtd partition number for bs / kernel0 / kernel1

   $ cat /proc/mtd

4. Set the bootselect flag to boot from kernel0

   $ dd if=/dev/zero bs=1 count=1 of=/dev/mtdblock6

5. Write the OpenWrt sysupgrade image to both kernel0 as well as kernel1

   $ dd if=openwrt.bin of=/dev/mtdblock8
   $ dd if=openwrt.bin of=/dev/mtdblock9

6. Reboot the device. It should boot into OpenWrt.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agomediatek: add Ubiquiti LED driver
David Bauer [Sat, 13 Feb 2021 23:23:51 +0000 (00:23 +0100)]
mediatek: add Ubiquiti LED driver

Add a driver for controlling the RGB LED via Ubiquitis own "LEDBAR" LED
controller based on the Holtek HT32F52241 MCU.

This driver is initially used by the Ubiquiti UniFi 6 LR, however
judging from FCC pictures the MCU is also found on the U6-Mesh as well
as the U6-Extender.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agobcm63xx: add kernel 5.10 support
Álvaro Fernández Rojas [Wed, 17 Feb 2021 18:07:23 +0000 (19:07 +0100)]
bcm63xx: add kernel 5.10 support

Runtime-tested on Comtrend AR-5387un.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agokernel: update kernel 5.10 to 5.10.16
Daniel Golle [Sun, 14 Feb 2021 20:17:31 +0000 (20:17 +0000)]
kernel: update kernel 5.10 to 5.10.16

Compile and runtime-tested on mediatek/mt7622

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agobuild: fix build with CONFIG_STRIP_KERNEL_EXPORTS
Felix Fietkau [Wed, 17 Feb 2021 12:49:14 +0000 (13:49 +0100)]
build: fix build with CONFIG_STRIP_KERNEL_EXPORTS

Only use symtab.h on the final kernel link

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoopenssl: bump to 1.1.1j
Eneas U de Queiroz [Wed, 17 Feb 2021 02:21:36 +0000 (23:21 -0300)]
openssl: bump to 1.1.1j

This fixes 4 security vulnerabilities/bugs:

- CVE-2021-2839 - SSLv2 vulnerability. Openssl 1.1.1 does not support
  SSLv2, but the affected functions still exist. Considered just a bug.

- CVE-2021-2840 - calls EVP_CipherUpdate, EVP_EncryptUpdate and
  EVP_DecryptUpdate may overflow the output length argument in some
  cases where the input length is close to the maximum permissable
  length for an integer on the platform. In such cases the return value
  from the function call will be 1 (indicating success), but the output
  length value will be negative.

- CVE-2021-2841 - The X509_issuer_and_serial_hash() function attempts to
  create a unique hash value based on the issuer and serial number data
  contained within an X509 certificate. However it was failing to
  correctly handle any errors that may occur while parsing the issuer
  field (which might occur if the issuer field is maliciously
  constructed). This may subsequently result in a NULL pointer deref and
  a crash leading to a potential denial of service attack.

- Fixed SRP_Calc_client_key so that it runs in constant time. This could
  be exploited in a side channel attack to recover the password.

The 3 CVEs above are currently awaiting analysis.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
3 years agogettext-full: update to 0.21
Rosen Penev [Sat, 25 Jul 2020 01:18:14 +0000 (18:18 -0700)]
gettext-full: update to 0.21

Add m4 patch to avoid conflict with tools/autoconf-archive.

Add build parallel as it seems to work now.

Remove a bunch of uClibc-ng hacks as it is not in the tree anymore.

Format security patch was fixed upstream.

Refreshed other patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years agokernel: 5.10: refresh patches
Adrian Schmutzler [Tue, 16 Feb 2021 22:39:32 +0000 (23:39 +0100)]
kernel: 5.10: refresh patches

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: 5.10: add missing partitions doc syntax commit
Adrian Schmutzler [Tue, 16 Feb 2021 22:31:40 +0000 (23:31 +0100)]
kernel: 5.10: add missing partitions doc syntax commit

This patch has been added to 5.4, but not been copied to 5.10:
7495acb55573 ("kernel: backport mtd commit converting partitions doc syntax")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: hack-5.10: make UDP tunneling user-selectable
Adrian Schmutzler [Tue, 16 Feb 2021 22:25:00 +0000 (23:25 +0100)]
kernel: hack-5.10: make UDP tunneling user-selectable

This applies another patch from 5.4 to 5.10 as well:
de09355f74c3 ("kernel/hack-5.4: make UDP tunneling user-selectable")

UDP tunneling support isn't user-selectable, but it's required by WireGuard
which is, for the time being, an out-of-tree module. We currently work around
this issue by selecting an unrelated module which depends on UDP tunnelling
(VXLAN). This is inconvenient, as it implies this unrelated module needs to be
built-in when doing a monolithic build.

Fix this inconvenience by making UDP tunneling user-selectable in the kernel
configuration.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: 5.4: fix .patch file extension
Adrian Schmutzler [Tue, 16 Feb 2021 22:20:18 +0000 (23:20 +0100)]
kernel: 5.4: fix .patch file extension

File extension was truncated for
pending-5.4/770-11-net-ethernet-mtk_eth_soc-avoid-rearming-interrupt-if.pa

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokernel: 5.10: fix busy wait loop in mediatek PPE code
Adrian Schmutzler [Tue, 16 Feb 2021 22:16:00 +0000 (23:16 +0100)]
kernel: 5.10: fix busy wait loop in mediatek PPE code

Reapply changes added to 5.4 but not copied to 5.10:
3da4acaa7bba ("kernel: fix busy wait loop in mediatek PPE code")

The intention is for the loop to timeout if the body does not succeed.
The current logic calls time_is_before_jiffies(timeout) which is false
until after the timeout, so the loop body never executes.

time_is_after_jiffies(timeout) will return true until timeout is less
than jiffies, which is the intended behavior here.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agogeneric: ar8216: update version switch for of_get_phy_mode fix
Adrian Schmutzler [Tue, 16 Feb 2021 21:56:06 +0000 (22:56 +0100)]
generic: ar8216: update version switch for of_get_phy_mode fix

Kernel has changed the of_get_phy_mode API in commit 0c65b2b90d13
("net: of_get_phy_mode: Change API to solve int/unit warnings").

This is already included in kernel 5.5, so fix the version switch
(though this will not actually matter for the versions we support).

Similar driver adjustments to account for the API change will
probably be necessary to various other local drivers.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agogeneric: ar8216: fix kernel 5.10 compile error
David Bauer [Tue, 16 Feb 2021 21:51:18 +0000 (22:51 +0100)]
generic: ar8216: fix kernel 5.10 compile error

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agokernel: add linux 5.10 support
Felix Fietkau [Sat, 24 Oct 2020 19:14:16 +0000 (21:14 +0200)]
kernel: add linux 5.10 support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobuild: make zstd initramfs selectable
Felix Fietkau [Fri, 23 Oct 2020 09:48:11 +0000 (11:48 +0200)]
build: make zstd initramfs selectable

fix typo in kernel initramfs zstd compression option

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobuild: build kernel image before building modules/packages
Felix Fietkau [Thu, 22 Oct 2020 08:29:34 +0000 (10:29 +0200)]
build: build kernel image before building modules/packages

This is needed for linux 5.10, where modules.builtin is generated from
vmlinux.o

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobuild: reorder more BuildPackages lines to deal with ABI_VERSION
Felix Fietkau [Mon, 15 Feb 2021 23:03:28 +0000 (00:03 +0100)]
build: reorder more BuildPackages lines to deal with ABI_VERSION

After the ABI version rework, packages need to be declared in the order of
their dependencies, so that dependent packages will use the right ABI version

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoath10k-ct: switch to 5.10
Álvaro Fernández Rojas [Mon, 15 Feb 2021 12:52:23 +0000 (13:52 +0100)]
ath10k-ct: switch to 5.10

Let's switch to 5.10 now that mac80211 has been updated.
Runtime-tested on ipq806x (Netgear R7800).

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm4908: add bcm_sf2 fixes for the 5th GPHY
Rafał Miłecki [Mon, 15 Feb 2021 23:21:28 +0000 (00:21 +0100)]
bcm4908: add bcm_sf2 fixes for the 5th GPHY

This allows using the last integrated PHY (and so e.g. WAN port on the
ASUS GT-AC5300).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobuild: IS_TTY is now set according to GNU Make's MAKE_TERMOUT
R. Diez [Wed, 10 Jun 2020 09:33:26 +0000 (11:33 +0200)]
build: IS_TTY is now set according to GNU Make's MAKE_TERMOUT

The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Fixes: FS#2086
The logic for IS_TTY was broken, because it was testing stdin
instead of stdout.
MAKE_TERMOUT was introduced in GNU Make version 4.1 (05 Oct 2014),
so it should be available everywhere nowadays.

Signed-off-by: R. Diez <rdiezmail-openwrt@yahoo.com>
3 years agobuild/prereq: require make 4.1 or later
Paul Spooren [Sun, 13 Dec 2020 06:57:21 +0000 (20:57 -1000)]
build/prereq: require make 4.1 or later

FS#2086 "IS_TTY in the makefile is broken" reports flawed detection of
stdout piping to a file. The issue describes how e.g. terminal color
codes and up in log files if running make like `make > log.txt`.

The proposed solution uses the make variable "MAKE_TERMOUT", which was
introduced in make 4.1. All major distributions seem to updated to 4.1
or later, so this ideally dosen't break anything.

Signed-off-by: Paul Spooren <mail@aparcar.org>
3 years agoutil-linux: move libuuid BuildPackage line further up to fix ABI versioning
Felix Fietkau [Mon, 15 Feb 2021 22:59:18 +0000 (23:59 +0100)]
util-linux: move libuuid BuildPackage line further up to fix ABI versioning

After the ABI version rework, packages need to be declared in the order of
their dependencies, so that dependent packages will use the right ABI version

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobuild: fix getting ABI version for binary packages from the same source package
Felix Fietkau [Mon, 15 Feb 2021 22:09:53 +0000 (23:09 +0100)]
build: fix getting ABI version for binary packages from the same source package

We can't rely on the .version file being created yet, so use package variables
to get it

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agomac80211: Update to version 5.10.16-1
Hauke Mehrtens [Sun, 14 Feb 2021 18:06:45 +0000 (19:06 +0100)]
mac80211: Update to version 5.10.16-1

The removed patches were applied upstream.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agomac80211: Refresh patches again
Hauke Mehrtens [Mon, 15 Feb 2021 21:23:17 +0000 (22:23 +0100)]
mac80211: Refresh patches again

A wrong quilt configuration was used last time.

Fixes: ed1e234d87fc ("mac80211: refresh patches")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agobcm4908: fix GPIOs support by limiting them to 64
Rafał Miłecki [Mon, 15 Feb 2021 21:18:01 +0000 (22:18 +0100)]
bcm4908: fix GPIOs support by limiting them to 64

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobcm4908: use DTS patches sent upstream
Rafał Miłecki [Mon, 15 Feb 2021 20:51:37 +0000 (21:51 +0100)]
bcm4908: use DTS patches sent upstream

There are 2 new patches:
1. Netgear R8000P switch ports
2. Netgear R8000P LEDs

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobuild: filter out own packages on package version check
Felix Fietkau [Mon, 15 Feb 2021 20:09:49 +0000 (21:09 +0100)]
build: filter out own packages on package version check

This was accidentally dropped in 27a4a71c2408
("metadata: handle ABI version rebuild tracking for transient dependencies")

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agotools/fakeroot: fix build regression on macOS
Felix Fietkau [Mon, 15 Feb 2021 18:58:54 +0000 (19:58 +0100)]
tools/fakeroot: fix build regression on macOS

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agolibubox: update to the latest version, set ABI_VERSION dynamically
Felix Fietkau [Mon, 15 Feb 2021 18:18:10 +0000 (19:18 +0100)]
libubox: update to the latest version, set ABI_VERSION dynamically

2537be018587 cmake: add a possibility to set library version

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobuild: only overwrite ABI version for provided packages when base version changed
Felix Fietkau [Mon, 15 Feb 2021 17:53:42 +0000 (18:53 +0100)]
build: only overwrite ABI version for provided packages when base version changed

Should avoid some spurious rebuilds

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoMostly revert "build: add support for fixing up library soname"
Felix Fietkau [Mon, 15 Feb 2021 16:49:46 +0000 (17:49 +0100)]
Mostly revert "build: add support for fixing up library soname"

This reverts commit b12288fa69b171f7c9405518c9bed3581a06f7ce.
The patchelf approach is too fragile, and the only users of this have been
converted to make patching unnecessary
Leave the abi_version_str variable in place in rules.mk

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agowolfssl: use libtool patch for PKG_ABI_VERSION
Felix Fietkau [Mon, 15 Feb 2021 17:46:59 +0000 (18:46 +0100)]
wolfssl: use libtool patch for PKG_ABI_VERSION

Makes it unnecessary to patch .so files after build

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobuild: add support for patching libtool to include ABI version in soname
Felix Fietkau [Mon, 15 Feb 2021 17:46:11 +0000 (18:46 +0100)]
build: add support for patching libtool to include ABI version in soname

Use the version from PKG_ABI_VERSION

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agolibubox: use build system variable to specify ABI version
Felix Fietkau [Mon, 15 Feb 2021 17:07:51 +0000 (18:07 +0100)]
libubox: use build system variable to specify ABI version

This removes the need to patch it afterwards

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agobcm4908: add USB packages to the DEFAULT_PACKAGES
Rafał Miłecki [Mon, 15 Feb 2021 15:52:29 +0000 (16:52 +0100)]
bcm4908: add USB packages to the DEFAULT_PACKAGES

All known 41 BCM4908 devices have USB ports so it makes sense to include
those packages by default.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobcm4908: fix backport of PMB driver
Rafał Miłecki [Mon, 15 Feb 2021 15:51:38 +0000 (16:51 +0100)]
bcm4908: fix backport of PMB driver

Missing Makefile change was preventing kernel from actually compiling
the driver.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agokernel: drop ofpart patch dropped from upstream mtd tree
Rafał Miłecki [Mon, 15 Feb 2021 14:05:52 +0000 (15:05 +0100)]
kernel: drop ofpart patch dropped from upstream mtd tree

It stopped ofpart_parser_init() from being called

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agokernel: backport "ofpart" mtd parser upstream quirks support
Rafał Miłecki [Mon, 15 Feb 2021 10:47:17 +0000 (11:47 +0100)]
kernel: backport "ofpart" mtd parser upstream quirks support

This adds quirks support to the "ofpart" parser. It's required to
support fixed partitions that require some extra logic.

Right now only BCM4908 binding is supported (BCM4908 requires detecting
currently used "firmware" partition).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agokernel: fix busy wait loop in mediatek PPE code
Ilya Lipnitskiy [Mon, 8 Feb 2021 04:17:12 +0000 (20:17 -0800)]
kernel: fix busy wait loop in mediatek PPE code

The intention is for the loop to timeout if the body does not succeed.
The current logic calls time_is_before_jiffies(timeout) which is false
until after the timeout, so the loop body never executes.

time_is_after_jiffies(timeout) will return true until timeout is less
than jiffies, which is the intended behavior here.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agowolfssl: use dynamic ABI_VERSION depending on the configuration and package version
Felix Fietkau [Fri, 12 Feb 2021 10:36:47 +0000 (11:36 +0100)]
wolfssl: use dynamic ABI_VERSION depending on the configuration and package version

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agolibubox: use PKG_ABI_VERSION
Felix Fietkau [Fri, 12 Feb 2021 09:10:41 +0000 (10:10 +0100)]
libubox: use PKG_ABI_VERSION

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agofakeroot: fix to work with glibc 2.33
Ilya Lipnitskiy [Sun, 14 Feb 2021 04:41:03 +0000 (20:41 -0800)]
fakeroot: fix to work with glibc 2.33

The following commit removed _STAT_VER definitions from glibc:
https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=8ed005daf0ab03e142500324a34087ce179ae78e

That subsequently broke fakeroot:
https://bugs.archlinux.org/task/69572
https://bugzilla.redhat.com/show_bug.cgi?id=1889862#c13
https://forum.openwrt.org/t/unable-to-build-toolchain-fakeroot-fails-perhaps-others-after-it/87966

Make the patch based on Jan Pazdziora's suggestion from here:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/SMQ3RYXEYTVZH6PLQMKNB3NM4XLPMNZO/

Add wrappers for newly exported symbols in glibc.

Apply patch from Debian to fix warnings in fts_read and fts_children:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=676428
https://sources.debian.org/patches/fakeroot/1.25.3-1.1/eglibc-fts-without-LFS/

Fix __xmknod{,at} dev pointer argument. Switch default to assume * and
not the absence of *. On glibc 2.33+, there is no definition for these
functions in header files, so the compile test doesn't work. But, we
can default to using the pointer (as is the case with newer glibc), and
use the header file on older platforms to fail the test and use no pointer.

Tested on my x86_64 Arch Linux machine, fakeroot unit tests pass.
Also tested by building various .ipks and examining the tar contents, to
ensure that the owner uid/gid was 0/0.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agotools/patchelf: bump to use latest master
Ilya Lipnitskiy [Mon, 15 Feb 2021 00:46:23 +0000 (16:46 -0800)]
tools/patchelf: bump to use latest master

Recent ABI_VERSION commits make use of patchelf. It was discovered that
with patchelf 0.10(and even 0.12) various big endian targets fail to
link against libubox SO that was processed through patchelf. Using
latest master patchelf fixes those link errors.

Potential commits affecting big-endian processing
https://github.com/NixOS/patchelf/commit/884eccc4f061a3dbdbe63a4c73f1cc9bbf77fa7d
https://github.com/NixOS/patchelf/commit/d148bae6c1291b93d660a156a1756670069cd8cc

Recent builds with failures:
http://buildbot.openwrt.org/master/images/builders/lantiq%2Fxrx200/builds/682
http://buildbot.openwrt.org/master/images/builders/ath79%2Fmikrotik/builds/449

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 years agoodhcpd: setup dhcpv4 server automagically
Daniel Golle [Sun, 14 Feb 2021 22:39:24 +0000 (22:39 +0000)]
odhcpd: setup dhcpv4 server automagically

Automatically setup dhcpv4 server just like it's done for dhcpv6.
To select whether odhcpd or dnsmasq are serving DHCPv4 requests there
still is the 'maindhcp' option. To make things less confusing, make
sure things really work out-of-the-box in case dnsmasq is not even
installed at the time the uci-defaults script is being run.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>