openwrt/staging/rmilecki.git
2 years agobase-files: upgrade: fix efi partitions size calculation
Javier Marcet [Sat, 4 Apr 2020 15:52:29 +0000 (17:52 +0200)]
base-files: upgrade: fix efi partitions size calculation

We were missing (not using) the last sector of each partition,
compared with the output of gparted.

Signed-off-by: Javier Marcet <javier@marcet.info>
[moved the dot]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2 years agotoolchain: musl: disable crypt size hack by default
Petr Štetiar [Tue, 14 Dec 2021 11:12:18 +0000 (12:12 +0100)]
toolchain: musl: disable crypt size hack by default

Enable this option and thus re-include crypt() support for the SHA256,
SHA512 and Blowfish ciphers on all devices. According to commit
9365745f8e7b ("musl: add a hack to remove unused crypt() algorithms,
saves ~14k after lzma") it should add about ~14k to the resulting image,
which seems to be a reasonable size increase for consistent crypt()
support.

Decided to not remove this hack completely as it might be still useful
for people trying to fit custom images onto smaller devices and the
patch is rather simple so we can afford to keep it for now.

References: https://github.com/openwrt/openwrt/pull/1331
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2 years agorockchip: remove Kernel 5.4
David Bauer [Tue, 21 Dec 2021 20:54:32 +0000 (21:54 +0100)]
rockchip: remove Kernel 5.4

As v5.10 is the default kernel version now, the files for v5.4 can be
dropped.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agompc85xx: remove kernel 5.4
David Bauer [Tue, 21 Dec 2021 20:56:04 +0000 (21:56 +0100)]
mpc85xx: remove kernel 5.4

As v5.10 is the default kernel version now, the files for v5.4 can be
dropped.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agoath79: remove kernel 5.4
David Bauer [Tue, 21 Dec 2021 21:00:34 +0000 (22:00 +0100)]
ath79: remove kernel 5.4

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agohostapd: add missing function declaration
David Bauer [Mon, 20 Dec 2021 16:29:49 +0000 (17:29 +0100)]
hostapd: add missing function declaration

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agoath79: add missing UBNT_REVISION
Nick Hainke [Sun, 26 Dec 2021 10:59:44 +0000 (11:59 +0100)]
ath79: add missing UBNT_REVISION

The UBNT_REVISION was already added for the ubnt-xw target because:

  U-boot bootloader on M-XW devices expects factory image revision
  version in specific format. On airOS v6.1.7 with `U-Boot 1.1.4-s1039
  (May 24 2017 - 15:58:18)` bootloader checks if the revision major(?)
  number is actually a number, but in currently generated images there's
  OpenWrt text and so the check fails

  ...

  By placing arbitrary correct number first in major version, we make the
  bootloader happy and we can flash factory images over TFTP again.

  commit d42a7c469909 ("ath79: ubnt-m-xw: Fix factory image flashing using TFTP recovery method")

Fixes errors in the form of (tftp flashing):
  sent DATA <block=8577, 412 bytes>
  received ERROR <code=2, msg=Firmware check failed>
  Error code 2: Firmware check failed

The missing UBNT_REVISION was not noticed before, since the
UBNT_REVISION field for the ubnt-xm target was also set to:
  "42.OpenWrt-..."
Probably, UBNT_REVISION for the ubnt-xm target was set by the ubnt-xw
and was never overridden somewhere else. However, it is missing and
should be part of the ubnt-xm device.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2 years agosunxi: Use rtl8723bu-firmware instead of rtl8723bs-firmware
Hauke Mehrtens [Sun, 26 Dec 2021 23:57:19 +0000 (00:57 +0100)]
sunxi: Use rtl8723bu-firmware instead of rtl8723bs-firmware

The firmware for the rtl8723bs chip is now included in the
rtl8723bu-firmware package.

Fixes: 397dfe4a97e6 ("linux-firmware: Update to version 20121216")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agotcpdump: libpcap: Remove http://www.us.tcpdump.org mirror
Hauke Mehrtens [Sun, 26 Dec 2021 22:38:52 +0000 (23:38 +0100)]
tcpdump: libpcap: Remove www.us.tcpdump.org mirror

The http://www.us.tcpdump.org mirror will go offline soon, only use the
normal download URL.

Reported-by: Denis Ovsienko <denis@ovsienko.info>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agolinux-firmware: Update to version 20121216
Hauke Mehrtens [Sat, 18 Dec 2021 11:01:27 +0000 (12:01 +0100)]
linux-firmware: Update to version 20121216

The rtl8723bs firmware was removed and a symlink to the rtl8723bu
firmware was created like it is done in upstream linux-firmware.

The following OpenWrt packages are changing:
* amdgpu-firmware: Multiple updates and new files
* ar3k-firmware: Multiple updates and new files
* ath10k-firmware-qca6174: Updated ath10k/QCA6174/hw3.0/board-2.bin
* bnx2x-firmware: Added bnx2x-e1-7.13.21.0.fw, bnx2x-e1h-7.13.21.0.fw and bnx2x-e2-7.13.21.0.fw
* iwlwifi-firmware-iwl8260c: Updated iwlwifi-8000C-36.ucode
* iwlwifi-firmware-iwl8265: Updated iwlwifi-8265-36.ucode
* iwlwifi-firmware-iwl9000: Updated iwlwifi-9000-pu-b0-jf-b0-46.ucode
* iwlwifi-firmware-iwl9260: Updated iwlwifi-9260-th-b0-jf-b0-46.ucode
* r8169-firmware: Updated rtl8153c-1.fw
* rtl8723bs-firmware: removed
* rtl8723bu-firmware: Added rtlwifi/rtl8723bs_nic.bin symlink
* rtl8822ce-firmware: Updated rtw8822c_fw.bin

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agomediatek: mt7622: unifi6lr: properly register Ethernet PHY
Daniel Golle [Tue, 2 Nov 2021 04:03:15 +0000 (04:03 +0000)]
mediatek: mt7622: unifi6lr: properly register Ethernet PHY

This change enables proper Ethernet link status and speed reporting on
the Ubiquiti UniFi 6 LR access point:

 mtk_soc_eth 1b100000.ethernet eth0: PHY [mdio-bus:08] driver [Aquantia AQR112C] (irq=POLL)
 mtk_soc_eth 1b100000.ethernet eth0: configuring for phy/2500base-x link mode
 mtk_soc_eth 1b100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomediatek: mt7622: enable driver for Aquantia PHYs
Daniel Golle [Tue, 2 Nov 2021 00:57:36 +0000 (00:57 +0000)]
mediatek: mt7622: enable driver for Aquantia PHYs

Enable Aquantia Ethernet PHY driver as there is an AQR112C 2500Base-T
PHY in the Ubiquiti UniFi 6 LR access point.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomediatek: add support for Clause 45 MDIO access
Daniel Golle [Tue, 2 Nov 2021 04:02:49 +0000 (04:02 +0000)]
mediatek: add support for Clause 45 MDIO access

Add support for Clause 45 MDIO PHY register read and write operations
to mtk_eth_soc driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: generic: refresh patch
Daniel Golle [Sun, 26 Dec 2021 18:45:57 +0000 (18:45 +0000)]
kernel: generic: refresh patch

722-net-phy-aquantia-Add-AQR113-driver-support.patch needs refresh.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: mac80211: refresh patchset
Nick Hainke [Mon, 20 Dec 2021 20:55:21 +0000 (21:55 +0100)]
kernel: mac80211: refresh patchset

Refreshed:
- 311-mac80211-use-coarse-boottime-for-airtime-fairness-co.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
2 years agokernel: ath10k: provide a build variant for small RAM devices
Nick Hainke [Mon, 20 Dec 2021 20:48:38 +0000 (21:48 +0100)]
kernel: ath10k: provide a build variant for small RAM devices

Based on: 1ac627024de9 ("kernel: ath10k-ct: provide a build variant for
small RAM devices")

Like described in the ath10k-ct-smallbuffers version, oom-killer gets
triggered frequently by devices with small RAM.

That change is necessary for many community mesh networks which use
ath10k based devices with too little RAM. The -ct driver has been
proven unstable if used with 11s meshing and only wave2 chipsets are
supporting 11s. Freifunk Berlin is nowadays assembling its
firmware-based completely of vanilla OpenWRT with some package additions
which are made through the imagebuilder. Therefore we cannot take the
approach other freifunk communities have taken to maintain that patch
downstream [1]. Other communities consider these devices as broken and
that change would pretty much give those devices a second life [2].
[1] - https://git.freifunk-franken.de/mirror/openwrt/commit/450b306e540bc0f2c8a8841bbe4d9612f2b8cdea
[2] - https://github.com/freifunk-gluon/gluon/issues/1988#issuecomment-619532909

Signed-off-by: Simon Polack <spolack+git@mailbox.org>
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 years agobcm4908: include ATF in bootfs images
Rafał Miłecki [Fri, 24 Dec 2021 22:07:39 +0000 (23:07 +0100)]
bcm4908: include ATF in bootfs images

It's required for proper booting.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agoarm-trusted-firmware-bcm63xx: add ATF for Broadcom devices
Rafał Miłecki [Fri, 17 Dec 2021 10:40:54 +0000 (11:40 +0100)]
arm-trusted-firmware-bcm63xx: add ATF for Broadcom devices

Right now it includes bcm4908 variant only that is required by BCM4908
family devices with U-Boot.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agomvebu: puzzle: wan LED and fix default network
Daniel Golle [Thu, 23 Dec 2021 19:01:48 +0000 (19:01 +0000)]
mvebu: puzzle: wan LED and fix default network

Fix default network configuration of the Puzzle-M902 so all LAN ports
are included in the LAN bridge.
Setup network LED to indicate WAN port link status, like vendor
firmware does as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomvebu: enable Aquantia phy driver for Puzzle devices
Daniel Golle [Thu, 23 Dec 2021 18:10:05 +0000 (18:10 +0000)]
mvebu: enable Aquantia phy driver for Puzzle devices

Fixes Ethernet link status on all ports and makes 2.5G ports usable
in 2.5G and 1G full-duplex mode.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: add id for AQR112 Ethernet phy variants
Daniel Golle [Thu, 23 Dec 2021 17:36:48 +0000 (17:36 +0000)]
kernel: add id for AQR112 Ethernet phy variants

Add ids for AQR112R and AQR112C 2.5G Ethernet PHYs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: import patch enabling AQR113 PHY
Daniel Golle [Thu, 23 Dec 2021 17:36:01 +0000 (17:36 +0000)]
kernel: import patch enabling AQR113 PHY

Add PHY ID for the Aquantia AQR113 PHY.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agokernel: import patch enabling AQR112 and AQR412 PHY
Daniel Golle [Tue, 2 Nov 2021 00:55:40 +0000 (00:55 +0000)]
kernel: import patch enabling AQR112 and AQR412 PHY

Copy and refresh patch enabling AQR112 and AQR412 Ethernet PHY from
layerscape (5.4) target to generic (5.10) as AQR112 can also be found
on other targets as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agohostapd: only attempt to set qos map if supported by the driver
Felix Fietkau [Thu, 23 Dec 2021 18:18:33 +0000 (19:18 +0100)]
hostapd: only attempt to set qos map if supported by the driver

Fixes issues with brcmfmac

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agomvebu: remove accidentally added file
Daniel Golle [Tue, 21 Dec 2021 23:39:28 +0000 (23:39 +0000)]
mvebu: remove accidentally added file

Remove accidentally added file (which was a left-over of a by-now
replaced driver)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agohostapd: keep HE capability after channel switch in AP+STA/Mesh
Arnout Vandecappelle (Essensium/Mind) [Tue, 21 Dec 2021 17:41:33 +0000 (18:41 +0100)]
hostapd: keep HE capability after channel switch in AP+STA/Mesh

The auto-ht option already kept HT and VHT support, but wasn't updated
to support HE (11ax).

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2 years agomvebu: puzzle-m901: add LEDs, fan and reset button
Daniel Golle [Tue, 21 Dec 2021 21:50:32 +0000 (21:50 +0000)]
mvebu: puzzle-m901: add LEDs, fan and reset button

Wire up MCU driver for LEDs, fan and temperature sensor, and add
GPIO reset button just like on the M902 also on the Puzzle M901.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomvebu: puzzle-m902: add GPIO reset button
Daniel Golle [Tue, 21 Dec 2021 21:49:25 +0000 (21:49 +0000)]
mvebu: puzzle-m902: add GPIO reset button

Add reset button to device tree so it has the function expected from
usual OpenWrt devices.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agomvebu: puzzle-mcu: improve led driver
Daniel Golle [Tue, 21 Dec 2021 21:44:37 +0000 (21:44 +0000)]
mvebu: puzzle-mcu: improve led driver

Set blinking mode using scheduled work instead of blocking which may
result in deadlocks.
Add dynamic kprintf debugging hexdumps of all MCU rx and tx.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoath79: switch to Kernel 5.10
Paul Spooren [Thu, 30 Sep 2021 05:15:42 +0000 (19:15 -1000)]
ath79: switch to Kernel 5.10

Kernel 5.10 is used by many people since quite a while. With other
targets already moved to 5.10, let ath79 follow suit.

Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [ath79/tl-wdr3600; ath79/tl-wdr4300]
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl> [ath79/tl-wdr4300]
Signed-off-by: Paul Spooren <mail@aparcar.org>
Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agoqoriq: add support for WatchGuard Firebox M300
Stijn Tintel [Fri, 6 Aug 2021 23:41:11 +0000 (02:41 +0300)]
qoriq: add support for WatchGuard Firebox M300

This device is based on NXP's QorIQ T2081QDS board, with a quad-core
dual-threaded 1.5 GHz ppc64 CPU and 4GB ECC RAM. The board has 5
ethernet interfaces, of which 3 are connected to the ethernet ports on
the front panel. The other 2 are internally connected to a Marvell
88E6171 switch; the other 5 ports of this switch are also connected to
the ethernet ports on the front panel.

Installation: write the sdcard image to an SD card. Stock U-Boot will
not boot, wait for it to fail then run these commands:

setenv OpenWrt_fdt image-watchguard-firebox-m300.dtb
setenv OpenWrt_kernel watchguard_firebox-m300-kernel.bin
setenv wgBootSysA 'setenv bootargs root=/dev/mmcblk0p2 rw rootdelay=2 console=$consoledev,$baudrate fsl_dpaa_fman.fsl_fm_max_frm=1530; ext2load mmc 0:1 $fdtaddr $OpenWrt_fdt; ext2load mmc 0:1 $loadaddr $OpenWrt_kernel; bootm $loadaddr - $fdtaddr'
saveenv
reset

The default U-Boot boot entry will now boot OpenWrt from the SD card.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agoqoriq: new target
Stijn Tintel [Fri, 6 Aug 2021 21:35:53 +0000 (00:35 +0300)]
qoriq: new target

Add a new target named "qoriq", that will support boards using PowerPC
processors from NXP's QorIQ brand.

This doesn't actually add support for any board yet, so that
installation instructions can go in the commit message of the commit
that adds actual support for a board.

Using CONFIG_E6500_CPU here due to the kernel using -mcpu=powerpc64
rather than -mcpu=e5500 when selecting CONFIG_E5500_CPU. The only
difference between e5500 and e6500 is AltiVec support, and the kernel
checks for it at runtime. Musl will only check at runtime if AltiVec
support is disabled at compile-time, so we need to use e5500 in CPU_TYPE
to avoid SIGILL.

Math emulation (CONFIG_MATH_EMULATION_HW_UNIMPLEMENTED) is required, as
neither e5500 nor e6500 implement fsqrt nor fsqrts, and musl hardcodes
sqrt and sqrtf to use these ASM instructions on PowerPC64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Reviewed-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agolibunwind: add ppc64 support
Stijn Tintel [Sun, 3 Oct 2021 14:19:20 +0000 (17:19 +0300)]
libunwind: add ppc64 support

Backport an upstream patch to make libunwind build on ppc64, and add
powerpc64 to the dependencies.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agonettle: disable assembler on ppc64
Stijn Tintel [Sun, 15 Aug 2021 16:00:02 +0000 (19:00 +0300)]
nettle: disable assembler on ppc64

As of version 3.7, Nettle added PowerPC64 assembly for several
algorithms. Unfortunately, they cause build to fail due to ABI mismatch:

gcm-hash.o: ABI version 1 is not compatible with ABI version 2 output

Disable assembler when ppc64 and musl are used for now.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agoopenssl: add ppc64 support
Stijn Tintel [Fri, 30 Jul 2021 17:21:50 +0000 (20:21 +0300)]
openssl: add ppc64 support

Backport an upstream patch that adds support for ELFv2 ABI on big endian
ppc64. As musl only supports ELFv2 ABI on ppc64 regardless of
endianness, this is required to be able to build OpenSSL for ppc64be.

Modify our targets patch to add linux-powerpc64-openwrt, which will use
the linux64v2 perlasm scheme. This will probably break the combination
ppc64 with glibc, but as we really only want to support musl, this
shouldn't be a problem.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agotoolchain/gcc: use ELFv2 ABI on ppc64 with musl
Stijn Tintel [Tue, 22 Sep 2020 11:02:58 +0000 (14:02 +0300)]
toolchain/gcc: use ELFv2 ABI on ppc64 with musl

At configuration time, gcc assumes that ppc64be targets use the ELFv1
ABI, and ppc64le targets use the ELFv2 ABI. However, musl libc does not
support the ELFv1 ABI on ppc64 at all, regardless of the endianness.

Therefore, when building for a ppc64 arch and with musl libc, instruct
gcc to use the ELFv2 ABI.

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93157 for more info.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Reviewed-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agobuild: add e5500 CPU_TYPE
Stijn Tintel [Tue, 22 Sep 2020 10:37:56 +0000 (13:37 +0300)]
build: add e5500 CPU_TYPE

This CPU type is compatible with NXP's PPC based QorIQ processors, and
will be used by the upcoming new qoriq target.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Reviewed-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agomvebu: puzzle-m902: add driver for MCU driving LEDs, fan and buzzer
Daniel Golle [Tue, 21 Dec 2021 16:27:16 +0000 (16:27 +0000)]
mvebu: puzzle-m902: add driver for MCU driving LEDs, fan and buzzer

Backport MFD driver for communicating with the on-board MCU found on
IEI World Puzzle appliances.
Improve the driver to support multiple LEDs, apply a default state and
let MCU take care of blinking if timing is within supported range.
Wire up LEDs and fan for Puzzle M902 in device tree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agobpf: add -mcpu=v3 to support 32-bit alu ops
Felix Fietkau [Mon, 20 Dec 2021 23:28:54 +0000 (00:28 +0100)]
bpf: add -mcpu=v3 to support 32-bit alu ops

Fixes JIT on 32-bit ARM and improves performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agomt76: fix Makefile dependencies for mt7921
Lorenzo Bianconi [Mon, 20 Dec 2021 10:53:29 +0000 (11:53 +0100)]
mt76: fix Makefile dependencies for mt7921

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
2 years agokernel: drop obsolete kmod-video-core dependencies
Stijn Tintel [Wed, 17 Mar 2021 00:14:09 +0000 (02:14 +0200)]
kernel: drop obsolete kmod-video-core dependencies

These dependencies do not exist in any of the supported kernel versions.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agokernel: drop obsolete symbols from kmod-video-core
Stijn Tintel [Wed, 17 Mar 2021 00:06:43 +0000 (02:06 +0200)]
kernel: drop obsolete symbols from kmod-video-core

These symbols don't exist in any of the supported kernel versions.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 years agoprocd: update to git HEAD
Daniel Golle [Mon, 20 Dec 2021 02:21:23 +0000 (02:21 +0000)]
procd: update to git HEAD

 eb522fc uxc: consider uvol and etc location for configurations
 16a6ee9 uxc: integrate console into uxc
 129d050 remove ujail-console

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agohostapd: make OpenWrt statistics per-BSS
David Bauer [Sat, 18 Dec 2021 16:24:09 +0000 (17:24 +0100)]
hostapd: make OpenWrt statistics per-BSS

WNM and RRM statistics were incorrectly per-PHY, leading to shared
statistic counters per BSS.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agohostapd: provide BSS-transition-queries to ubus subscribers
David Bauer [Sat, 30 Oct 2021 22:11:51 +0000 (00:11 +0200)]
hostapd: provide BSS-transition-queries to ubus subscribers

Provide incoming BSS transition queries to ubus subscribers.

This allows external steering daemons to provide clients with
an optimal list of transition candidates.

This commit has no functional state in case no ubus subscriber is
present or it does not handle this ubus message.

To prevent hostapd from sending out a generic response by itself, a
subscribing daemon has to return a non-zero response code to hostapd.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agohostapd: WNM: allow specifying dialog-token
David Bauer [Mon, 27 Sep 2021 13:53:25 +0000 (15:53 +0200)]
hostapd: WNM: allow specifying dialog-token

Backport a patch to allow extending the ubus BSS-transition method
for specifying individual dialog tokens for BSS transition
management requests.

This is required for handling BSS transition queries in the future.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agoramips: work around duplicate MAC address on U6 Lite
David Bauer [Fri, 17 Dec 2021 23:33:57 +0000 (00:33 +0100)]
ramips: work around duplicate MAC address on U6 Lite

The UniFi 6 Lite has two MAC addresses for the 2.4 and 5GHz radio in
it's EEPROM partition.

On my unit these are

F4 92 BF A0 BB 6F
F6 92 BF A0 BB 6F

The problem with these is that mac80211 increases the first octet by
2, which leads to conflicting MAC addresses between radios.

Work around this problem for now by increasing the last octet by 1 on
the 5 GHz radio.

Ubiquiti increases the last octet by 2 for each subsequent VAP created
per radio. Ideally we should do the same, however this functionality is
currently lacking from mac80211.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agomediatek: mt7623: bpi-r2: add ethernet alias to device tree
Daniel Golle [Sat, 18 Dec 2021 01:45:44 +0000 (01:45 +0000)]
mediatek: mt7623: bpi-r2: add ethernet alias to device tree

Add ethernet0 alias in device tree to make U-Boot inherit the Ethernet
mac address (set via environment variable 'ethaddr') down to Linux.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 years agoodhcp6c: update to latest git HEAD
Hans Dedecker [Fri, 17 Dec 2021 20:04:54 +0000 (21:04 +0100)]
odhcp6c: update to latest git HEAD

39b584b Revert "dhcpv6: add a minimum valid lifetime for IA_PD updates"
c9578e1 dhcpv6: add support for null IA_PD valid lifetime
ca43ea3 dhcpv6: add a minimum valid lifetime for IA_PD updates

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2 years agonetifd: update to latest git HEAD
Hans Dedecker [Fri, 17 Dec 2021 19:54:44 +0000 (20:54 +0100)]
netifd: update to latest git HEAD

5ca5e0b netifd: allow disabling rule/rule6 config sections
8875960 interface-ip: add support for IPv6 prefix invalidation
e589c05 interface-ip: use metric when looking for a route
b54ffde main: fix hotplug script usage message

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2 years agokernel: 5.10: consolidate mac80211 crypto options
Sergey Ryazanov [Thu, 16 Dec 2021 22:23:08 +0000 (01:23 +0300)]
kernel: 5.10: consolidate mac80211 crypto options

Each of
- CRYPTO_AEAD2
- CRYPTO_AEAD
- CRYPTO_GF128MUL
- CRYPTO_GHASH
- CRYPTO_HASH2
- CRYPTO_HASH
- CRYPTO_MANAGER2
- CRYPTO_MANAGER
- CRYPTO_NULL2

either directly required for mac80211 crypto support, or directly
selected by such options. Support for the mac80211 crypto was enabled in
the generic config since c7182123b9 ("kernel: make cryptoapi support
needed by mac80211 built-in"). So move the above options from the target
configs to the generic config to make it clear why do we need them.

CC: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2 years agokernel: filter out both Clang and LLD versions
Sergey Ryazanov [Thu, 16 Dec 2021 22:23:07 +0000 (01:23 +0300)]
kernel: filter out both Clang and LLD versions

Both CLANG_VERSION and LLD_VERISON are autogenerated runtime
configuration options, so add them to the kernel configuration filter
and remove from generic and per-target configs to keep configs clean.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2 years agotoolchain/gcc: refresh gcc-11.2.0 patch
Ilya Lipnitskiy [Wed, 8 Dec 2021 01:28:23 +0000 (17:28 -0800)]
toolchain/gcc: refresh gcc-11.2.0 patch

Run make toolchain/gcc/minimal/refresh (with glibc, with musl
toolchain/gcc/{initial,final}/refresh don't work)

Fixes: ab241e0937c9 ("toolchain/gcc: fix build on MacOS arm64")
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2 years agotoolchain/gcc: replace revert with upstream fix
Ilya Lipnitskiy [Wed, 8 Dec 2021 01:28:22 +0000 (17:28 -0800)]
toolchain/gcc: replace revert with upstream fix

This will make upgrade to v11.3.0 easier and follows upstream more
closely.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2 years agotoolchain/gcc: remove upstreamed patch, add backport
Ilya Lipnitskiy [Wed, 8 Dec 2021 01:28:21 +0000 (17:28 -0800)]
toolchain/gcc: remove upstreamed patch, add backport

This patch has been upstream since GCC 10.
Dragan Mladjenovic (2):
      Emit .note.GNU-stack for soft-float linux targets.
      Emit .note.GNU-stack for hard-float linux targets.

Link: https://gcc.gnu.org/g:a3c1e1f2ff88
Link: https://gcc.gnu.org/g:54b3d52c3cca
Add backport patch to define TARGET_LIBC_GNUSTACK on musl to add
.note.GNU-stack on hard-float MIPS targets.

Link: https://gcc.gnu.org/g:25abbb924968
The net effect should be the exact same functionality while following
upstream code instead of a custom outdated patch.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2 years agokernel: bump 5.10 to 5.10.87
John Audia [Fri, 17 Dec 2021 11:42:51 +0000 (06:42 -0500)]
kernel: bump 5.10 to 5.10.87

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ipq806x/R7800*
Run-tested: bcm2711/RPi4B, ipq806x/R7800*

*Had to revert 7f1edbd41295dff9f2127b169fbc086c0fb2c14e in order to build
(binutils 2.37, https://bugs.openwrt.org/index.php?do=details&task_id=4149)

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: bump 5.10 to 5.10.86
John Audia [Thu, 16 Dec 2021 18:27:45 +0000 (13:27 -0500)]
kernel: bump 5.10 to 5.10.86

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ipq806x/R7800*
Run-tested: bcm2711/RPi4B, ipq806x/R7800*

*Had to revert 7f1edbd41295dff9f2127b169fbc086c0fb2c14e in order to build
(binutils 2.37, https://bugs.openwrt.org/index.php?do=details&task_id=4149)

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: bump 5.10 to 5.10.85
John Audia [Tue, 14 Dec 2021 11:15:08 +0000 (06:15 -0500)]
kernel: bump 5.10 to 5.10.85

Removed target for patch which does not exist:
    bcm27xx/patches-5.10/950-0249-kbuild-Disable-gcc-plugins.patch

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ipq806x/R7800*
Run-tested: bcm2711/RPi4B, ipq806x/R7800*

* Had to revert 7f1edbd41295dff9f2127b169fbc086c0fb2c14e in order to build
  (binutils 2.37, https://bugs.openwrt.org/index.php?do=details&task_id=4149)

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: bump 5.10 to 5.10.84
John Audia [Wed, 8 Dec 2021 11:14:30 +0000 (06:14 -0500)]
kernel: bump 5.10 to 5.10.84

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B
Run-tested: bcm2711/RPi4B

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: bump 5.4 to 5.4.167
John Audia [Fri, 17 Dec 2021 11:48:52 +0000 (06:48 -0500)]
kernel: bump 5.4 to 5.4.167

All patches automatically rebased.

Build system: x86_64
Build-tested: ramips/mt7621*

*FS#4149 affects me so I had to revert 7f1edbd41295dff9f2127b169fbc086c0fb2c14e
in order to downgrade to 2.35.1

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: bump 5.4 to 5.4.166
John Audia [Thu, 16 Dec 2021 19:53:58 +0000 (14:53 -0500)]
kernel: bump 5.4 to 5.4.166

All patches automatically rebased.

Build system: x86_64
Build-tested: ramips/mt7621*

*FS#4149 affects me so I had to revert 7f1edbd41295dff9f2127b169fbc086c0fb2c14e
in order to downgrade to 2.35.1

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agokernel: bump 5.4 to 5.4.165
John Audia [Wed, 15 Dec 2021 11:20:33 +0000 (06:20 -0500)]
kernel: bump 5.4 to 5.4.165

All patches automatically rebased.

Build system: x86_64
Build-tested: ramips/mt7621*

*FS#4149 affects me so I had to revert 7f1edbd41295dff9f2127b169fbc086c0fb2c14e
in order to downgrade to 2.35.1

Signed-off-by: John Audia <graysky@archlinux.us>
2 years agomac80211: optimize airtime fairness code to reduce cpu usage
Felix Fietkau [Tue, 14 Dec 2021 16:58:14 +0000 (17:58 +0100)]
mac80211: optimize airtime fairness code to reduce cpu usage

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agohostapd: close correct blobmsg table
David Bauer [Thu, 16 Dec 2021 19:27:04 +0000 (20:27 +0100)]
hostapd: close correct blobmsg table

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agoramips: mt7620: tidy up 02_network
Sungbo Eo [Thu, 16 Dec 2021 13:14:48 +0000 (22:14 +0900)]
ramips: mt7620: tidy up 02_network

* fix alphabetic sorting
* consolidate duplicate cases

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2 years agobcm4908: add uboot-envtools to default packages
Rafał Miłecki [Thu, 16 Dec 2021 07:25:18 +0000 (08:25 +0100)]
bcm4908: add uboot-envtools to default packages

It's required by sysupgrade to access UBI metadata partitions.

Fixes: 5f05795aa771 ("bcm4908: sysupgrade: add pkgtb format support")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agokernel: backport support for multicolor & RGB LEDs to 5.4
Rafał Miłecki [Thu, 16 Dec 2021 06:07:34 +0000 (07:07 +0100)]
kernel: backport support for multicolor & RGB LEDs to 5.4

This is a requirement for backporting DT files defining such LEDs.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agokernel: backport the upstream implementation of threaded NAPI to 5.4
Felix Fietkau [Mon, 13 Dec 2021 17:15:07 +0000 (18:15 +0100)]
kernel: backport the upstream implementation of threaded NAPI to 5.4

The workqueue based implementation has a few corner cases and typically lower
performance than the upstream one

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 years agoramips: remove Linux 5.4 support
Rui Salvaterra [Tue, 14 Dec 2021 13:46:19 +0000 (13:46 +0000)]
ramips: remove Linux 5.4 support

We're at 5.10 stable, this can finally go.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2 years agoramips: fix Tenbay T-MB5EU v1 Wireless MAC
David Bauer [Tue, 14 Dec 2021 23:01:23 +0000 (00:01 +0100)]
ramips: fix Tenbay T-MB5EU v1 Wireless MAC

It was reported, that Tenbay T-MB5EU v1 do have incorrect Wireless MAC
address set on 2.4 and 5 GHz.

Some boards do not seem to have the correct MAC address set for the
external PHY of the MT7915 radio at caldata offset 0xa.

As the external PHY does not expose a DT binding (yet), fix up the mac
address in userspace.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agohostapd: add OpenWrt specific statistic counters
David Bauer [Sat, 27 Nov 2021 21:08:28 +0000 (22:08 +0100)]
hostapd: add OpenWrt specific statistic counters

This adds a new struct for storing statistics not (yet) tracked by
hostapd regarding RRM and WNM activity.

These statistics can be read using the get_status hostapd interface ubus
method.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 years agoiw: Update to version 5.16
Hauke Mehrtens [Sat, 20 Nov 2021 23:11:24 +0000 (00:11 +0100)]
iw: Update to version 5.16

Revert a commit to allow providing CFLAGS and LIBS from OpenWrt package
Makefile.

This downgrades the nl80211.h to kernel 5.15 and removes FILS_CRYPTO_OFFLOAD.
This is needed to make it compatible with our patched mac80211 from
kernel 5.15

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agolibnl-tiny: update to the latest version
Hauke Mehrtens [Sat, 20 Nov 2021 23:10:51 +0000 (00:10 +0100)]
libnl-tiny: update to the latest version

8e0555f attr.h: Add NLA_PUT_S32

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agomac80211: Update to version 5.15.8
Hauke Mehrtens [Sun, 5 Dec 2021 15:36:05 +0000 (16:36 +0100)]
mac80211: Update to version 5.15.8

The following patches were backported from upstream before and are not
needed any more:
  package/kernel/mac80211/patches/ath10k/081-ath10k-fix-module-load-regression-with-iram-recovery-feature.patch
  package/kernel/mac80211/patches/ath10k/980-ath10k-fix-max-antenna-gain-unit.patch
  package/kernel/mac80211/patches/build/010-headers-Add-devm_platform_get_and_ioremap_resource.patch
  package/kernel/mac80211/patches/subsys/300-mac80211-drop-check-for-DONT_REORDER-in-__ieee80211_.patch
  package/kernel/mac80211/patches/subsys/307-mac80211-do-not-access-the-IV-when-it-was-stripped.patch
  package/kernel/mac80211/patches/subsys/308-mac80211-fix-radiotap-header-generation.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 years agobcm4908: add fdt-utils to default packages
Rafał Miłecki [Tue, 14 Dec 2021 16:57:49 +0000 (17:57 +0100)]
bcm4908: add fdt-utils to default packages

It's required by sysupgrade.

Fixes: 5f05795aa771 ("bcm4908: sysupgrade: add pkgtb format support")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agolayerscape: armv7: refresh config-5.10
Martin Schiller [Wed, 3 Nov 2021 16:16:52 +0000 (17:16 +0100)]
layerscape: armv7: refresh config-5.10

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: armv7: copy config-5.4 to config-5.10
Martin Schiller [Wed, 3 Nov 2021 13:31:50 +0000 (14:31 +0100)]
layerscape: armv7: copy config-5.4 to config-5.10

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: armv8_64b: refresh config-5.10
Martin Schiller [Wed, 3 Nov 2021 10:29:35 +0000 (11:29 +0100)]
layerscape: armv8_64b: refresh config-5.10

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: armv8_64b: copy config-5.4 to config-5.10
Martin Schiller [Wed, 3 Nov 2021 09:51:53 +0000 (10:51 +0100)]
layerscape: armv8_64b: copy config-5.4 to config-5.10

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: armv8_64b: use non-SDK dts files for linux-5.10 or newer
Martin Schiller [Wed, 3 Nov 2021 09:36:35 +0000 (10:36 +0100)]
layerscape: armv8_64b: use non-SDK dts files for linux-5.10 or newer

Since we decided to drop the LSDK patches with linux-5.10, we now have
to switch to the corresponding upstream dts files as well.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: armv8_64b: fix KERNEL_LOADADDR for linux >= 5.8
Martin Schiller [Wed, 3 Nov 2021 09:27:04 +0000 (10:27 +0100)]
layerscape: armv8_64b: fix KERNEL_LOADADDR for linux >= 5.8

In kernel versions newer than 5.8 the arm64 TEXT_OFFSET (0x80000) has
been set to 0x0 (and later removed). This will break Uimages with kernel
load addresses that aren't 2MiB aligned any longer. Resulting in the
kernel silently fail to boot. For layerscape armv8_64b targets this
needs to be changed to 0x80000000 (start of RAM).

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: add patches for kernel 5.10
Martin Schiller [Wed, 3 Nov 2021 12:48:24 +0000 (13:48 +0100)]
layerscape: add patches for kernel 5.10

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: add kernel 5.10 as testing version
Martin Schiller [Wed, 3 Nov 2021 09:46:35 +0000 (10:46 +0100)]
layerscape: add kernel 5.10 as testing version

This patch adds "KERNEL_TESTING_PATCHVER:=5.10" to the Makefile in
layerscape target to allow using Kernel 5.10 for testing.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agolayerscape: remove unneeded KERNEL_ENTRY_POINT definition
Martin Schiller [Wed, 3 Nov 2021 09:18:39 +0000 (10:18 +0100)]
layerscape: remove unneeded KERNEL_ENTRY_POINT definition

As KERNEL_ENTRY_POINT is identical to KERNEL_LOADADDR, drop it.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agols-ddr-phy: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:54:48 +0000 (12:54 +0200)]
ls-ddr-phy: bump to LSDK-21.08

Update ls-ddr-phy to latest LSDK-21.08.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agorestool: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:54:09 +0000 (12:54 +0200)]
restool: bump to LSDK-21.08

Update restool to latest LSDK-21.08.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agols-dpl: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:53:06 +0000 (12:53 +0200)]
ls-dpl: bump to LSDK-21.08

Update ls-dpl to latest LSDK-21.08.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agols-mc: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:52:10 +0000 (12:52 +0200)]
ls-mc: bump to LSDK-21.08

Update ls-mc to latest LSDK-21.08.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agoppfe-firmware: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:51:13 +0000 (12:51 +0200)]
ppfe-firmware: bump to LSDK-21.08

Update ppfe-firmware to latest LSDK-21.08.

Switched to AUTORELEASE for simplicity.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agofman-ucode: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:49:56 +0000 (12:49 +0200)]
fman-ucode: bump to LSDK-21.08

Just update PKG_VERSION/PKG_MIRROR_HASH since fman-ucode
of LSDK-21.08 had no changes.

Switched to AUTORELEASE for simplicity.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agotfa-layerscape: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:43:55 +0000 (12:43 +0200)]
tfa-layerscape: bump to LSDK-21.08

