aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* x86: generic: config-6.6: add/remove default symsJohn Audia2024-05-05
| | | | | | | | Add new default and remove deprecated symbol introduced by 6.6.30[1] 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v6.6.30&id2=v6.6.29 Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: bump 6.6 to 6.6.30John Audia2024-05-05
| | | | | | | | | | | | | | | | | | | | | Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.30 Removed upstreamed: ipq806x/patches-6.6/130-mtd-rawnand-qcom-Fix-broken-misc_cmd_type-in-exec_op.patch[1] Manually rebased: generic/pending-6.6/760-net-core-add-optional-threading-for-backlog-processi.patch mediatek/patches-6.6/941-arm64-dts-mt7986-move-cpuboot-in-a-dedicated-node.patch All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.30&id=87fc30db0a2bb300de289dae7c5579cc27a3cbbd Build system: x86/64 Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, flogic/glinet_gl-mt6000 Run-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, flogic/glinet_gl-mt6000 Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: fix corrupted ethernet header on bridge multicast-to-unicastFelix Fietkau2024-05-05
| | | | | Fixes: 45a8e962a591 ("kernel: fix crash with multicast-to-unicast and fraglist GRO") Signed-off-by: Felix Fietkau <nbd@nbd.name>
* tools: pkgconf: provide prefix for host and hostpkg stagind directoryChristian Marangi2024-05-05
| | | | | | | | | | | Some package might require to fix their pkg-config file to point to host or hostpkg file. This is the case for glib2 library that provides with pkg-config variables, tools to generates files from xml. Those tools should use the host binary instead of the targets one to correctly build packages that makes use of such tools. Link: https://github.com/openwrt/openwrt/pull/15134 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ath79: refresh patchesRobert Marko2024-05-05
| | | | | | | CI is telling us that we need to refresh the patches, so lets do so. Link: https://github.com/openwrt/openwrt/pull/15382 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: merge DTS for Linksys WHW03 V1 and V2Rodrigo Balerdi2024-05-05
| | | | | | | | No changes other than the merging itself are intended in this commit. Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com> Link: https://github.com/openwrt/openwrt/pull/15345 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: clean up Linksys WHW03 V2 DTSRodrigo Balerdi2024-05-05
| | | | | | | | Apply stylistic changes to facilitate DTS merging with WHW03 V1. Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com> Link: https://github.com/openwrt/openwrt/pull/15345 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: add support for Linksys WHW03 V1Rodrigo Balerdi2024-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware: ========= SOC: Qualcomm IPQ4019 WiFi 1: QCA4019 IEEE 802.11b/g/n WiFi 2: QCA4019 IEEE 802.11a/n/ac WiFi 3: QCA9886 IEEE 802.11a/n/ac Bluetooth: Qualcomm CSR8510 (A10) Zigbee: Silicon Labs EM3581 NCP + Skyworks SE2432L Ethernet: Qualcomm Atheros QCA8072 (2-port) Flash: Samsung KLM4G1FEPD (4GB eMMC) RAM (NAND): 512MB LED Controller: NXP PCA9633 (I2C) Buttons: Single reset button (GPIO). Ethernet: ========= The device has 2 ethernet ports, configured as follows by default: - left port: WAN - right port: LAN Wifi: ===== The Wifi radios are turned off by default. To configure the router, you will need to connect your computer to the LAN port of the device. Bluetooth and Zigbee: ===================== Configuration included but not tested. Storage: ======== For compatibility with stock firmware, all of OpenWrt runs in a 136 MiB eMMC partition (of which there are two copies, see below). You can also use partition /dev/mmcblk0p19 "syscfg" (3.4 GiB) any way you see fit. During very limited tests, stock firmware did not mount this partition. However, backing up its stock content before use is recommended anyway. Firmware: ========= The device uses a dual firmware mechanism: it automatically reverts to the previous firmware after 3 failed boot attempts. You can switch to the inactive firmware copy by changing the "boot_part" U-Boot environment variable. You can also do it by turning on the device for a couple of seconds and then back off, 3 times in a row. Installation: ============= OpenWrt's "factory" image can be installed via the stock web UI: 1. Login to the UI. (The default password is printed on the label.) 2. Enter support mode by clicking on the "CA" link at the bottom. 3. Click "Connectivity", "Choose file", "Start", and ignore warnings. This port is based on work done by flipy (https://github.com/flipy). Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com> Link: https://github.com/openwrt/openwrt/pull/15345 Signed-off-by: Robert Marko <robimarko@gmail.com>
* rockchip: add Bananapi-R2 Pro board supportAntonio Flores2024-05-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware spec: - Rockchip RK3568 Quad-core ARM Cortex-A55 CPU 2GHz - GPU Mali-G52 1-Core-2EE OpenGL ES3.2 Vu1kn 1.1 OpenCL 2.0 - Memory2G DDR3 SDRAM (option 4G) - Storage Onboard 16GB eMMC Flash, Micro SD-Card slot, SATA 3.0 Port,SPI flash - Network 5 x 10/100/1000 Mbit/s Ethernet MT7531 - Display 1 HDMI port, 2 DSI interface(1 DSI can change to LVDS by software) - Camera 1 CSI camera interface - Audio Output HDMI & I2S & Speaker & Headphone - USB port USB 3.0 PORT (x2), micro USB OTG (x1) - PCIE 1 mini pcie interface & 1 M.2 key-e interface - Remote IR Receiver (x1) - GPIO 40 Pin Header : GPIO (x28) and Power (+5V, +3.3V and GND). - Switches Reset button, Power button, U-boot button - LED Power Status - Power Source 12 volt 2A via DC Power Installation: Uncompress the OpenWrt sysupgrade and write image to the SD card using dd (dd if=*.img of=/*) Boot from the SD card 1-hold down the MaskRom button 2-Connect DC power 3-Wait 5 seconds, release the button. eMMC Installation: 1-Uncompress the OpenWrt sysupgrade image 2-fash to eMMC dd if=openwrt-rockchip-armv8-sinovoip_bpi-r2-pro-squashfs-sysupgrade.img of=/dev/mmcblk1 sync 3-remove SD card reboot Signed-off-by: Antonio Flores <antflores627@gmail.com>
* kernel: add kmod-ata-ahci-dwcAntonio Flores2024-05-05
| | | | | | | | Add kmod-ata-ahci-dwc for the rockchip target. https://github.com/torvalds/linux/commit/33629d35090f5ce2b1b4ce78aa39954c603536d5 Signed-off-by: Antonio Flores <antflores627@gmail.com>
* rockchip: enable MT7531 and RTC driversAntonio Flores2024-05-05
| | | | | | This patch enable MT7531 switch and RTC drivers for BPI-R2 Pro. Signed-off-by: Antonio Flores <antflores627@gmail.com>
* uboot-rockchip: add Bananapi-R2 Pro supportAntonio Flores2024-05-05
| | | | | | add uboot support for Bananapi-R2 Pro Signed-off-by: Antonio Flores <antflores627@gmail.com>
* toolchain: glibc: Update glibc 2.38 to recent HEADHauke Mehrtens2024-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 23514c72b7 syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6246) d0338312aa syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6779) d37c2b20a4 syslog: Fix integer overflow in __vsyslog_internal (CVE-2023-6780) 30e546d76e x86_64: Optimize ffsll function code size. 18876c9ff5 S390: Fix building with --disable-mutli-arch [BZ #31196] 6f68075869 sparc: Fix broken memset for sparc32 [BZ #31068] 0e383d2d4e sparc64: Remove unwind information from signal return stubs [BZ#31244] aac57faf54 sparc: Fix sparc64 memmove length comparison (BZ 31266) 0c5e5bace5 sparc: Remove unwind information from signal return stubs [BZ #31244] b09073e631 arm: Remove wrong ldr from _dl_start_user (BZ 31339) 506e47da1d malloc: Use __get_nprocs on arena_get2 (BZ 30945) ee4806e978 S390: Do not clobber r7 in clone [BZ #31402] 5753cda1ca linux: Use rseq area unconditionally in sched_getcpu (bug 31479) 0518bb0c16 LoongArch: Correct {__ieee754, _}_scalb -> {__ieee754, _}_scalbf 5456ff5d80 Add HWCAP2_MOPS from Linux 6.5 to AArch64 bits/hwcap.h d8a2b56b4f AArch64: Add support for MOPS memcpy/memmove/memset 25b66e8c4a AArch64: Cleanup ifuncs 1521237c32 AArch64: Cleanup emag memset 156e44845f AArch64: Add memset_zva64 a08ff92294 AArch64: Remove Falkor memcpy 168ae58e6e aarch64: correct CFI in rawmemchr (bug 31113) 1bf17ce978 aarch64: fix check for SVE support in assembler 92da7c2cfe AArch64: Check kernel version for SVE ifuncs 20534f8176 powerpc: Fix ld.so address determination for PCREL mode (bug 31640) e1135387de iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence (CVE-2024-2961) 61484011e7 sparc: Remove 64 bit check on sparc32 wordsize (BZ 27574) 78d9f91da6 login: Check default sizes of structs utmp, utmpx, lastlog 68bff88592 login: structs utmp, utmpx, lastlog _TIME_BITS independence (bug 30701) decc9f504a nptl: Fix tst-cancel30 on kernels without ppoll_time64 support 29e20bd122 i386: ulp update for SSE2 --disable-multi-arch configurations 5968aebb86 CVE-2024-33599: nscd: Stack-based buffer overflow in netgroup cache (bug 31677) 541ea5172a CVE-2024-33600: nscd: Do not send missing not-found response in addgetnetgrentX (bug 31678) 2ae9446c1b CVE-2024-33600: nscd: Avoid null pointer crashes after notfound response (bug 31678) 71af8ca864 CVE-2024-33601, CVE-2024-33602: nscd: netgroup: Use two buffers in addgetnetgrentX (bug 31680) e9f05fa1c6 elf: Also compile dl-misc.os with $(rtld-early-cflags) Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* rockchip: add driver for hardware RNGDaniel Golle2024-05-04
| | | | | | | | | | | | | | | | Rockchip SoCs used to have a random number generator as part of their crypto device, and support for it has to be added to the corresponding driver. Newer Rockchip SoCs like the RK3568 have an independent True Random Number Generator device. Import pending patchset which adds a driver for it, include it in Kconfig and enable it in the device tree. Doing so significantly reduces the time needed to boot devices based on those SoCs, from about 27 seconds until Ethernet is up and running to less than 13 seconds with a minimal snapshot image. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* libunwind: add support for loongarch64Weijie Gao2024-05-04
| | | | | | | Modify package depends to allow building for loongarch64. Also fix for building with musl. Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* openssl: add linux64-loongarch64 into the targets listWeijie Gao2024-05-04
| | | | | | | Add "linux64-loongarch64-openwrt" into openssl configurations to enable building on loongarch64 machines. Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* grub2: add EFI support for loongarch64Weijie Gao2024-05-04
| | | | | | Add a new package for loongarch64 which only supports EFI. Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* kernel: modules: video: adapt for loongarch64Weijie Gao2024-05-04
| | | | | | | | | | | * Allow kmod-acpi-video to be built for loongarch64: The x86-specific CONFIG_ACPI_WMI will be split from default kmod-acpi-video as a board-specific addition. * Allow kmod-drm-amdgpu to be built for loongarch64: Also add loongarch64-specific configs and modules. Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* kernel: modules: netdevices: add depedency required for loongarch64Weijie Gao2024-05-04
| | | | | | | Add TARGET_loongarch64 as dependency for kmod-mdio-devres, kmod-mdio-gpio and kmod-switch-rtl8366-smi Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* toolchain: Disable libtsan and liblsan sanitizer on loongarch64Weijie Gao2024-05-04
| | | | | | libtsan and liblsan are not supported by glibc on loongarch64 Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* loongarch64: new targetWeijie Gao2024-05-04
| | | | | | | | | | | | | | | | | | | | | | | | Add target for Loongson LoongArch64-based boards. LoongArch is a new RISC ISA developed by Loongson. It's a bit like MIPS or RISC-V. LoongArch includes both 32-bit and 64-bit versions (LoongArch32/LoongArch64). Loongson 3A5000 and 3A6000 are the two existing CPUs of LoongArch64 and is used for PC products. It's BIOS supports ACPI and UEFI-only boot. These CPUs supports SMP and SMT. At present only LoongArch64 is supported by linux kernel. Toolchain requirement: binutils >= 2.40 gcc >= 13.1 For details, please check the following links: https://lwn.net/Articles/861951/ https://loongson.github.io/LoongArch-Documentation/README-EN.html Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* toolchain/musl: fix loongarch64 ldso file nameWeijie Gao2024-05-04
| | | | | | | | | | | | | | | | GCC has changed musl dynamic linker name from ld-musl-loongarch-lp64d.so.1 to ld-musl-loongarch64.so.1 recently [1]. This means there are two dynamic linker names will be used across different ersions of GCC. But musl 1.2.5 only supports the new name while the GCC we're currently using uses the old name. To maintain compatibility with all versions of GCC, the musl is then patched to generate two symbolic links to libc.so with both old and new names. [1] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=8bccee51f0deac64b79cd9ad75df599422f4c8ff Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* toolchain/gcc: fix loongarch64 ldso file nameWeijie Gao2024-05-04
| | | | | | | | | | | | GCC has changed musl dynamic linker name from ld-musl-loongarch-lp64d.so.1 to ld-musl-loongarch64.so.1 recently [1]. Meanwhile musl 1.2.5 only supports the new name. So it's better to follow the new name. [1] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=8bccee51f0deac64b79cd9ad75df599422f4c8ff Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* Revert "mediatek: backport mt7622 dts fix for mt7531 switch id to 6.1"Daniel Golle2024-05-04
| | | | | | | | | This reverts commit 3fe239fcf8d0ea91b947af25fd28a6133aba93c6. Now that we switched to Linux 6.6 this is no longer needed, and resulted in a left-over file because it's removal was not included in the commit removing all the other files intended for Linux 6.1. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* sunxi: add support for Lichee Pi Zero Dock (V3s) boardZoltan HERPAI2024-05-04
| | | | | | | | | | | | | | CPU: Allwinner V3s single-core Cortex-A7 @ 1.2GHz Memory: 64Mb DDR2 integrated into SoC package Storage: 1x SDcard on board, 1x SDcard on dock Network: 10/100M ethernet Other: 4x buttons via LRADC, CSI Flashing instructions: Standard sunxi SD card installation procedure - copy image to SD card, insert into SD card slot on the device and boot. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* ramips: remove unnecessary macros for previous kernel versionsMieczyslaw Nalewaj2024-05-03
| | | | | | | | | | Remove unnecessary 'if' macros for previous kernel versions. After removing kernel 6.1 the kernel is always >= 6.6 so the conditions are unnecessary. Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com> [removed some more and also no longer include version.h] Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ramips: switch to Linux 6.6Daniel Golle2024-05-03
| | | | | | | Switch to Linux kernel version 6.6 and drop configs, files and patches for Linux 6.1. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: remove macros for previous kernel versionsDaniel Golle2024-05-03
| | | | | | | | Remove unnecessary 'if' macros for previous kernel versions. After removing kernel 6.1 the kernel is always >= 6.6 so the conditions are unnecessary. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: switch to Linux 6.6Daniel Golle2024-05-03
| | | | | | | Switch to Linux kernel version 6.6 and drop configs, files and patches for Linux 6.1. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: 6.6: fix and simplify blkdevparts= cmdline parsingDaniel Golle2024-05-03
| | | | | | | Import pending patch to fix the cmdline parsing of the "blkdevparts=" parameter which has been broken somewhen between Linux 6.1 and Linux 6.6. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: add missing check for TCP GROFelix Fietkau2024-05-03
| | | | | | | | Need to check if the skb data buffer is linear up to (and including) the TCP header. Fixes: https://github.com/openwrt/openwrt/issues/15359 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: backport upstream GRO fixesFelix Fietkau2024-05-03
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mediatek: backport mt7622 dts fix for mt7531 switch id to 6.1Felix Fietkau2024-05-03
| | | | | Fixes: ac8bfe316b81 ("generic: 6.1, 6.6: mt7530: import accepted patches") Signed-off-by: Felix Fietkau <nbd@nbd.name>
* bpf: fix broken inclusion of system includeChristian Marangi2024-05-03
| | | | | | | | | | | | | | | | Commit d82c5884c616 ("treewide: make use of new toolchain define") changed $(TOOLCHAIN_DIR)/include to the new variable $(TOOLCHAIN_INC_DIRS) that now can contain multiple entry. Because of this only the first include in $(TOOLCHAIN_INC_DIRS) was actually included with -isystem, making the other producing warning with ignored inputs. Fix this by parsing each entry in $(TOOLCHAIN_INC_DIRS) and adding the -isystem prefix to correctly include them in the BPF_KERNEL_INCLUDE. Fixes: d82c5884c616 ("treewide: make use of new toolchain define") Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* xdp-tools: fix wrong matching for OPENWRT_VERBOSEChristian Marangi2024-05-03
| | | | | | | | | | | To enable verbose log for xdp-tools compilation, we check for "c" in the OPENWRT_VERBOSE, but verbose.mk supports only "w" and "s" for V=1 and V=99. Fix the wrong matching and correctly enable verbose output matching for "s". Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* xdp-tools: refresh patchesChristian Marangi2024-05-03
| | | | | | Refresh xdp-tools patches with make package/xdp-tools/refresh Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* sunxi: drop 6.1 supportZoltan HERPAI2024-05-03
| | | | | | | Now that 6.6 is the default, remove the 6.1 config and the hack that was required for the arm32 DTS dir change. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* sunxi: switch default to 6.6Zoltan HERPAI2024-05-03
| | | | | | Switch the default kernel to 6.6. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* opensbi: bump to 1.4Zoltan HERPAI2024-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade the OpenSBI firmware used by RISC-V CPUs to 1.4. Runtime-tested: - d1 (Lichee RV) - sifiveu (SiFive Unleashed) Updates since last release: 1.4: Synopsys DesignWare APB GPIO driver Zicntr and Zihpm support Console print improvements Smepmp support Simple FDT based syscon regmap driver Syscon based reboot and poweroff driver Non-contiguous hpm counters Smcntrpmf support Full sparse hartid support IPI improvements RFENCE improvements Zkr support Andes custom PMU support 1.3.1: ACLINT driver fix for disabled CPUs SBI PMU fix for out-of-bound access Designware GPIO driver 1.3: Allow platform to influence cold boot HART selection Starfive JH7110 platform support Split RX and RW firmware regions Advertise non-retentive suspend for allwinner D1 platform Byteorder/endianness conversion macros SBI debug console extension (Experimental) Configure the PMA regions for RZ/Five platform SBI system suspend extension (Experimental) SBI PMU platform firmware events (Experimental) SBI CPPC extension (Experimental) Optimized remote TLB flushes Simple heap for boot time memory allocations Bring back no-map DT property for reserved memory nodes Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* ipq40xx: fritzrepeater-1200: fix MDIO and PHY probingRobert Marko2024-05-02
| | | | | | | | | | | | | | AVM FRITZ!Repeater 1200 does not use QCA807x PHY at all and thus it disables all of the individual PHY nodes, however this is not enough anymore since the conversion to PHY package. Now its now enough to disable the PHY-s in the package alone, but the PHY package node itself must also be disabled. Fixes: 1b931c33a28e ("ipq40xx: adapt to new Upstream QCA807x PHY driver") Fixes: #15355 Link: https://github.com/openwrt/openwrt/pull/15365 Signed-off-by: Robert Marko <robimarko@gmail.com>
* mediatek: increase size of the sdcard image to 512 MiBDaniel Golle2024-05-02
| | | | | | | | | | | | | | | | | | | | | Increasing the size of the rootfs_data filesystem has become a ever repeating discussion and seems to be the most important thing for users of the MediaTek-based BananaPi boards. Using the whole remaining size of a microSD or the eMMC for rootfs_data doesn't make sense for many reasons, but neither does the current default of 104 MiB for the 'rootfs' partition size. Increase the 'rootfs' partition size to 448 MiB which will result in the sdcard image being exactly 512 MiB. Finding a microSD card smaller than 512 MiB and still working could anyway be difficult in 2024. That will allow users to install even bloatware written in Go or other space-hungry languages while still leaving most of the space unallocated for additional partitions or volumes to be used for persistent user data. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* bmips: Build U-Boot into the XG6846 targetLinus Walleij2024-05-01
| | | | | | | | | | | | | | | | | | It appears that the CFE boot loader found in the XG6846 cannot load kernels over a certain size, and the old relocate hack is not working. What to do? We can build a small U-Boot into the image, make CFE boot that, place the kernel immediately after U-Boot, and use U-Boot to boot the system instead. The compiled u-boot.bin becomes around ~300KB and with LZMA compression it will swiftly fit into 128KB, so we use two 64KB erase blocks right after the CFE to store an imagetag:ed U-Boot. Reviewed-by: Paul Donald <newtwen+github@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* uboot-bmips: Add U-Boot for the BMIPS targetLinus Walleij2024-05-01
| | | | | | | | This is needed to boot the BCM6238-based Inteno XG6846. Currently this is restricted to the XG6846 board. Reviewed-by: Paul Donald <newtwen+github@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* bmips: Add Inteno XG6846 targetLinus Walleij2024-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a device tree and build options for the XG6846 switch/router to the BMIPS target. Hardware: - SoC: Broadcom BCM6328 - CPU: BMIPS4350 V7.5 - RAM: 64 MB DDR - NOR Flash: 16 MB parallel (CFE and OS) - Ethernet LAN: 4x 1Gbit - Ethernet WAN: 2x 1Gbit, fiber and TP - Buttons: reset - LEDs: 7 or 8, power and USB LEDs are GPIO-based, the LAN LEDs are controlled by the Marvell DSA Switch. - USB: on some versions - UART: yes The device ODM (original device manufacturer) is XAVi http://www.xavi.com.tw/ It is possible to boot the initramfs version openwrt-bmips-bcm6328-inteno_xg6846-initramfs.elf from CFE by interrupting the boot on the UART console and downloading it from a TFTP server e.g.: CFE> r 192.168.1.2:openwrt-bmips-bcm6328-inteno_xg6846-initramfs.elf Installation to target flash is not possible using CFE because the image becomes too big for the CFE version found in these devices. A separate U-Boot two-stage solution exists for actually booting the device. This device is called a "managed ethernet switch" by the vendor and "media converter" or "fiber modem" by some of the ISPs using it: the main purpose is to convert fiber connections to ethernet, most devices just act as switches bridging the fiber SFP to ethernet TP. The device has a Marvell MV88E6352 DSA switch managed by a BCM6328 BMIPS SoC. This port makes it possible to use the XG6846 to grab an IP number from the fiber connection and use all four LAN connections out, turning it into a proper router. This support is based mostly on the observations by the people on the forum thread "Help with Inteno XG6846" where users NPeca75, mrhaav, systemcrash and csom helped out to reverse engineer the device. Then I made it work on the BMIPS target, figured out the two-level switch hierarchy and settings. Link: https://forum.openwrt.org/t/help-with-inteno-xg6846/68276/14 Signed-off-by: Paul Donald <newtwen+github@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* bmips: bcm6328: Compile in uImage splitterLinus Walleij2024-05-01
| | | | | | | | | Since we split the Inteno XG6846 "firmware" partition with the uImage MTD splitter, we need to compile in support for this splitting method into the BCM6328. Reviewed-by: Paul Donald <newtwen+github@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* bcm27xx: correct cmdline.txt consoles for procdElbert Mai2024-05-01
| | | | | | | | | | | | | | | | | | | | | | | Commit [ca8c30208d5e][1] updates procd to handle muliple "console=" on the kernel command line. This affects Raspberry Pi builds because cmdline.txt specifies a UART console and a virtual console on HDMI, in that order. When procd finds multiple consoles on the command line, it attempts to open /dev/console. Linux uses the [last console][2] for /dev/console, so procd opens the virtual console on Raspberry Pi. This completely disables the UART console and causes [strange behavior][3] on the virtual console. Prior to ca8c30208d5e, procd would always open the first console, which is the UART console. The simplest fix without reverting ca8c30208d5e is to swap the order of console options in cmdline.txt. By putting the UART console last, procd handles the serial console correctly as before. [1]: https://git.openwrt.org/?p=project/procd.git;a=commit;h=ca8c30208d5e1aaa2c0e3f732c4c9944735e9850 [2]: https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html [3]: https://forum.openwrt.org/t/rasberry-pi-4-model-b-keyboards-gone-wild/195594 Signed-off-by: Elbert Mai <code@elbertmai.com>
* xdp-tools: fix compilation wrongly using host headerChristian Marangi2024-05-01
| | | | | | | | | | | | | | | | | | | | | | Currently it's needed to have gcc-multilib on the host to correctly compile xdp-tools. This is wrong and means that we are using host header to compile a tool. By some searching in how the makefile works it was discovered that BPF_CFLAGS were not used and required to be appended to config.mk Only one single header was added but we should include each BPF_CFLAGS from bpf.mk. To make this some patching to bpf-header were required and some patches to xdp-tools were required. Also it's needed to pass the correct target to BPF_CFLAGS. With the following changes xdp-tools can correctly compile with each header from bpf-headers and should not use any host header. Co-Developed-by: Andre Heider <a.heider@gmail.com> Signed-off-by: Andre Heider <a.heider@gmail.com> Link: https://github.com/openwrt/openwrt/pull/11825 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* bpf-headers: fix use of netlink.h headerChristian Marangi2024-05-01
| | | | | | | | | netlink.h header have NL_SET_ERR_MSG_MOD that is tied to kmods. We don't need kmods on bpf tools and this cause compilation error if the header is included. Fix it by dropping NL_SET_ERR_MSG_MOD. Link: https://github.com/openwrt/openwrt/pull/11825 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ucode: fix ubus defer when running from within eloop (integrated with uloop)Felix Fietkau2024-05-01
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: fix a null pointer dereference in wpa_supplicant on teardownFelix Fietkau2024-05-01
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>