aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ramips: add support for ALFA Network AX1800RMPiotr Dymacz2023-09-114-28/+256
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ALFA Network AX1800RM (FCC ID: 2AB877621) is a dual-band Wi-Fi 6 (AX1800) router, based on MediaTek MT7621A + MT79x5D platform. Specifications: - SOC: MT7621A (880 MHz) - DRAM: DDR3 256 MiB (Nanya NT5CC128M16JR-EK) - Flash: 16 MiB SPI NOR (EN25QH128A-104HIP) - Ethernet: 4x 10/100/1000 Mbps (SOC's built-in switch) - Wi-Fi: 2x2:2 2.4/5 GHz (MT7905DAN + MT7975DN) (MT7905DAN doesn't support background DFS scan/BT) - LED: 6x green, 1x green/red - Buttons: 2x (reset, WPS) - Antenna: 4x external, non-detachable omnidirectional - UART: 1x 4-pin (2.54 mm pitch, J4, not populated) - Power: 12 V DC/1 A (DC jack) MAC addresses: LAN: 00:c0:ca:xx:xx:4e (factory 0x4, +2) WAN: 00:c0:ca:xx:xx:4f (factory 0x4, +3) 2.4 GHz: 00:c0:ca:xx:xx:4c (factory 0x4, device's label) 5 GHz: 00:c0:ca:xx:xx:4c (factory 0xa) Flash instructions for web-based U-Boot recovery: 1. Power the device with WPS button pressed and wait around 10 seconds. 2. Setup static IP 192.168.1.2/24 on your PC. 3. Go to 192.168.1.1 in browser and upload 'recovery' image. The device runs LEDE 17.01 (kernel 4.4.x) based firmware with 'failsafe' mode available which allows alternative upgrade method: 1. Run device in 'failsafe' mode and change password for default user. 2. SSH to the device, transfer 'sysupgrade' image and perform upgrade in forced mode, without preserving settings: 'sysupgrade -n -F ...'. Other notes: If you own early version of this device, the vendor firmware might refuse OpenWrt image because of missing custom header. In that case, ask vendor's customer support for stock firmware without custom header support/requirement. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com> (backported from commit f1aaa267f0ea18ffe5840f3ce46a48be123d2f62)
* ramips: pinctrl: support requesting different functions for same groupShiji Yang2023-09-041-0/+45
| | | | | | | | | | | MT7620 wireless radio needs change the pin group function between "gpio" and "pa" during the calibration process. However, ralink pinctrl driver doesn't support requesting different functions for the same group. This patch enables pinctrl consumers to perform such operations. Signed-off-by: Shiji Yang <yangshiji66@qq.com> (cherry picked from commit b4ea49ad442d2884d0b86009f404f125635c4153)
* mediatek: mt7622: set DEVICE_DTC_ADDR for BPi-R64Daniel Golle2023-09-041-0/+1
| | | | | | | | | Relocating the device tree is required for being apply to apply device tree overylay at boot. Fixes: 34bb33094a ("mediatek: use updated device tree overlay mechanism for BPi-R64") Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit a8cbee8e2d11dd139c1dea1f7289bdf28b1e2b52)
* mediatek: filogic: remove stray quoteDaniel Golle2023-09-041-1/+1
| | | | | | | | | When adapting the network configuration for MT7988 RFB a stray quote was left in a script. Remove it to fix generating the default network configuration. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 8f5986355cdc5df921ef8232f559ca7bfb18f1ed)
* generic: sync MediaTek Ethernet driver with upstreamDaniel Golle2023-09-0463-3036/+4883
| | | | | | | | Import commits from upstream Linux replacing some downstream patches. Move accepted patches from pending-{5.15,6.1} to backport-{5.15,6.1}. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit f631c7bbb16f1d39d59c4cdf3f7189abab4fd9c6)
* mediatek: add support for Ubiquiti UniFi 6 LR v3Daniel Golle2023-09-047-27/+316
| | | | | | | | | | Some recent models of the Ubiquiti Networks UniFi 6 LR access point come with a RealTek RTL8211FS 1000M/100M/10M PHY instead of the Aquantia AQR112 2500M/1000M/100M/10M PHY used in both v1 and v2. Add build for this variant so we can support Ethernet with the PHY. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit a0f4eadf6a25fb54c189bde91425673e11125d35)
* mediatek: generate bootloader artifacts for mt7988_rfbDaniel Golle2023-09-0418-284/+995
| | | | | | | | Switch to OpenWrt uImage.FIT bootmethod and include various bootloader artifacts with the generated binaries. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 035a88ae5564ac680c64ed7219b8b66733ac84c6)
* mediatek: improve mt7981.dtsiDaniel Golle2023-09-041-19/+52
| | | | | | | | * re-factor WED components to boot fine also on limited loaders * add LEDs of integrated GE PHY Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 3ef8760e876e09fa91b54a09b2a5003c175829d3)
* mediatek: filogic: improve pinctrl driversDaniel Golle2023-09-042-31/+32
| | | | | | | | Set correct pull-type data and add additional uart groups for MT7981. Assign functions to configure pin bias for MT7986. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 9f8fde216d994ce47b1eca15de190aa9b8f67b9a)
* mediatek: i2c: mt65xx: allow optional pmic clockDaniel Golle2023-09-041-0/+45
| | | | | | | | | | | | | | Using the I2C host controller on the MT7981 SoC requires 4 clocks to be enabled. One of them, the pmic clk, is only enabled in case 'mediatek,have-pmic' is also set which has other consequences which are not desired in this case. Allow defining a pmic clk even in case the 'mediatek,have-pmic' propterty is not present and the bus is not used to connect to a pmic, but may still require to enable the pmic clock. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 2544dc34f2a6e5721096ee62efa66d36d45b2dd1)
* mediatek: re-add dropped properties on BPi-R3Daniel Golle2023-09-043-11/+25
| | | | | | | | | | | | Unfortunately some device tree properties have slipped under the table when switching from our downstream device tree. Bring back 3W power for SFP cages and restore thermal trip points to make sense again. Fixes: 7a0ec001ff ("mediatek: sync MT7986 device trees with upstream") Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 06a150aed795066ce79a623011884cc0abf290f1)
* generic: backport initial LEDs hw control supportChristian Marangi2023-09-0449-32/+2708
| | | | | | | | | | | | | | Backport initial LEDs hw control support. Currently this is limited to only rx/tx and link events for the netdev trigger but the API got accepted and the additional modes are working on and will be backported later. Refresh every patch and add the additional config flag for QCA8K new LEDs support. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 0a4b309f41062ef40706162ae53b6428982a0685)
* kernel: bump 5.15 to 5.15.129John Audia2023-09-036-9/+9
| | | | | | | | | | | | | | | Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.129 All patches automatically rebased. Build system: x86_64 Build-tested: ramips/tplink_archer-a6-v3 Run-tested: ramips/tplink_archer-a6-v3 Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 1db566b6928447ff4c4f86ad1be7e0a6d5a58d16) [Refresh on top of OpenWrt 23.05] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 5.15 to 5.15.128John Audia2023-09-037-13/+13
| | | | | | | | | | | | | | | Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.128 All patches automatically rebased. Build system: x86_64 Build-tested: ramips/tplink_archer-a6-v3 Run-tested: ramips/tplink_archer-a6-v3 Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit e80a3875172178cdcc02d13826717413cc1534a8) [Refresh on OpenWrt 23.05] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: allow adding devices without hw offload to a hw flowtableFelix Fietkau2023-09-011-0/+29
| | | | | | | This allows supporting a mix of devices with or without hw offloading support Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry picked from commit c5b7be83168644f3cfadc7b0fbe471e1664b1069)
* mediatek: enable NMBM remapping for NWA50AX Pro UBIDavid Bauer2023-08-251-4/+0
| | | | | | | | | | Don't skip remapping of the UBI area for the ZyXEL NWA50AX Pro. This is due to the kernel being loaded from the UBI partition by U-Boot. Link: https://github.com/openwrt/openwrt/pull/13335 Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 6dc0675e5b9d59a882972b8d478ee9fa8496ae51)
* ath79: fix first reboot issue on Netgear WNDR4300 v2 and WNDR4500 v3Shiji Yang2023-08-243-3/+50
| | | | | | | | | | | | | | | | From the Netgear u-boot GPL code[1]. Bootloader always unconditionally marks block 768, 1020 - 1023 as bad blocks on each boot. This may lead to conflicts with the OpenWrt nand driver since these blocks may be good blocks. In this case, U-boot will override the oob of these blocks so that break the ubi volume. The system will be damaged after first reboot. To avoid this issue, manually skip these blocks by using "mtd-concat". [1] https://www.downloads.netgear.com/files/GPL/EX7300v2series-V1.0.0.146_gpl_src.tar.bz2.zip Fixes: https://github.com/openwrt/openwrt/issues/8878 Tested-by: Yousaf <yousaf465@gmail.com> Signed-off-by: Shiji Yang <yangshiji66@qq.com> (cherry picked from commit 12f53724c6575245cf8b2f0dc75d1b9b2e4fe488)
* ath79: rework Netgear nand devices image recipeShiji Yang2023-08-241-3/+4
| | | | | | | | | | | | | | | | | | | In Netgear u-boot GPL code, nand devices uses this formula to locate the rootfs offset. offset = (((128 + KERNEL_SIZE) / BLOCK_SIZE) + 1) * BLOCK_SIZE; Howerver, WNDR4500 source code incorrectly define the nand block size to 64k. In some cases, it causes u-boot can't get the correct rootfs offset, which result in boot failure. This patch workaround it by padding kernel size to (128k * n - 128 - 1). The additional char '\0' is used to ensure the (128 + KERNEL_SIZE) can't be divided by the BLOCK_SIZE. Fixes: https://github.com/openwrt/openwrt/issues/13050 Fixes: 3c1512a25d92 ("ath79: optimize the firmware recipe for Netgear NAND devices") Tested-by: Yousaf <yousaf465@gmail.com> Signed-off-by: Shiji Yang <yangshiji66@qq.com> (cherry picked from commit 0f9b8aa3f592b22e3f1d5f7d049e92653ba0f884)
* mediatek: filogic: wax220: cleanup device treeStefan Agner2023-08-221-51/+46
| | | | | | | | Fix compatible string to match what is supported upstream, fix alignment and order MTD partitions according to offset. Signed-off-by: Stefan Agner <stefan@agner.ch> (cherry picked from commit 4af06aaf33c9256a5d3e960fa5f6bddab2674c5a)
* mediatek: filogic: wax220: support factory imageStefan Agner2023-08-222-7/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable building a factory image which can be flashed through the OEM firmware's web interface. It seems that the web interface requires a minimum file size of 10MiB, otherwise it will not accept the image. The update image is a regular sysupgrade tarball packed in a Netgear encrypted image. The Netgear encrypted image is the same as used in WAX202 or WAX206, including the encryption keys and IV. This adds a script which creates the rootfs_data volume on first startup. This is required since the OEM firmware's sysupgrade scripts do not create such a paritition. Note that any script ordered after 70_initramfs_test will not get executed on initramfs. Hence this new script 75_rootfs_prepare won't create the rootfs_data volume when using the recovery initramfs. Also, this deletes the kernel_backup and rootfs_backup volumes in case we have to create the rootfs_data volumes. This makes sure that OpenWrt is the actual backup firmware instead of the stock firmware. References in WAX220 GPL source: https://www.downloads.netgear.com/files/GPL/WAX220-V1.0.2.8-gpl-src.tar.gz * package/base-files/files/lib/upgrade/nand.sh:186 Creation of rootfs_data is disabled * Uboot-upstream/board/mediatek/common/ubi_helper.c Automatic creation of UBI backup volumes Signed-off-by: Stefan Agner <stefan@agner.ch> (cherry picked from commit fa9d977f979461628161085dcd0e9dd8b9e2c66b)
* mediatek: enable NWA50AX Pro eth LEDsDavid Bauer2023-08-221-0/+3
| | | | | | | | | | | | | | Enable the ethernet LED's on the ZyXEL NWA50AX Pro to show link-state as well as activity. Both LED's are configured pulsing. AMBER | 10/100 GREEN | 1000 A+G | 2500 Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 4c0fdad7eabe7a5b81a7a1bd7f38dcadbe4f471a)
* mediatek: add missing packages for Acer Predator W6David Bauer2023-08-221-1/+1
| | | | | | | Add missing packages for creating the overlay filesystem. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit c35ff41ccc31f2ecaea7406830de04bd77940d48)
* ipq4019: add support for ZTE MF287 Pro aka DreiNeo ProAndreas Böhler2023-08-217-179/+476
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ZTE MF287 Pro is a LTE router used (exclusively?) by the network operator "3". It is very similar to the MF287+, but the hardware layout and partition layout have changed quite a bit. Specifications ============== SoC: IPQ4018 RAM: 256MiB Flash: 8MiB SPI-NOR + 128MiB SPI-NAND LAN: 4x GBit LAN LTE: ZTE Cat12 WiFi: 802.11a/b/g/n/ac SoC-integrated USB: 1x 2.0 MAC addresses ============= LAN: from config + 2 WiFi 1: from config WiFi 2: from config + 1 Installation ============ Option 1 - TFTP --------------- TFTP installation using UART is preferred. Disassemble the device and connect serial. Put the initramfs image as openwrt.bin to your TFTP server and configure a static IP of 192.168.1.100. Load the initramfs image by typing: setenv serverip 192.168.1.100 setenv ipaddr 192.168.1.1 tftpboot 0x82000000 openwrt.bin bootm 0x82000000 From this intiramfs boot you can take a backup of the currently installed partitions as no vendor firmware is available for download: ubiattach -m17 cat /dev/ubi0_0 > /tmp/ubi0_0 cat /dev/ubi0_1 > /tmp/ubi0_1 Copy the files /tmp/ubi0_0 and /tmp/ubi0_1 somewhere save. Once booted, transfer the sysupgrade image and run sysupgrade. You might have to delete the stock volumes first: ubirmvol /dev/ubi0 -N ubi_rootfs ubirmvol /dev/ubi0 -N kernel Option 2 - From stock firmware ------------------------------ The installation from stock requires an exploit first. The exploit consists of a backup file that forces the firmware to download telnetd via TFTP from 192.168.0.22 and run it. Once exploited, you can connect via telnet and login as admin:admin. The exploit will be available at the device wiki page. Once inside the stock firmware, you can transfer the -factory.bin file to /tmp by using "scp" from the stock frmware or "tftp". ZTE has blocked writing to the NAND. Fortunately, it's easy to allow write access - you need to read from one file in /proc. Once done, you need to erase the UBI partition and flash OpenWrt. Before performing the operation, make sure that mtd13 is the partition labelled "rootfs" by calling "cat /proc/mtd". Complete commands: cd /tmp tftp -g -r factory.bin 192.168.0.22 cat /proc/driver/sensor_id flash_erase /dev/mtd17 0 0 dd if=/tmp/factory.bin of=/dev/mtdblock17 bs=131072 Afterwards, reboot your device and you should have a working OpenWrt installation. Restore Stock ============= Option 1 - via UART ------------------- Boot an OpenWrt initramfs image via TFTP as for the initial installation. Transfer the two backed-up files to your box to /tmp. Then, run the following commands - replace $kernel_length and $rootfs_size by the size of ubi0_0 and ubi0_1 in bytes. ubiattach -m 17 ubirmvol /dev/ubi0 -N kernel ubirmvol /dev/ubi0 -N rootfs ubirmvol /dev/ubi0 -N rootfs_data ubimkvol /dev/ubi0 -N kernel -s $kernel_length ubimkvol /dev/ubi0 -N ubi_rootfs -s $rootfs_size ubiupdatevol /dev/ubi0_0 /tmp/ubi0_0 ubiupdatevol /dev/ubi0_1 /tmp/ubi0_1 Option 2 - from within OpenWrt ------------------------------ This option requires to flash an initramfs version first so that access to the flash is possible. This can be achieved by sysupgrading to the recovery.bin version and rebooting. Once rebooted, you are again in a default OpenWrt installation, but no partition is mounted. Follow the commands from Option 1 to flash back to stock. LTE Modem ========= The LTE modem is similar to other ZTE devices and controls some more LEDs and battery management. Configuring the connection using uqmi works properly, the modem provides three serial ports and a QMI CDC ethernet interface. Other Notes =========== Contrary to the stock firmware, the USB port on the back can be used. There is one GPIO Switch "Power button blocker" which, if enabled, does not trigger a reset of the SoC if the modem reboots. If disabled, the SoC is rebooted along with the modem. The modem can be rebooted via the exported GPIO "modem-reset" in /sys/class/gpio. Signed-off-by: Andreas Böhler <dev@aboehler.at> (cherry picked from commit edfe91372adfdaf5ee4e294fb0f5860a16adc551)
* armsr: add kmod-sfp to default device profileMathew McBride2023-08-191-1/+1
| | | | | | | This brings the 23.05 branch into parity with the main. kmod-sfp was in the main branch profile but not the 23.05 version. Signed-off-by: Mathew McBride <matt@traverse.com.au>
* armsr: armv8: fix invalid symbol value for FSL_ENETC_QOSMathew McBride2023-08-191-1/+1
| | | | | | | | | | | | | The kernel FSL_ENETC_QOS option is only a compile time option, it does not result in a separate module being built. Set it to 'y' to resolve a warning from the kernel compile: .config:2654:warning: symbol value 'm' invalid for FSL_ENETC_QOS Signed-off-by: Mathew McBride <matt@traverse.com.au> Fixes: c3151b6f045 ("armvirt: 64: add support for other SystemReady-compatible vendors") (cherry picked from commit 7770d08e2bd28c9c0dc0b3dc0aaf74074ad5772a)
* armsr: armv8: package and select MDIO driver for Thunder SoC'sMathew McBride2023-08-191-1/+13
| | | | | | | | This MDIO driver was already being built, but not installed due to being selected by the ThunderX Ethernet driver. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 0018b335313ec7d866bf9e22273b620759e29598)
* armsr: add Marvell (Cavium) ThunderX2 network driverMathew McBride2023-08-192-3/+21
| | | | | | | | | | The initial armv8 module incorrectly labelled the Thunder(v1) as supporting the ThunderX2, when they have different drivers. Add kmod-octeon-tx2 to support the newer devices. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 7c5bdff9c472a3f008ac15cc1ccb81cd23b20e1f)
* armsr: armv8: add bcmgenet (Raspberry Pi 4 GENET) to profileMathew McBride2023-08-191-1/+2
| | | | | | | | kmod-bcmgenet is needed for Ethernet support on the Raspberry Pi 4. Signed-off-by: Mathew McBride <matt@traverse.com.au> (cherry picked from commit 911ee97774d2542300916f0e2763aa54c2a4dff1)
* armsr: armv8: add Broadcom GENET and MDIO modulesMathew McBride2023-08-191-0/+22
| | | | | | | | | | | | | | These are used by common Broadcom SoC's like the BCM2711 (RPi4) and iProc network processor. Tested on the RPi4B using the Raspberry Pi UEFI+ACPI firmware[1]. Signed-off-by: Mathew McBride <matt@traverse.com.au> [1] - https://github.com/pftf/RPi4 (cherry picked from commit 27ca83c6270a4cc6922cdae82bb5c01e4e2d1d22)
* armsr: armv8: enable AHCI/SATA controllers for mvebu,qoriq,junoMathew McBride2023-08-191-0/+3
| | | | | | | | | | | | | | | | When comparing the generated OpenWrt .config to the Linux arm64 defconfig, I noticed these SATA controllers were not included. As they may be used as a boot drive, they should be built into the kernel. CONFIG_SATA_MVEBU is for Marvell platforms. CONFIG_SATA_QORIQ is for NXP Layerscape. CONFIG_SATA_SIL24 is for Arm's Juno development board, see Linux kernel commit d7c38ff1cd86 ("arm64: defconfig: Add Juno SATA controller"). Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 9cb173e9f18da2530c3570479567d8130b05e5f8)
* armsr: armv8: synchronize PCIE related options with arm64 defconfigMathew McBride2023-08-191-0/+20
| | | | | | | | | This turns on various PCI related options which are enabled in the Linux kernel arch/arm64/configs/defconfig but not yet in the OpenWrt config. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 15d3536c9deb2927c9a39350c6fa2e59f859df2a)
* armsr: armv8: enable Broadcom arch'esMathew McBride2023-08-191-0/+60
| | | | | | | | | | | | | | | This is part of an effort to reduce differences between the OpenWrt armsr/armv8 config and Linux arm64 defconfig. This enables CONFIG_ARCH_BCM and downstream CONFIG_ARCH_BCM2835 (= BCM2711 like Raspberry Pi 4) and CONFIG_ARCH_BCM_IPROC (Broadcom iProc packet processors). The broadband specific SoC's (ARCH_BCMBCA) are left out as it is assumed these will not be doing EFI boot. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.5/5.15 version of commit df23eed17925b8cadccec53a784a12468a8a2e85)
* armsr: armv8: enable CONFIG_ARCH_RENESASMathew McBride2023-08-191-0/+67
| | | | | | | | | | | Renesas markets several embedded Arm64 SoCs in the RZ series (RZ/G, RZ/V), so should be enabled in a general purpose target. Automotive (R-Car) SoC's are not enabled by this change. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 1ff4f4df230166994c660ad77479f248223ce45b)
* armsr: enable ACPI_BUTTONMathew McBride2023-08-191-0/+1
| | | | | | | | | | | | | A review of the generated OpenWrt kernel .config vs the Linux arm64 defconfig showed that this option was not being enabled, as it is disabled in OpenWrt's generic config. ACPI_BUTTON is needed to report and respond to power button events, so it should be enabled. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit c4c60e4b192180288aab577e166091c2d4c470af)
* armsr: armv8: sync CPU features, EFI, CMA and scheduler options with Linux ↵Mathew McBride2023-08-191-1/+44
| | | | | | | | | | | | defconfig To bring the armsr/armv8 kernel configuration closer to the Linux arm64 defconfig, synchronize options related to CPU features (especially more recent Armv8.X variants), scheduler, EFI vars, CMA and scheduler options. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version commit 22e0c7be47ca55b7366dc569926724271d51cb77)
* armsr: armv8: enable KVM hostMathew McBride2023-08-191-0/+6
| | | | | | | | | | | x86/64 enables support for KVM so I can't see a reason why not on armsr/armv8 as well. Arm CPU errata workaround items related to virtualization are also enabled by this change. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit e505873e65f72b5e89c136dbb61d992a2219b6eb)
* armsr: armv8: sync Arm64 erratum options with kernel defconfigMathew McBride2023-08-191-0/+28
| | | | | | | | | | | | To reduce differences with the Linux arm64 defconfig, sync the enabled erratum items with defconfig. There are still some options not selected due to CONFIG_KVM or other options not enabled in OpenWrt by default. Signed-off-by: Mathew McBride <matt@traverse.com.au> (23.05/5.15 version of commit 5c4239ac3f189352698de706599bc32a6e457532)
* kernel: modules: add xdp-sockets-diag supportTianling Shen2023-08-191-0/+10
| | | | | | | Support for PF_XDP sockets monitoring interface used by the ss tool. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org> (cherry picked from commit 06e64f9b364abe15c27bf0a7225fcac740819668)
* kernel: bump 5.15 to 5.15.127John Audia2023-08-199-24/+24
| | | | | | | | | | | | | Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.127 All patches automatically rebased. Build system: x86_64 Build-tested: ramips/tplink_archer-a6-v3 Run-tested: ramips/tplink_archer-a6-v3 Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 973c5d4a1d5d732f46b577384f39da2336a80fb1)
* x86: Add virtualization time sync supportHauke Mehrtens2023-08-152-0/+10
| | | | | | | | | | | | | This compiles the CONFIG_PTP_1588_CLOCK support into the kernel binary and activates the drivers for KVM and VMware which allow syncing the host time with the VM when OpenWrt is running in a VM. With this change the CONFIG_HYPERV_UTILS driver is now build into the kernel, because it depends on the PTP framework being compiled in. CONFIG_HYPERV_UTILS was build as a module, but not packages before. Fixes: #13277 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 54d470ed0ecaff9e8084c013ddbc95e8afc3ab42)
* x86: Activate CONFIG_PCIEASPMHauke Mehrtens2023-08-153-0/+15
| | | | | | | | | | This activates PCI Express ASPM control in Linux. Without this option it is completely controlled by the BIOS, now Linux will take over and apply some workarounds if needed. Fixes: #13248 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit ff71035751bf440401b4bbc32e0b61ba11178234)
* ramips: improve Xiaomi mi-mini indicationsIvan Pavlov2023-08-151-5/+4
| | | | | | | Sets status indications led color on Xiaomi mi-mini router as other Xiaomi routers Signed-off-by: Ivan Pavlov <AuthorReflex@gmail.com> (cherry picked from commit 54e5e396c59948224dfb8ccf7aa8afe11462f647)
* ipq40xx: meraki: define DTB load addressRobert Marko2023-08-151-2/+1
| | | | | | | | | | | | | | | | | | | | | | It seems that the Meraki bootloader does not respect the kernel ARM booting specification[1] that requires that address where DTB is located needs to be 64-bit aligned and often places the DTB on a non 64-bit aligned address and then kernel fails to find the DTB magic and fails to boot. Even worse, there is no prints until early printk is enabled and then its visible that kernel is trying to find the ATAG-s as DTB was not found or is invalid. Unifi 6 devices had the same issue and it can be solved by passing the load adress as part of the FIT image. It seems that the vendor was aware of the issue and is always relocating the DTB to 0x89000000, so lets just do the same. Now that booting is reliable, reenable default images for the Meraki MR33 and MR74 devices. Reviewed-by: Lech Perczak lech.perczak@gmail.com Signed-off-by: Robert Marko <robimarko@gmail.com> (cherry picked from commit f1c80445bd7e3b2f7fc3e4c8136402b30834d4e9)
* ipq40xx: meraki: remove swconfig in DEVICE_PACKAGESRobert Marko2023-08-151-1/+1
| | | | | | | | ipq40xx was converted to DSA and swconfig is not being included at all in the default packages so there is no need to drop it from device packages. Signed-off-by: Robert Marko <robimarko@gmail.com> (cherry picked from commit bb4a25860f593790aaedc1b31dde33fbc519e7bf)
* ipq40xx: commonize Meraki recipeRobert Marko2023-08-151-8/+7
| | | | | | | | MR33 and MR74 share pretty much everything in the image recipe, so lets extract a common recipe to avoid duplication. Signed-off-by: Robert Marko <robimarko@gmail.com> (cherry picked from commit 9e9dc1890c6f58d858208136ecfa435445dfca09)
* kernel: bump 5.15 to 5.15.126John Audia2023-08-156-5/+9
| | | | | | | | | | | | | | | | 1. Disable unneeded errata Kconfig symbols 2. Update kernel Changelog: https://lore.kernel.org/stable/2023081111-unlocking-synopsis-d7d5@gregkh/ All patches automatically rebased. Build system: x86_64 Build-tested: ramips/tplink_archer-a6-v3 Run-tested: ramips/tplink_archer-a6-v3 Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 64782497dbdf124d9f7979ae1aa48f20c9b9dec8)
* generic: backport fix for Winbond SPI NANDDaniel Golle2023-08-131-0/+49
| | | | | | | | Avoid using stack allocated memory for DMA operations. Fixes: 156c00dedc ("generic: backport Winbond W25N02KV SPI-NAND support") Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit e6f8b699189139f09c3685332310ff870610de5e)
* generic: 5.15: rename patches to match correct versionDaniel Golle2023-08-132-0/+0
| | | | | | | | Rename two patches which were only accepted in Linux 6.2, but were marked as if they were accepted in Linux 6.1. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 42e14d3ed870e56c29bff84ce686839d9bab2034)
* armsr: remove redundant phy-marvell-10g moduleDaniel Golle2023-08-131-11/+0
| | | | | | | | | | | | the Marvell 10G PHY driver is no way specific to ARM SystemReady systems, it frequently occurs on SFP+ copper modules and is useful on many targets. Hence it been added to package/kernel/linux/modules/netdevices and we can remove the now redundant target-specific module. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit c524a76f4c09a4e3fa4572612d336b4ef7ff2fb8)
* mediatek: filogic: mt7988: mark RTC clock as criticalDaniel Golle2023-08-131-1/+8
| | | | | | | | | A dependency of the MT7988 MMC host controller on the SoC's RTC clock being running has been discovered. Mark RTC clock as critical to fix MMC host on MT7988. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 0454691960e16bb93ed01f89352cbb375008aaf5)