aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* wolfssl: update to 5.5.4-stableNick Hainke2023-01-013-36/+3
| | | | | | | | | | | | | Remove upstreamed: - 001-Fix-enable-devcrypto-build-error.patch Refresh patch: - 100-disable-hardening-check.patch Release notes: https://github.com/wolfSSL/wolfssl/releases/tag/v5.5.4-stable Signed-off-by: Nick Hainke <vincent@systemli.org>
* toolchain/binutils: switch to version 2.39 by defaultHauke Mehrtens2023-01-012-2/+2
| | | | | | | | | | | | | | | | This was build tested with all core packages on all targets successfully. This was run tested on the following systems: * lantiq/xrx200 musl * sunxi/cortex53 musl * x86/64 musl * x86/64 glibc Some trusted firmware arm builds needed some fixes to build with binutils 2.39, this was merged before. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* toolchain/binutils: backport stable patchesHauke Mehrtens2022-12-3111-0/+1260
| | | | | | | | | | | | Add the patches with real changes from the binutils 2.39 stable branch. I am not aware that we ran into any of these problems, but I think it is better to take the existing stable patches. They were exported like this: git format-patch binutils-2_39...origin/binutils-2_39-branch I removed the patches changing the version numbers only. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* tfa-layerscape: Use trusted-firmware-a.mkHauke Mehrtens2022-12-312-84/+69
| | | | | | | | This converts the trusted firmware arm build Makefile to make use of the common trusted-firmware-a.mk file. This also fixes the build with binutils 2.39. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* arm-trusted-firmware-mvebu: Use host flags for cryptest compilationHauke Mehrtens2022-12-312-0/+15
| | | | | | | | | Without these changes it used the system LDFLAGS for the compilation of the cryptopp library. This does not always work when we add "-no-warn-rwx-segments" which is done to support binutils 2.39 inside of OpenWrt. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* arm-trusted-firmware-sunxi: Use common trusted-firmware-a.mkHauke Mehrtens2022-12-312-39/+27
| | | | | | | Make use of the definitions from trusted-firmware-a.mk to build the Trusted firmware arm. This fixes the build with binutils 2.39. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ipq40xx: sysupgrade: allow flashing Linksys factory firmwareTony Ambardar2022-12-311-0/+18
| | | | | | | | | | | | | | | | | Allow forced flashing of a factory firmware image, after checking for the correct FIT magic header and Linksys board-specific footer. Details of the footer are already described in scripts/linksys-image.sh. This is convenient as it avoids using a TFTP server or OEM GUI, and allows restoring OEM firmware or installing a "breaking" OpenWrt update (e.g DSA migration and kernel repartition) directly from the command line. Devices supported at this time include EA6350v3, EA8300, MR8300 and WHW01. Reviewed-by: Robert Marko <robimarko@gmail.com> Tested-by: Wyatt Martin <wawowl@gmail.com> # WHW01 Tested-by: Tony Ambardar <itugrok@yahoo.com> # EA6350v3 Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* base-files: stage2: add 'tail' to sysupgrade environmentTony Ambardar2022-12-311-1/+1
| | | | | | | This is used to access footer data in firmare files, and is simpler and less error-prone than using 'dd' with calculated offsets. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* ipq40xx: migrate Linksys WHW01 to DSA and re-enableTony Ambardar2022-12-313-2/+22
| | | | | | | | | Convert Linksys WHW01 network configuration to DSA and re-enable builds. Reviewed-by: Robert Marko <robimarko@gmail.com> Tested-by: Wyatt Martin <wawowl@gmail.com> Signed-off-by: Wyatt Martin <wawowl@gmail.com> Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* ipq40xx: fix up Linksys WHW01 board name, device definitionTony Ambardar2022-12-315-12/+9
| | | | | | | | | | | | | | Update the board name defined in DTS to match online documentation and the name encoded into factory firmware. This helps supports flashing firmware factory images using 'sysupgrade'. Original WHW01 device definition assumes the rootfs IMAGE_SIZE is 33 MB instead of the correct 74 MB, and defines factory images which include extra adjustments/padding that do not match OEM factory images and may cause problems flashing. Update image size and build recipe to fix these. Suggested-by: Wyatt Martin <wawowl@gmail.com> Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* ipq40xx: re-enable EA6350v3, EA8300, MR8300 buildsTony Ambardar2022-12-314-23/+38
| | | | | | | | | | | | | | | | | | | | | | | | | Raise the kernel size from 3 MB to 5 MB for EA6350v3, EA8300 and MR8300, and correspondingly reduce the rootfs size by 2 MB: * modify partition definitions in related .dts files * modify device kernel/image sizes in generic.mk Update to compat-version 2.0 to force factory image usage on sysupgrade, noting the current version 1.1 is an unreleased update for DSA migration. Also update the compat-version message, explaining the need to run one of the following console commands to update U-Boot's kernel-size variable before flashing the OpenWrt factory image. fw_setenv kernsize 500000 # (OpenWrt command line) setenv kernsize 500000 ; saveenv # (U-Boot serial console) Finally, re-enable the 3 devices. Reviewed-by: Robert Marko <robimarko@gmail.com> Tested-by: Nicolas TORMO <badulesia.granieri@gmail.com> # MR8300 Tested-by: Tony Ambardar <itugrok@yahoo.com> # EA6350v3 Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* mbedtls: update to version 2.28.2Hauke Mehrtens2022-12-312-6/+6
| | | | | | | | | | | | | | | | | | | Changelog: https://github.com/Mbed-TLS/mbedtls/releases/tag/v2.28.2 This release of Mbed TLS provides bug fixes and minor enhancements. This release includes fixes for security issues. Fixes the following CVEs: * CVE-2022-46393: Fix potential heap buffer overread and overwrite in DTLS if MBEDTLS_SSL_DTLS_CONNECTION_ID is enabled and MBEDTLS_SSL_CID_IN_LEN_MAX > 2 * MBEDTLS_SSL_CID_OUT_LEN_MAX. * CVE-2022-46392: An adversary with access to precise enough information about memory accesses (typically, an untrusted operating system attacking a secure enclave) could recover an RSA private key after observing the victim performing a single private-key operation if the window size used for the exponentiation was 3 or smaller. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: fix receiving multicast packets on multiple sta interfacesFelix Fietkau2022-12-301-26/+30
| | | | | | Also fix MLO sta sdata link initialization Signed-off-by: Felix Fietkau <nbd@nbd.name>
* bcm47xx: replace "Devices-database-update-patch" with upstream patchesNick Hainke2022-12-307-268/+428
| | | | | | | | | | | | | Replace "320-MIPS-BCM47XX-Devices-database-update-for-4.x.patch" with upstream patches: - 320-v5.17-MIPS-BCM47XX-Add-board-entry-for-Linksys-WRT320N-v1.patch - 321-v5.17-MIPS-BCM47XX-Add-support-for-Netgear-R6300-v1.patch - 322-v5.17-MIPS-BCM47XX-Add-support-for-Netgear-WN2500RP-v1-v2.patch - 323-v6.0-MIPS-BCM47XX-Add-support-for-Netgear-WNR3500L-v2.patch - 324-v5.17-MIPS-BCM47XX-Add-LEDs-and-buttons-for-Asus-RTN-10U.patch - 325-v5.17-MIPS-BCM47XX-Define-Linksys-WRT310N-V2-buttons.patch Signed-off-by: Nick Hainke <vincent@systemli.org>
* bcm47xx: add tags to upstreamed patchesNick Hainke2022-12-309-0/+0
| | | | | | All of the mtd patches are upstreamed to 5.18. Add tags indicating this. Signed-off-by: Nick Hainke <vincent@systemli.org>
* netifd: update to the latest versionFelix Fietkau2022-12-301-3/+3
| | | | | | | | | | | | 2cffe0c44e62 treewide: correctly apply IFNAMSIZ limit 96bcbb2e4eb6 wireless: allow set_retry ubus notify command to trigger a wdev restart a2e8cd75dbf6 wireless: add support for disabling multicast-to-unicast per virtual interface e9f44189ade7 system: move netdev types to system-linux.c where they are used a3fab0119ef1 utils: include utils.h last 7ce73fc16765 vlandev: propagate topology changes 81c1fbcba2f2 device: fix vlan device issues with disappearing lower devices Signed-off-by: Felix Fietkau <nbd@nbd.name>
* CI: labeler: Add target label to target packagesHauke Mehrtens2022-12-301-0/+29
| | | | | | | | This adds the target label also to changes in packages which are target specific like the boot loader of a target or some drivers which are only use on one target. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ramips: enable BBT on NAND in I-O DATA devicesINAGAKI Hiroshi2022-12-302-0/+10
| | | | | | | | | | | This patch enables MediaTek NAND BBT on I-O DATA devices manufactured by MSTC (MitraStar Technology Corp.). [WN-AX2033GR] Tested-by: Yanase Yuki <dev@zpc.sakura.ne.jp> [WN-AX1167GR2, WN-DX1167R, WN-DX1200GR, WN-DX2033GR] Tested-by: INAGAKI Hiroshi <musashino.open@gmail.com> Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* mediatek: drop redmi-ax6000 variant with modified envChuanhong Guo2022-12-305-61/+0
| | | | | | | | | | | | | | | | | | | This variant uses xiaomi factory u-boot and modified u-boot-env & bootcmd. By modifying uboot-env, the xiaomi firmware recovery provided in the vendor u-boot doesn't work anymore. It's possible to put u-boot into a state where it refuese to take any serial input. If the u-boot is in this state, users can't restore their firmware without taking the flash off the board. We now have a -stock variant where the vendor u-boot is used in a way that xiaomi firmware recovery still works, and a -ubootmod variant where we get rid of all xiaomi components, have more usable space and no uart console lock. These two should cover all use cases and we don't need this variant anymore. Drop this redmi-ax6000 variant. Existing users of this variant should perform a u-boot mod or restore to the -stock layout. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: Refresh patchesHauke Mehrtens2022-12-291-2/+2
| | | | | | The patch was not applying cleanly any more. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* tree-wide: Do not use package librt and libpthreadHauke Mehrtens2022-12-297-16/+6
| | | | | | | | | | | The libraries libpthread, libdl, libutil, libanl have been integrated into the libc library in version 2.34. it is not needed to explicitly link them any more. Most of the functions have been moved from the librt.so into libc.so some time ago already. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ipq40xx: convert Aruba AP-303H to DSA and enable target againNick Hainke2022-12-293-2/+34
| | | | | | | | | The target was disabled since noone did the DSA conversion. Add the conversion and enable it again. Tested-by: John Walshaw <jjw@myself.com> Signed-off-by: Bjoern Dobe <bjoern@dobecom.de> Signed-off-by: Nick Hainke <vincent@systemli.org>
* mpc85xx: change CPU_TYPE from 8540 to 8548Šimon Bořek2022-12-291-1/+1
| | | | | | | | | | | | | | | | | | All subtargets as p1010, p1020, p2020 uses e500v2 cores [1] [2] [3] [4], so let's force cpu type to 8545 for all mpc85xx target even though there might exist device with e500v1, but there is no such router supported in OpenWrt and because of that it does not make sense to to set CPU_TYPE for each subtarget. All MPC85xx SoC can be found here: https://www.nxp.com/products/processors-and-microcontrollers/legacy-mpu-mcus/powerquicc-processors:POWERQUICC_HOME#powerquicc-iii-mpc85xx [1] https://www.nxp.com/docs/en/application-note/AN2807.pdf [2] https://www.nxp.com/docs/en/fact-sheet/QP1010FS.pdf [3] https://www.nxp.com/docs/en/product-brief/P1020PB.pdf [4] https://www.nxp.com/docs/en/fact-sheet/QP20XXFS.pdf Co-authored-by: Pali Rohár <pali@kernel.org> Signed-off-by: Šimon Bořek <simon.borek@nic.cz>
* mpc85xx: add support for cpu type 8548Šimon Bořek2022-12-291-0/+1
| | | | | | | | | | | | 8540 cpu type corresponds to e500v1 core while 8548 cpu type corresponds to e500v2 core See https://www.nxp.com/products/processors-and-microcontrollers/legacy-mpu-mcus/powerquicc-processors:POWERQUICC_HOME#powerquicc-iii-mpc85xx and https://www.nxp.com/docs/en/application-note/AN2807.pdf . Co-authored-by: Josef Schlehofer <josef.schlehofer@nic.cz> Co-authored-by: Pali Rohár <pali@kernel.org> Signed-off-by: Šimon Bořek <simon.borek@nic.cz>
* linux-firmware: disable strippingRobert Marko2022-12-291-1/+4
| | | | | | | | | | | It has been brought to my attention that recently added WCN6855 firmware is broken as it is getting stripped during building due to being 2 ELF binaries. I am sure WCN6750 and any other ELF binaries are having the same issue, so since stripping firmware binaries is clearly unwanted disable it. Fixes: b4d3694f81f4 ("linux-firmware: package ath11k consumer cards firmware") Signed-off-by: Robert Marko <robimarko@gmail.com>
* uboot-mediatek: add support for Xiaomi Redmi Router AX6000Furong Xu2022-12-293-0/+412
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | U-Boot flash instructions: 0. OpenWrt U-Boot does not support stock layout, it comes with recovery boot support, automatic tftp recovery and never blocks UART. A new flash layout is introduced, we call it OpenWrt U-Boot layout, stock flash layout and the old OpenWrt layout are not supported. During the whole flash procedure, please do not reboot or power off unless requested explicitly, or you will break your device. 1. Your device should already running OpenWrt. If not, follow the instructions to flash OpenWrt: https://github.com/openwrt/openwrt/pull/11115 2. Backup BL2 Nvram Bdata Factory and FIP in case you break something or in case you want to go back to stock firmware one day. cat /dev/mtdblock0 > /tmp/BL2.bin cat /dev/mtdblock1 > /tmp/Nvram.bin cat /dev/mtdblock2 > /tmp/Bdata.bin cat /dev/mtdblock3 > /tmp/Factory.bin cat /dev/mtdblock4 > /tmp/FIP.bin And save all whose bin files to somewhere safe. Then backup your configurations, since ubiformat for entire mtd device is required to create new ubootenv volume for OpenWrt U-Boot. 3. Run the following cmd to boot into an initramfs with the new OpenWrt U-Boot layout that expand ubi partion to the end of flash: ubiformat /dev/mtd7 -y -f /tmp/ax6000-ubootmod-initramfs-factory.ubi 4. After boot into initramfs, check mtd partion info. The ubi partion should be mtd5 root@OpenWrt:~# cat /proc/mtd dev: size erasesize name mtd0: 00100000 00020000 BL2 mtd1: 00040000 00020000 Nvram mtd2: 00040000 00020000 Bdata mtd3: 00200000 00020000 Factory mtd4: 00200000 00020000 FIP mtd5: 07a80000 00020000 ubi 5. Load kmod-mtd-rw to temporarily make the bootloader partions writable. The kmod-mtd-rw is from the feeds, it is not packed in initramfs-factory by default. To install kmod-mtd-rw via opkg: opkg update && opkg install kmod-mtd-rw Or, download kmod-mtd-rw.ipk from OpenWrt server and install it manually e.g: https://downloads.openwrt.org/snapshots/targets/mediatek/filogic/kmods/ Select your OpenWrt release version and kernel version accordingly. Load kmod-mtd-rw: insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1 6. Run the following cmd to clean all pending crash dumps in pstore, or OpenWrt U-Boot may boot into NAND recovery or tftp recovery. rm -f /sys/fs/pstore/* 7. Format ubi and create new ubootenv volume: ubidetach -p /dev/mtd5; ubiformat /dev/mtd5 -y; ubiattach -p /dev/mtd5 ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB 8. This is optional. Skip this if you do not want to have NAND recovery boot feature offered by OpenWrt U-Boot. Don't worry, you always have automatic tftp recovery feature enabled. ubimkvol /dev/ubi0 -n 2 -N recovery -s 10MiB ubiupdatevol /dev/ubi0_2 /tmp/ax6000-ubootmod-initramfs-recovery.itb 9. Now, flash new U-Boot. Bye-bye ugly stock U-Boot. mtd write /tmp/ax6000-ubootmod-preloader.bin BL2 mtd write /tmp/ax6000-ubootmod-bl31-uboot.fip FIP 10. Flash the squashfs-sysupgrade.bin as usual: sysupgrade -n /tmp/ax6000-ubootmod-squashfs-sysupgrade.itb Enjoy! Signed-off-by: Furong Xu <xfr@outlook.com>
* mediatek: add new layout for Xiaomi Redmi Router AX6000 for OpenWrt U-BootFurong Xu2022-12-298-20/+92
| | | | | | | | | This new layout is only bootable with OpenWrt U-Boot. It reuses the two crash partions and expands the ubi partion to the end of whole flash. Do not use this layout with stock U-Boot! Signed-off-by: Furong Xu <xfr@outlook.com>
* realtek: deduplicate GS1900 recipesSander Vanheule2022-12-283-23/+18
| | | | | | | | | | ZyXEL GS1900 devices with SoCs from both the RTL838x and RTL839x families share the same image structure and size of the firmware partition. Additionally, the GS1900-48 recipe provided a parameter for the zyxel-vers command, but this parameter is not used. Deduplicate the recipes by moving it to target/linux/realtek/image/common.mk. Signed-off-by: Sander Vanheule <sander@svanheule.net>
* realtek: fix GS1900-48 firwmare partitionSander Vanheule2022-12-283-5/+5
| | | | | | | | | | The listed partition size doesn't match the original partition size, and actually overlaps with the following partition. The partition node name for the "firmware" partition also has an extra 'b' compared to the partition offset. Fixes: 47f5a0a3eed5 ("realtek: Add support for ZyXEL GS1900-48 Switch") Signed-off-by: Sander Vanheule <sander@svanheule.net>
* realtek: fix ZYXELS_VERS for GS1900-48Sander Vanheule2022-12-281-1/+1
| | | | | | | | | | | | | | | | | The GS1900-48 firmware image is identified by the 'AAHN' ID, while the GS1900-48HP is identified by 'AAHO' [1]. The latter was used, resulting in the following error message when upgrading via the stock web UI: Device only can support firmware from V1.00(AAHN.0) and later version Fix image generation by using the correct ID. [1] https://download.zyxel.com/GS1900-48/firmware/GS1900-48_2.70(AAHN.3)C0_2.pdf Link: https://forum.openwrt.org/t/146533 Fixes: 47f5a0a3eed5 ("realtek: Add support for ZyXEL GS1900-48 Switch") Suggested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> Signed-off-by: Sander Vanheule <sander@svanheule.net>
* realtek: fix default image generationSander Vanheule2022-12-281-3/+3
| | | | | | | | | | | | While cleaning up the makefiles for the realtek target, the order of the default image generating commands was accidentally changed. This caused the image signature to end up somewhere in the middle, misaligning the rootfs. As a result, sysupgrade couldn't verify upgrade images anymore, and devices end up in a boot loop due to the unaligned (and not found) rootfs. Fixes: 94d8b4852b9f ("realtek: Cleanup Makefiles") Signed-off-by: Sander Vanheule <sander@svanheule.net>
* ath79: fix calibration-art for some boardsNick Hainke2022-12-281-4/+4
| | | | | | | | | "0x1000" looks suspicious. By looking at data provided by @DragonBluep I was able to identify the correct size for AR9380, AR9287 WiFis. Furthermore, PowerCloud Systems CAP324 has a AR9344 WiFi. Signed-off-by: Nick Hainke <vincent@systemli.org>
* linux-firmware: ath11k: add symlink for WCN6855 hw2.1Robert Marko2022-12-282-1/+2
| | | | | | | | WCN6855 exists in 2 HW revisions, but both use the same FW so upstream just has a symlink for hw2.1 to hw2.0 that I forgot to make. Fixes: b4d3694f81f4 ("linux-firmware: package ath11k consumer cards firmware") Signed-off-by: Robert Marko <robimarko@gmail.com>
* linux-firmware: update to 20221214Nick Hainke2022-12-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: f3c283e amdgpu: updated navi10 firmware for amd-5.4 ba115d4 amdgpu: updated yellow carp firmware for amd-5.4 b8aba70 amdgpu: updated raven2 firmware for amd-5.4 2b21c5e amdgpu: updated raven firmware for amd-5.4 fc9a1c9 amdgpu: updated PSP 13.0.8 firmware for amd-5.4 7d43336 amdgpu: updated GC 10.3.7 RLC firmware for amd-5.4 c089dab amdgpu: updated vega20 firmware for amd-5.4 75e3494 amdgpu: updated PSP 13.0.5 firmware for amd-5.4 31c5734 amdgpu: add VCN 4.0.0 firmware for amd-5.4 a735158 amdgpu: add SMU 13.0.0 firmware for amd-5.4 0bef6bb amdgpu: Add SDMA 6.0.0 firmware for amd-5.4 bb56d1a amdgpu: add PSP 13.0.0 firmware for amd-5.4 e32209f amdgpu: add GC 11.0.0 firmware for amd-5.4 613db81 amdgpu: add DCN 3.2.0 firmware for amd-5.4 1fc8f6c amdgpu: updated vega10 firmware for amd-5.4 2257447 amdgpu: updated beige goby firmware for amd-5.4 6aa0023 amdgpu: updated dimgrey cavefish firmware for amd-5.4 dd1225a amdgpu: updated vangogh firmware for amd-5.4 5cb010e amdgpu: updated picasso firmware for amd-5.4 edf9699 amdgpu: updated navy flounder firmware for amd-5.4 b7e83d9 amdgpu: updated green sardine firmware for amd-5.4 f820cc3 amdgpu: updated sienna cichlid firmware for amd-5.4 b77f539 amdgpu: updated arcture firmware for amd-5.4 dccfdf1 amdgpu: updated navi14 firmware for amd-5.4 5d1af6d amdgpu: updated renoir firmware for amd-5.4 13b9c94 amdgpu: updated navi12 firmware for amd-5.4 e9b8357 amdgpu: updated aldebaran firmware for amd-5.4 b4af754 sr150 : Add NXP SR150 UWB firmware 0707b2f brcm: add/update firmware files for brcmfmac driver 16c9630 rtl_bt: Update RTL8821C BT(USB I/F) FW to 0x75b8_f098 80ed874 amdgpu: update sdma_5.2.7 firmware 32d8681 QCA: Add Bluetooth firmware for WCN785x This commit will add required Bluetooth firmware files for QCA WCN785x. The image version is 2.0.0-00515. cdf9499 linux-firmware: update firmware for MT7916 685ea4d linux-firmware: update firmware for MT7915 7f6279b i915: Add DMC v2.08 for DG2 391fb47 amdgpu: update green sardine DMCUB firmware de854c9 i915: Add DMC v2.10 for MTL daff404 linux-firmware: update firmware for MT7986 70494e3 linux-firmware: update firmware for mediatek bluetooth chip (MT7921) 750c0dc linux-firmware: update firmware for MT7921 WiFi device Signed-off-by: Nick Hainke <vincent@systemli.org>
* kernel: fix ethernet regression on mt7986Felix Fietkau2022-12-282-6/+6
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* uboot-envtools: add support for ramips Asus RX-AX53UFelix Baumann2022-12-281-0/+1
| | | | | | | | | Adds uboot-envtools support for ramips Asus RX-AX53U now that partition can be correctly read. Signed-off-by: Felix Baumann <felix.bau@gmx.de> [ improve commit title and description ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ramips: add support for read/write uboot env to Asus RX-AX53UFelix Baumann2022-12-281-2/+11
| | | | | | | | | | | | | | | | | | Add support for read/writing uboot env by renaming the second partition to its stock label "nvram" and remove the deemed unnecessary "read-only". Split the first partition "u-boot" in two, in order to allow `fw_setenv` safe write-access to the uboot environment variables. This implements hauke's request from [1]. Based on the patch provided by Shiji Yang. [1] https://github.com/openwrt/openwrt/pull/10400#discussion_r945153224 Co-Authored-By: Shiji Yang <yangshiji66@qq.com> Signed-off-by: Felix Baumann <felix.bau@gmx.de> [ improve commit title and description, fix some whitespace problem ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* realtek: Fix reset register accessBirger Koblitz2022-12-282-2/+2
| | | | | | | | | | | The reset register on RTL93xx not merely have bits to execute a reset of a hardware component, but also configuration bits for reset procedures. Keep them during executing a reset. Signed-off-by: Birger Koblitz <git@birger-koblitz.de> Signed-off-by: Olliver Schinagl <oliver@schinagl.nl> [backport to 5.10 kernel] Signed-off-by: Sander Vanheule <sander@svanheule.net>
* bcm27xx: fix BCMGENET kernel configÁlvaro Fernández Rojas2022-12-282-0/+54
| | | | | | | | | | | Revert backported upstream commits 421f8663b3a7 and 8d820bc9d12b, which have introduced a regression in BCMGENET kconfig that disabled the network driver for the Raspberry Pi. Fixes: 0c405bceba11 ("kernel: bump 5.15 to 5.15.85") Fixes: e9008223268c ("kernel: bump 5.15 to 5.15.84") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: mediatek: fix WED offload regression on MT7622Felix Fietkau2022-12-271-0/+55
| | | | | | Fix dealing with DSA untagging offload Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: mediatek: improve ethernet fix for dealing with small fragmentsFelix Fietkau2022-12-272-21/+37
| | | | | | | Replace the workaround on MT7986 with a proper fix. Software workaround is still needed on older chips. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: allow sharing the incoming DAS port across multiple interfacesFelix Fietkau2022-12-271-0/+298
| | | | | | Use the NAS identifier to find the right receiver context on incoming messages Signed-off-by: Felix Fietkau <nbd@nbd.name>
* realtek: Reduce variable scopesOlliver Schinagl2022-12-2712-443/+335
| | | | | | | | | | | | | | Linus prefers to have loop initializers nice and tightly scoped. In OpenWRT this has been possible since 41a1a652fbd4 ("kernel: backport gnu11 upgrade"). This patch cleans up variable scope while trying to do the above for 'simple for loops'. This cleans up and simplifies some functions and code, and pulls in variables to a smaller scope. Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
* realtek: Cleanup MakefilesOlliver Schinagl2022-12-279-31/+110
| | | | | | | Our current Makefiles a little bit messy and can be improved somewhat, both in whitespace and in style. Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
* realtek: Replace C++ style commentsOlliver Schinagl2022-12-2720-964/+966
| | | | | | | The only exception to C++ style comments are SPDX license identifier markers at the start of C files (even headers have C style markers). Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
* realtek: Whitespace and codestyle cleanupOlliver Schinagl2022-12-2725-810/+767
| | | | | | | | Fix some ugly whitepsaces and codestyle issues around the realtek sources. While this is by no means perfect, it catches what it caught. Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
* realtek: add cond_resched to loops accessing the FDB tableJan Hoffmann2022-12-274-0/+12
| | | | | | | | | A full loop accessing all FDB entries can take several milliseconds (on RTL839x about 20 ms), so give other kernel tasks a chance to run. This is especially important for rtl83xx_port_fdb_dump which is itself called in a loop for all ports by the kernel. Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: restructure rtl_table_read/writeJan Hoffmann2022-12-274-28/+62
| | | | | | | | | | | | | | | | These two functions are identical apart from writing different values to the read/write bit. Create a new function rtl_table_exec to reduce code duplication. Also replace the unbounded busy-waiting loop. The new implementation may sleep, but as the hardware typically responds before the first poll, any callers doing many table accesses still need to make sure not to block other kernel tasks themselves. So far, polling timeout errors are only handled by logging an error, but a return value is added to allow proper handling in the future. Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: simplify log messages in rtl83xx_mdio_probeJan Hoffmann2022-12-272-14/+2
| | | | | | | | | | This function currently prints three messages for every switch port at KERN_INFO level. This takes a considerable amount of time during bootup and can even trigger an external watchdog. Replace these log messages by a single one at KERN_DEBUG level. Signed-off-by: Jan Hoffmann <jan@3e8.eu>
* realtek: don't set L2LEARNING flag in rtl83xx TX headerJan Hoffmann2022-12-272-4/+4
| | | | | | | | | | | | | | | | | | | As learning for the CPU port is now disabled globally, the bit in the TX header doesn't have any effect anymore. Remove it to make the header consistent with the global configuration. Originally, this change was intended to be applied before commit eb456aedfe24 ("realtek: use assisted learning on CPU port"), which is why the commit message incorrectly mentions that the TX header already disables learning. The reason for disabling learning on the CPU port in the first place is that it doesn't work correctly when packets are trapped to the CPU and then forwarded by the CPU to other ports. In that case, the switch would incorrectly learn the CPU port as source. An example that triggered this issue are Multicast Listener Reports and IGMP membership reports. Signed-off-by: Jan Hoffmann <jan@3e8.eu>