Update tfa package to latest LSDK-21.08.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agouboot-layerscape: bump to LSDK-21.08
Martin Schiller [Thu, 7 Oct 2021 06:56:19 +0000 (08:56 +0200)]
uboot-layerscape: bump to LSDK-21.08

Update layerscape u-boot package to LSDK-21.08 and drop patches which
are no longer needed.

The new env variable 'fsl_bootcmd_mcinitcmd_set' is needed to protect
the configured bootcmd and mc_init values. See [1] for more
informations.

[1] https://source.denx.de/u-boot/u-boot/-/commit/b62c174e861bddc3c7131045ed018556645cecb9

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agols-rcw: bump to LSDK-21.08
Martin Schiller [Mon, 11 Oct 2021 10:46:38 +0000 (12:46 +0200)]
ls-rcw: bump to LSDK-21.08

Update ls-rcw to latest LSDK-21.08.
Drop patch 0001 since it had been integrated.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2 years agoramips: switch to kernel 5.10
Rui Salvaterra [Thu, 9 Sep 2021 08:44:41 +0000 (09:44 +0100)]
ramips: switch to kernel 5.10

Tested on mt7621 (Redmi AC2100) and running stable for several months.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
Tested-by: Stijn Segers <foss@volatilesystems.org>
Tested-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2 years agoramips: mt7620: use OKLI loader with Jboot devices
Pawel Dembicki [Thu, 10 Jun 2021 15:17:23 +0000 (17:17 +0200)]
ramips: mt7620: use OKLI loader with Jboot devices

