David Bauer [Wed, 28 Jul 2021 22:29:53 +0000 (00:29 +0200)]
generic: write back netdev MAC-address to device-tree
The label-mac logic relies on the mac-address property of a netdev
devices of-node. However, the mac address can also be stored as a
different property or read from e.g. an mtd device.
Create this node when reading a mac-address from OF if it does not
already exist and copy the mac-address used for the device to this
property. This way, the MAC address can be accessed using procfs.
This commit could create a property without allocated memory, breaking
subsequent reads over a nodes property. Also, the mac-address-increment
was not applied when reading from nvmem.
Revert this commit for now, which breaks the label-mac-address logic.
Possibly, traversing the device-tree from the netdev side is easier
anyways.
Vincent Wiemann [Sun, 20 Jun 2021 14:56:21 +0000 (16:56 +0200)]
ath79: add support for Joy-IT JT-OR750i
Specifications:
* QCA9531, 16 MiB flash (Winbond W25Q128JVSQ), 128 MiB RAM
* 802.11n 2T2R (external antennas)
* QCA9887, 802.11ac 1T1R (connected with diplexer to one of the antennas)
* 3x 10/100 LAN, 1x 10/100 WAN
* UART header with pinout printed on PCB
Installation:
* The device comes with a bootloader installed only
* The bootloader offers DHCP and is reachable at http://10.123.123.1
* Accept the agreement and flash sysupgrade.bin
* Use Firefox if flashing does not work
TFTP recovery with static IP:
* Rename sysupgrade.bin to jt-or750i_firmware.bin
* Offer it via TFTP server at 192.168.0.66
* Keep the reset button pressed for 4 seconds after connecting power
TFTP recovery with dynamic IP:
* Rename sysupgrade.bin to jt-or750i_firmware.bin
* Offer it via TFTP server with a DHCP server running at the same address
* Keep the reset button pressed for 6 seconds after connecting power
Co-authored-by: Sebastian Schaper <openwrt@sebastianschaper.net> Signed-off-by: Vincent Wiemann <vincent.wiemann@ironai.com>
Andre Heider [Tue, 8 Jun 2021 03:42:51 +0000 (05:42 +0200)]
arm-trusted-firmware-mvebu: switch to CZ.NIC's Secure Firmware
CZ.NIC as part of Turris project released free and open source WTMI
application firmware wtmi_app.bin for all Armada 3720 devices.
This firmware includes additional features like access to Hardware
Random Number Generator of Armada 3720 SoC which original Marvell's
fuse.bin image does not have.
Add a patch which allows to pass the commit id, so the firmware is able
to identify itself, see a04bffeb.
Add a patch to disable linking with gold, since the ARM toolchain
doesn't ship gold.
Cherry-pick the 3 post-release fixes.
Andre Heider [Tue, 8 Jun 2021 02:20:54 +0000 (04:20 +0200)]
arm-trusted-firmware-mvebu: update mv-ddr-marvell to current master
02e23db fix compilation errors popped up by GCC-10 7c35173 Merge pull request #29 from pali/sync-a38x-uboot bb734f5 mv_ddr: a38x: Use SOC_REGS_PHY_BASE for INTER_REGS_BASE ee1ea84 mv_ddr: a38x: Fix ddr3 compilation 70f3e2e mv_ddr: Fix comment typo dd960b4 mv_ddr: ddr3: Allow boards to specify CK_DELAY parameter a87f4f7 mv_ddr: ddr3: only use active chip-selects when tuning ODT 3defcec mv_ddr: a38x: Add support for setting timing in hws_topology_map
Andre Heider [Tue, 8 Jun 2021 02:20:26 +0000 (04:20 +0200)]
arm-trusted-firmware-mvebu: update a3700-tools to current master
2efdb10 wtmi: Fix calculation of UART divider 4247e39 fix: twin die ddr porting guide 8ad7992 sys_init: Add missing newlines in debug mode 4ddea19 avs: Validate VDD value from OTP c444aeb avs: Fix description for avs value 0x2e 1915b78 tim: Optimize code generated by gettimver.sh and print newline 21f566d tim: Print mv_ddr version and configuration on UART 840b70b tim: Use variable $DDRFILE where possible c10e6ae tim: Fix waiting for UART TX ready 7bf95cf wtmi: Wait 3ms for the TX on UART to be empty prior resetting TX FIFO 63e8433 wtmi: Add "dirty" suffix to git commit and rebuild sys_init.bin binary when VERSION changes e949b58 wtmi: During setup clock phase print CPU and DDR speed 10376b5 wtmi: Flush output on UART after the '\n' character 509c647 Makefile: Check that specified DDR_TOPOLOGY option is valid
Marek Behún [Thu, 15 Jul 2021 18:48:33 +0000 (20:48 +0200)]
uboot-envtools: mvebu: update uci defaults for Turris Omnia
From version 2021.09 U-Boot will fixup Turris Omnia's DTB before
booting, separating U-Boot's environment into separate MTD partition
"u-boot-env" [1].
Check if "u-boot-env" MTD partition exists and set the uci defaults
accordingly.
mvebu: limit mvneta tx queue workaround to 32 bit SoC
This patch has been carried since introduction throughout every kernel
major bump and no one has tested if the later kernels improved the
situation. The Armada 3720 SoC can only process GbE interrupts on Core 0
and this is already limited in all stable kernels, so ditch this
workaround for 64 bit SoCs.
Thomas Nixon [Sat, 26 Jun 2021 12:50:12 +0000 (12:50 +0000)]
realtek: remove rtl83xx vlan 1 special cases
On reset, the PVID of all ports is set to 1; if this is reset to 0,
the special cases for VLAN 1 are no longer required.
port_vlan_add is called with vid=0 when the DSA port interfaces are
enabled with no VLAN; previously the VLAN was not configured in this
case, relying on VLAN 1 being present, but with the PVID set to 0,
configuring VLAN 0 as normal works as expected.
linux-firmware: add 2G and 5G precal binaries for QCA99X0
Some devices (such as Extreme Networks WS-AP3959i-ROW) do not contain
precal binaries in ART, and the precal in the cards eeprom causes
firmware load errors.
These firmware files were previously in linux-firmware,
so these are adding them back and renaming to be cleaner.
kernel/generic: add a missing symbol to the 5.10 kconfig
Add CONFIG_HAVE_ARM_ARCH_TIMER (disabled). A make kernel_oldconfig on cortexa9
will otherwise prompt for its selection. The 5.4 configuration already contains
the same symbol.
kernel: backport workaround for Realtek RTL8672 and RTL9601C chips
Adds support for GPON SFP modules based on the Realtek RTL8672 and
RTL9601C chips, including but not limited to:
* V-SOL V2801F
* C-Data FD511GX-RM0
* OPTON GP801R
* BAUDCOM BD-1234-SFM
* CPGOS03-0490 v2.0
* Ubiquiti U-Fiber Instant
* EXOT EGS1
Signed-off-by: Vladimir Markovets <abam_a@yahoo.com>
Latest binutils (2.37) exposed a long-standing bug. The kernel linking stage
would break at the SORTTAB step, due to the exception table having been
previously purged from vmlinux, as its section wasn't marked as unconditionally
kept. Fix thusly.
Additionally, the "#define ARM_MMU_DISCARD(x) KEEP(x)" change is bogus. It
would only apply to !CONFIG_MMU devices (which we don't support in OpenWrt), and
it would even break the build if referenced. Drop it.
While at it, rename the patch in order to make it obvious that it's
arm-specific.
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[Add same changes for kernel 5.4 too] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Felix Fietkau [Sun, 25 Jul 2021 04:26:20 +0000 (06:26 +0200)]
netifd: update to the latest version
85f01c44a950 bridge: check bridge port vlan membership on link-up events 17e453bd68b4 wireless: add back regular virtual interfaces on hotplug-add events as well
Daniel Golle [Fri, 23 Jul 2021 23:00:22 +0000 (00:00 +0100)]
fstools: update to git HEAD
59f7c11 blockd: create mountpoint parent folder if needed 9cc96af Revert "block: resolve /dev/mapper/* name for /dev/dm-0 when hotplugging" 06334ac Revert "blockd: detect mountpoint of /dev/mapper/*" 9ab3551 block: use /dev/dm-* instead of /dev/mapper/* 5114595 block: allow remove hotplug event to arrive at blockd
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Ansuel Smith [Fri, 23 Jul 2021 10:43:35 +0000 (12:43 +0200)]
generic: fix mediatek and dsa not detecting mac-addr from nvmem
Nvmem require the device node to be registered with the of_platform.
Register the device node so that nvmem can correctly find the dev and
correctly load the mac-addr stored in the nvmem cell declared in the dts.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
When the kmod-qlcnic package is built on targets that have
CONFIG_PCI_IOV enabled, the CONFIG_QLCNIC_SRIOV symbol is exposed.
Enable this symbol in the kmod package to fix its build.
David Bauer [Tue, 20 Jul 2021 20:00:10 +0000 (22:00 +0200)]
generic: add mac-address property for NVMEM mac addresses
Traversing the device-tree by referencing a network device to determine
a devices labe-mac does not work with the generic nvmem implementation,
as the userspace expects the MAC-address to be available as a
device-tree property.
The legacy mtd-mac-address implementation did create such a node. Do the
same when using the nvmem implementation to allow reading the MAC
address.
Fixes commit d284e6ef0f06 ("treewide: convert mtd-mac-address-increment*
to generic implementation")
Daniel Golle [Wed, 21 Jul 2021 14:32:00 +0000 (15:32 +0100)]
mediatek: mt7623: allow build without ext4 rootfs
The image generation code for the U7623 board expects ext4 filesystem
to be selected in menuconfig and CONFIG_TARGET_ROOTFS_PARTSIZE to be
defined. Now that ext4 isn't enabled any more, the variable was missing
and broke the build.
Set the default (104) instead of using the config variable to fix that.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
David Bauer [Wed, 21 Jul 2021 08:28:50 +0000 (10:28 +0200)]
ramips: fix missing NVMEM subsystem
MAC address retrieval was switched to more generic upstream (5.13) NVMEM
based solution in commit 06bb4a5018cd ("ramips: convert mtd-mac-address
to nvmem implementation") , but NVMEM subsystem wasn't enabled in the
kernel, so fix it now.
References: https://github.com/openwrt/openwrt/pull/4041#issuecomment-883322801 Fixes: 06bb4a5018cd ("ramips: convert mtd-mac-address to nvmem implementation") Signed-off-by: David Bauer <mail@david-bauer.net> Signed-off-by: Petr Štetiar <ynezz@true.cz> [commit message]
Petr Štetiar [Wed, 21 Jul 2021 08:28:50 +0000 (10:28 +0200)]
bmips: fix missing NVMEM subsystem
MAC address retrieval was switched to more generic upstream (5.13) NVMEM
based solution in commit 32adbfc789f6 ("bmips: convert mtd-mac-address
to nvmem implementation"), but NVMEM subsystem wasn't enabled in the
kernel, so fix it now.
References: https://github.com/openwrt/openwrt/pull/4041#issuecomment-883322801 Fixes: 32adbfc789f6 ("bmips: convert mtd-mac-address to nvmem implementation") Signed-off-by: Petr Štetiar <ynezz@true.cz>
Daniel Golle [Wed, 21 Jul 2021 09:26:44 +0000 (10:26 +0100)]
mediatek: mt7623: add back needed build steps for U7623 board
When reworking the BPi-R2 the mtk-mmc-img build step was removed
despite it was still needed to build the image for the UniElec U7623
board. Add it back for now until U7623 gets its facelift.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Sat, 10 Jul 2021 15:35:47 +0000 (16:35 +0100)]
mediatek: rework Bananapi BPi-R2
* introduce recovery (=initramfs) vs. production dual boot scheme
* make use of uImage.FIT (instead of FAT partition)
* generate images using build steps (instead of external scripts)
* simplify sysupgrade and config restore (thanks to uImage.FIT)
* make sure mmc devices are ordered persistently (set DT aliases)
This commit breaks sysupgrade from existing installations, you will
have to re-install using the sdcard.img.gz image.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Mon, 12 Jul 2021 15:49:12 +0000 (16:49 +0100)]
uboot-envtools: add configuration for Bananapi BPi-R2
Add fw_env configuration for the BPi-R2 which is a mediatek/mt7623
devboard which can be booted from SD Card or eMMC.
Auto detect the boot device and add environment accordingly.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Mon, 12 Jul 2021 15:47:11 +0000 (16:47 +0100)]
uboot-envtools: move mediatek to mediatek_mt7622
All mediatek boards having fw_env accessible through uboot-envtools
belong to be mt7622 subtarget. Move the file, as subtarget-specific
files are supported for a while now.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Mon, 12 Jul 2021 15:52:21 +0000 (16:52 +0100)]
uboot-mediatek: rework support for the BPi-R2
* use built-in default environment instead of file in bootfs
* get rid of bootfs alltogether and use uImage.FIT
* auto-detect boot device like original script did
* add support for factory button
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Mon, 12 Jul 2021 17:13:37 +0000 (18:13 +0100)]
mediatek: mt7623: build with Linux 5.10
Update Kernel config and set Linux 5.10 for mediatek/mt7623.
(patches have already been updated to 5.10 when mt7622 was bumped)
Tested on Bananapi BPi-R2.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Daniel Golle [Wed, 30 Jun 2021 01:18:42 +0000 (02:18 +0100)]
x86: include kmod-fs-vfat by default in generic images
As x86/64 and x86/generic may be using UEFI, mounting the FAT-32 /boot
is necessary in order not to loose configuration files accross
sysupgrades. Include kmod-fs-vfat by default to make sure /boot can
always be mounted.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Ansuel Smith [Mon, 12 Jul 2021 19:42:41 +0000 (21:42 +0200)]
treewide: convert mtd-mac-address-increment* to generic implementation
Rework patch 681-NET-add-mtd-mac-address-support to implement
only the function to read the mac-address from mtd.
Generalize mtd-mac-address-increment function so it can be applied
to any source of of_get_mac_address.
Rename any mtd-mac-address-increment to mac-address-increment.
Rename any mtd-mac-address-increment-byte to mac-address-increment-byte.
This should make simplify the conversion of target to nvmem implementation.
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Yonghyu Ban [Tue, 6 Jul 2021 07:13:59 +0000 (16:13 +0900)]
scripts/mkits.sh: Fix the hash algorithm paramter
The mkits.sh script help message states hash algorithm can be
specified using the -H command-line option, but it does not work
currently due to a bug in the script.
This patch fixes this problem by changing the option from -S to
-H and specify getopts parameter after it
Edgar Su [Mon, 12 Jul 2021 13:22:48 +0000 (21:22 +0800)]
x86: kernel: set NR_CPUS to 512
NR_CPUS limits the number of CPUs supported to 8. This makes total sense
on hardware-restircted platforms, but not on x86_64, where CPUs with
more than 8 cores can be easily acquired and with less physical limitaions.
see also: https://forum.openwrt.org/t/x86-64-8-cpu-limitation-on-vanilla-release/100946
David Bauer [Sat, 17 Jul 2021 18:04:29 +0000 (20:04 +0200)]
ipq40xx: fix FRITZRepeater 1200 RGMII delay
When the AVM FRITZ!Repeater 1200 was introduced on Kernel 4.19, the
at803x PHY driver incorrectly set up the delays, not disabling delays
set by the bootloader.
The PHY was always operating with RX as well as TX delays enabled, but
with kernel 5.4 and later, the required TX delay is disabled, breaking
ethernet operation.
Correct the PHY mode, so the driver enables both delays.
Daniel Golle [Thu, 15 Jul 2021 17:17:15 +0000 (18:17 +0100)]
procd: update to git HEAD
0ee73b2 uxc: implement support for rootfs overlay in containers b0a8ea1 jail: do not hack /etc/resolv.conf on container rootfs 92aba53 jail: increase max additional env records to 64 15997e6 jail: allow rootfs to be a symbolic link 0114c6f jail: open() extroot folder before mounting ed96eda uxc: check for required blockd mounts
Signed-off-by: Daniel Golle <daniel@makrotopia.org>