Jboot devices have problem with >2MB kernelsize. The only way to avoid
this problem is use small loader.

This patch switch all mt7620 Jboot devices to lzma OKLI loader.

Suggested-by: Szabolcs Hubai <szab.hu@gmail.com>
Co-authored-by: Michael Pratt <mcpratt@pm.me>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2 years agobcm53xx: sysupgrade: fix support for Luxul's legacy firmware format
Rafał Miłecki [Mon, 13 Dec 2021 17:19:05 +0000 (18:19 +0100)]
bcm53xx: sysupgrade: fix support for Luxul's legacy firmware format

Fixes: 80041dea7094 ("bcm53xx: sysupgrade: refactor handling different firmware formats")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agootrx: update to the latest master
Rafał Miłecki [Mon, 13 Dec 2021 12:47:39 +0000 (13:47 +0100)]
otrx: update to the latest master

56e8e19 otrx: support TRX from stdin when extracting
a37ccaf otrx: support unsorted partitions offsets
1fa145e otrx: extract shared code opening & parsing TRX format
4ecefda otrx: allow validating TRX from stdin
cf01e69 otrx: avoid unneeded fseek() when calculating CRC32

Fixes: 80041dea7094 ("bcm53xx: sysupgrade: refactor handling different firmware formats")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agobcm4908: sysupgrade: add pkgtb format support
Rafał Miłecki [Wed, 8 Dec 2021 11:21:48 +0000 (12:21 +0100)]
bcm4908: sysupgrade: add pkgtb format support

BCM4908 devices with U-Boot use pkgtb firmware format. It's based on
U-Boot's FIT: DTB with configurations, images & embedded data.

This format contains bootfs, rootfs and optionally a first stage U-Boot
loader. Contained images need to be extracted & flashed.

Broadcom used two sets of firmwares: main & backup. It uses UBI volumes
"metadata1" & "metadata2" for storing U-Boot env variables with info
about flashed images.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agodtc: support printing binary data with fdtget
Rafał Miłecki [Tue, 7 Dec 2021 12:00:02 +0000 (13:00 +0100)]
dtc: support printing binary data with fdtget

It's needed for extracting binary images.

Cc: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2 years agodtc: import package for dtc & fdt from packages feed
Rafał Miłecki [Tue, 7 Dec 2021 12:00:01 +0000 (13:00 +0100)]
dtc: import package for dtc & fdt from packages feed

fdt* utils are needed by targets that use U-Boot FIT images for
sysupgrade. It includes all recent BCM4908 SoC routers as Broadcom
switched from CFE to U-Boot.

fdtget is required for extracting images (bootfs & rootfs) from
Broadcom's ITB. Extracted images can be then flashed to UBI volumes.

sysupgrade is core functionality so it needs dtc as part of base code
base.

Cc: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>