aboutsummaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
* filogic: add support for ASUS TUF-AX4200David Bauer2023-03-247-0/+368
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- SOC: MediaTek MT7986 RAM: 512MB DDR3 FLASH: 256MB SPI-NAND (Winbond W25N02KV) WIFI: Mediatek MT7986 DBDC 802.11ax 2.4/5 GHz ETH: MediaTek MT7531 Switch MaxLinear GPY211C 2.5 N-Base-T PHY UART: 3V3 115200 8N1 (Pinout silkscreened / Do not ocnnect VCC) Installation ------------ 1. Download the OpenWrt initramfs image. Copy the image to a TFTP server reachable at 192.168.1.66/24. Rename the image to tufax4200.bin. 2. Connect the TFTP server to the AX4200. Conect to the serial console, interrupt the autoboot process by pressing '4' when prompted. 3. Download & Boot the OpenWrt initramfs image. $ setenv ipaddr 192.168.1.1 $ setenv serverip 192.168.1.66 $ tftpboot 0x46000000 tufax4200.bin $ bootm 0x46000000 4. Wait for OpenWrt to boot. Transfer the sysupgrade image to the device using scp and install using sysupgrade. $ sysupgrade -n <path-to-sysupgrade.bin> Missing features ---------------- - The LAN port LEDs are driven by the switch but OpenWrt does not correctly configure the output. Signed-off-by: David Bauer <mail@david-bauer.net>
* mediatek: enable bootargs-override for filogic subtargetDavid Bauer2023-03-242-0/+18
| | | | | | | | | The ASUS TUF-AX4200 bootloader adds invalid parameters for the rootfs. Without overwriting the cmdline, the kernel crashes when trying to attach the rootfs, as OpenWrt uses a different partition than the vendor OS. Signed-off-by: David Bauer <mail@david-bauer.net>
* generic: mxl-gpy: allow configuring LED registersDavid Bauer2023-03-241-0/+106
| | | | | | | | | | | | | Add a patch to allow modification of the PHY LED configuration. This is required for boards, where the reset configuration of LED functions is incompatibe with the usage of the device LEDs. This is the case for the ASUS TUF-AX4200 Wireless router. It requires modification of the LED configuration because as the WAN LED on the front of the device is driven by the PHY. Without patching, it would only illuminate in case the Link speed is 100 Mbit/s. Signed-off-by: David Bauer <mail@david-bauer.net>
* generic: backport Winbond W25N02KV SPI-NAND supportDavid Bauer2023-03-242-0/+146
| | | | | | | | This flash-chip is used on the Asus TUF-AX4200 and TUF-AX6000 routers. As the filogic target only uses kernel 5.15, skip the 5.10 backport. Signed-off-by: David Bauer <mail@david-bauer.net>
* kernel: add support for threaded network backlog processingFelix Fietkau2023-03-242-5/+229
| | | | | | | | This can improve load balancing by pushing backlog (and RPS) processing to separate threads, allowing the scheduler to distribute the load. It can be enabled with: echo 1 > /proc/sys/net/core/backlog_threaded Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: add support for Mercusys MR70XDavid Bauer2023-03-243-4/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware ======== - SoC: MediaTek MT7621AT (880MHz, Duel-Core) - RAM: DDR3 128MB - Flash: Winbond W25Q128JV (SPI-NOR 16MB) - WiFi: MediaTek MT7915D (2.4GHz, 5GHz, DBDC) - Ethernet: MediaTek MT7530 (WAN x1, LAN x3, SoC) - UART: >TX RX GND 3v3 (115200 8N1, J1) Do not connect 3v3. TX is marked with an arrow. Installation ============ Flash factory image. This can be done using stock web ui. Revert to stock firmware ======================== Flash stock firmware via OEM Web UI Recovery mode. Web UI Recovery method ====================== 1. Unplug the router 2. Plug in and hold reset button 5~10 secs 3. Set your computer IP address manually to 192.168.1.x / 255.255.255.0 4. Flash image with web browser to 192.168.1.1 Co-authored-by: Robert Senderek <robert.senderek@10g.pl> Co-authored-by: Yoonji Park <koreapyj@dcmys.kr> Signed-off-by: David Bauer <mail@david-bauer.net>
* bmips: sercomm,h500-s: add Quantenna network configÁlvaro Fernández Rojas2023-03-241-1/+4
| | | | | | Sercomm H500-s has an external Quantenna QT3740BC SoC connected by RGMII. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: add more dsa b53 pending patchesÁlvaro Fernández Rojas2023-03-245-145/+308
| | | | | | | | | | | | | | | | | These patches have now received a positive review upstream, so let's add them to pending patches. 776-net-dsa-b53-mmap-add-phy-ops.patch: This is mostly bmips/bcm63xx-specific to get external switches working without hanging the device when accessing certain registers. 777-net-dsa-b53-mdio-add-support-for-BCM53134: This adds support for BCM53134 switch on DSA B53, so any target using DSA B53 can benefit from it. Also fix sercomm-h500-s external switch IMP port phy-mode. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: enable conntrack counter updates for iptables xt_FLOWOFFLOADFelix Fietkau2023-03-241-2/+3
| | | | | | Ensures that packet/byte counters in /proc/net/nf_conntrack are updated Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: fix mediatek ppe flow accounting for mt7622 and olderFelix Fietkau2023-03-241-0/+51
| | | | | | v1 hardware uses a different enable bit for hardware counters Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: report mediatek ppe flow stats incrementallyFelix Fietkau2023-03-241-29/+42
| | | | | | | Fixes wrong counter values in conntrack stats Fixes: aa2777145f8d ("kernel: improve mtk ppe flow accounting") Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mpc85xx: Refresh patchesHauke Mehrtens2023-03-241-2/+2
| | | | | | | Make the patches apply cleanly again. Fixes: ed82189339b8 ("mpc85xx: use bootwrapper for ws-ap3825i") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ipq806x: Refresh patchesHauke Mehrtens2023-03-241-1/+1
| | | | | | | Make the patches apply cleanly again. Fixes: a97965b7b11f ("kernel: add pending patches for bcm63268-timer-clocks") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: improve mtk ppe flow accountingFelix Fietkau2023-03-233-0/+655
| | | | | | Properly track L2 flows, and ensure that stale data gets cleared Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mediatek: add kernel code for supporting offloading wlan->eth and wlan->wlan ↵Felix Fietkau2023-03-234-8/+324
| | | | | | | | flows Will be enabled by an upcoming mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: update mtk ppe flow accounting patch to the latest versionFelix Fietkau2023-03-235-57/+56
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: update flow offload fix based on upstream suggestionsFelix Fietkau2023-03-231-34/+6
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: fix DSA B53 BCM63xx RGMII patchÁlvaro Fernández Rojas2023-03-231-1/+1
| | | | | | | | | | Refreshing the patches for fff07085fb5a moved the b53_adjust_63xx_rgmii() call from b53_phylink_mac_link_up() to b53_phylink_mac_link_down(). In order to properly configure the RGMII ports we need to restore it to its correct place. Fixes: fff07085fb5a ("kernel: add pending bmips patches") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ath79: support Ruckus ZoneFlex 7341/7343/7363Lech Perczak2023-03-226-1/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ruckus ZoneFlex 7363 is a dual-band, dual-radio 802.11n 2x2 MIMO enterprise access point. ZoneFlex 7343 is the single band variant of 7363 restricted to 2.4GHz, and ZoneFlex 7341 is 7343 minus two Fast Ethernet ports. Hardware highligts: - CPU: Atheros AR7161 SoC at 680 MHz - RAM: 64MB DDR - Flash: 16MB SPI-NOR - Wi-Fi 2.4GHz: AR9280 PCI 2x2 MIMO radio with external beamforming - Wi-Fi 5GHz: AR9280 PCI 2x2 MIMO radio with external beamforming - Ethernet 1: single Gigabit Ethernet port through Marvell 88E1116R gigabit PHY - Ethernet 2: two Fast Ethernet ports through Realtek RTL8363S switch, connected with Fast Ethernet link to CPU. - PoE: input through Gigabit port - Standalone 12V/1A power input - USB: optional single USB 2.0 host port on the -U variants. Serial console: 115200-8-N-1 on internal H1 header. Pinout: H1 ---------- |1|x3|4|5| ---------- Pin 1 is near the "H1" marking. 1 - RX x - no pin 3 - VCC (3.3V) 4 - GND 5 - TX Installation: - Using serial console - requires some disassembly, 3.3V USB-Serial adapter, TFTP server, and removing a single PH1 screw. 0. Connect serial console to H1 header. Ensure the serial converter does not back-power the board, otherwise it will fail to boot. 1. Power-on the board. Then quickly connect serial converter to PC and hit Ctrl+C in the terminal to break boot sequence. If you're lucky, you'll enter U-boot shell. Then skip to point 3. Connection parameters are 115200-8-N-1. 2. Allow the board to boot. Press the reset button, so the board reboots into U-boot again and go back to point 1. 3. Set the "bootcmd" variable to disable the dual-boot feature of the system and ensure that uImage is loaded. This is critical step, and needs to be done only on initial installation. > setenv bootcmd "bootm 0xbf040000" > saveenv 4. Boot the OpenWrt initramfs using TFTP. Replace IP addresses as needed. Use the Gigabit interface, Fast Ethernet ports are not supported under U-boot: > setenv serverip 192.168.1.2 > setenv ipaddr 192.168.1.1 > tftpboot 0x81000000 openwrt-ath79-generic-ruckus_zf7363-initramfs-kernel.bin > bootm 0x81000000 5. Optional, but highly recommended: back up contents of "firmware" partition: $ ssh root@192.168.1.1 cat /dev/mtd1 > ruckus_zf7363_fw_backup.bin 6. Copy over sysupgrade image, and perform actual installation. OpenWrt shall boot from flash afterwards: $ ssh root@192.168.1.1 # sysupgrade -n openwrt-ath79-generic-ruckus_zf7363-squashfs-sysupgrade.bin After unit boots, it should be available at the usual 192.168.1.1/24. Return to factory firmware: 1. Copy over the backup to /tmp, for example using scp 2. Unset the "bootcmd" variable: fw_setenv bootcmd "" 3. Use sysupgrade with force to restore the backup: sysupgrade -F ruckus_zf7363_backup.bin 4. System will reboot. Quirks and known issues: - Fast Ethernet ports on ZF7363 and ZF7343 are supported, but management features of the RTL8363S switch aren't implemented yet, though the switch is visible over MDIO0 bus. This is a gigabit-capable switch, so link establishment with a gigabit link partner may take a longer time because RTL8363S advertises gigabit, and the port magnetics don't support it, so a downshift needs to occur. Both ports are accessible at eth1 interface, which - strangely - runs only at 100Mbps itself. - Flash layout is changed from the factory, to use both firmware image partitions for storage using mtd-concat, and uImage format is used to actually boot the system, which rules out the dual-boot capability. - Both radio has its own EEPROM on board, not connected to CPU. - The stock firmware has dual-boot capability, which is not supported in OpenWrt by choice. It is controlled by data in the top 64kB of RAM which is unmapped, to avoid the interference in the boot process and accidental switch to the inactive image, although boot script presence in form of "bootcmd" variable should prevent this entirely. - On some versions of stock firmware, it is possible to obtain root shell, however not much is available in terms of debugging facitilies. 1. Login to the rkscli 2. Execute hidden command "Ruckus" 3. Copy and paste ";/bin/sh;" including quotes. This is required only once, the payload will be stored in writable filesystem. 4. Execute hidden command "!v54!". Press Enter leaving empty reply for "What's your chow?" prompt. 5. Busybox shell shall open. Source: https://alephsecurity.com/vulns/aleph-2019014 - There is second method to achieve root shell, using command injection in the web interface: 1. Login to web administration interface 2. Go to Administration > Diagnostics 3. Enter |telnetd${IFS}-p${IFS}204${IFS}-l${IFS}/bin/sh into "ping" field 4. Press "Run test" 5. Telnet to the device IP at port 204 6. Busybox shell shall open. Source: https://github.com/chk-jxcn/ruckusremoteshell Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ath79: support Ruckus ZoneFlex 7351Lech Perczak2023-03-224-0/+375
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ruckus ZoneFlex 7351 is a dual-band, dual-radio 802.11n 2x2 MIMO enterprise access point. Hardware highligts: - CPU: Atheros AR7161 SoC at 680 MHz - RAM: 64MB DDR - Flash: 16MB SPI-NOR - Wi-Fi 2.4GHz: AR9280 PCI 2x2 MIMO radio with external beamforming - Wi-Fi 5GHz: AR9280 PCI 2x2 MIMO radio with external beamforming - Ethernet: single Gigabit Ethernet port through Marvell 88E1116R gigabit PHY - Standalone 12V/1A power input - USB: optional single USB 2.0 host port on the 7351-U variant. Serial console: 115200-8-N-1 on internal H1 header. Pinout: H1 ---------- |1|x3|4|5| ---------- Pin 1 is near the "H1" marking. 1 - RX x - no pin 3 - VCC (3.3V) 4 - GND 5 - TX Installation: - Using serial console - requires some disassembly, 3.3V USB-Serial adapter, TFTP server, and removing a single T10 screw. 0. Connect serial console to H1 header. Ensure the serial converter does not back-power the board, otherwise it will fail to boot. 1. Power-on the board. Then quickly connect serial converter to PC and hit Ctrl+C in the terminal to break boot sequence. If you're lucky, you'll enter U-boot shell. Then skip to point 3. Connection parameters are 115200-8-N-1. 2. Allow the board to boot. Press the reset button, so the board reboots into U-boot again and go back to point 1. 3. Set the "bootcmd" variable to disable the dual-boot feature of the system and ensure that uImage is loaded. This is critical step, and needs to be done only on initial installation. > setenv bootcmd "bootm 0xbf040000" > saveenv 4. Boot the OpenWrt initramfs using TFTP. Replace IP addresses as needed: > setenv serverip 192.168.1.2 > setenv ipaddr 192.168.1.1 > tftpboot 0x81000000 openwrt-ath79-generic-ruckus_zf7351-initramfs-kernel.bin > bootm 0x81000000 5. Optional, but highly recommended: back up contents of "firmware" partition: $ ssh root@192.168.1.1 cat /dev/mtd1 > ruckus_zf7351_fw_backup.bin 6. Copy over sysupgrade image, and perform actual installation. OpenWrt shall boot from flash afterwards: $ ssh root@192.168.1.1 # sysupgrade -n openwrt-ath79-generic-ruckus_zf7351-squashfs-sysupgrade.bin After unit boots, it should be available at the usual 192.168.1.1/24. Return to factory firmware: 1. Copy over the backup to /tmp, for example using scp 2. Unset the "bootcmd" variable: fw_setenv bootcmd "" 3. Use sysupgrade with force to restore the backup: sysupgrade -F ruckus_zf7351_backup.bin 4. System will reboot. Quirks and known issues: - Flash layout is changed from the factory, to use both firmware image partitions for storage using mtd-concat, and uImage format is used to actually boot the system, which rules out the dual-boot capability. - Both radio has its own EEPROM on board, not connected to CPU. - The stock firmware has dual-boot capability, which is not supported in OpenWrt by choice. It is controlled by data in the top 64kB of RAM which is unmapped, to avoid the interference in the boot process and accidental switch to the inactive image, although boot script presence in form of "bootcmd" variable should prevent this entirely. - On some versions of stock firmware, it is possible to obtain root shell, however not much is available in terms of debugging facitilies. 1. Login to the rkscli 2. Execute hidden command "Ruckus" 3. Copy and paste ";/bin/sh;" including quotes. This is required only once, the payload will be stored in writable filesystem. 4. Execute hidden command "!v54!". Press Enter leaving empty reply for "What's your chow?" prompt. 5. Busybox shell shall open. Source: https://alephsecurity.com/vulns/aleph-2019014 - There is second method to achieve root shell, using command injection in the web interface: 1. Login to web administration interface 2. Go to Administration > Diagnostics 3. Enter |telnetd${IFS}-p${IFS}204${IFS}-l${IFS}/bin/sh into "ping" field 4. Press "Run test" 5. Telnet to the device IP at port 204 6. Busybox shell shall open. Source: https://github.com/chk-jxcn/ruckusremoteshell Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ramips: mt7621: enable lzma-loader for AFOUNDRY EW1200Tony Butler2023-03-221-0/+1
| | | | | | | | | Fixes boot loader LZMA decompression issues (LZMA ERROR 1) As reported in issue #12208 Reported-by: Raúl M. <raul.m@sparkedhost.com> Tested-by: Raúl M. <raul.m@sparkedhost.com> Signed-off-by: Tony Butler <spudz76@gmail.com>
* bmips: add support for Sercomm H-500sÁlvaro Fernández Rojas2023-03-228-1/+502
| | | | | | | | | | | | | Sercomm H-500s is a BCM63268 with 128M, internal and external (Quantenna) wifi and external BCM53134S switch. This device is already supported in bcm63xx target, so more information can be found in https://openwrt.org/toh/sercomm/h500-s. It's a perfect example of a device with internal and external switch coexistance since most devices only have ports on one of the switches but not both of them. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: drop unneded cpu labels from external switchesÁlvaro Fernández Rojas2023-03-222-2/+0
| | | | | | | | | These labels aren't needed and were accidentally added when adding external switches support for bmips. Fixes: 80a3ecc89489 ("bmips: add Huawei HG253s v2 support") Fixes: 61f3c3b1eebd ("bmips: dgnd3700v2: enable external BCM53125 switch") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: add pending patches for bcm63268-timer-clocksÁlvaro Fernández Rojas2023-03-227-165/+435
| | | | | | | | | bcm63268-timer-clocks have been sent upstream with a positive review, so let's add them to pending v5.15. Also add devm_clk_hw_register_gate() patch from v5.17 to backports since it's needed for upstream bcm63268-timer-clocks patches. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dts: nand: add missing address/size cellsÁlvaro Fernández Rojas2023-03-212-0/+6
| | | | | | | | | | | Fixes the following warnings for Netgear DGND3700v2 and Comtrend VR-3032u: [ 1.059540] 7 fixed-partitions partitions found on MTD device brcmnand.0 [ 1.066570] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions [ 1.073766] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions [ 1.081927] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions [ 1.089128] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add Huawei HG253s v2 supportÁlvaro Fernández Rojas2023-03-214-0/+264
| | | | | | | | | | | | | Huawei HG253s v2 is a BCM6362 with 128M RAM, internal wifi and external BCM53124S switch. This device is already supported in bcm63xx target, so more information can be found in https://openwrt.org/toh/huawei/hg253s_v2. It's a perfect example of a device with internal and external switch coexistance since most devices only have ports on one of the switches but not both of them. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dgnd3700v2: enable external BCM53125 switchÁlvaro Fernández Rojas2023-03-212-2/+56
| | | | | | | The Netgear DGND3700v2 has an external BCM53125 switch which can now be enabled as a DSA disjoint switch tree setup. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: disable B53 MMAP phy read/write opsÁlvaro Fernández Rojas2023-03-212-1/+47
| | | | | | | | | | Without this change, internal and external B53 switches couldn't coexist as reported in https://github.com/openwrt/openwrt/issues/10313. In order to fix this we need to force the B53 MMAP DSA switch driver to use bcm6368-mdio-mux for accessing the PHY registers instead of its own phy_read() and phy_write() functions. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: update pending b53 mmap patchesÁlvaro Fernández Rojas2023-03-214-206/+244
| | | | | | | | Update B53 MMAP pending patches to the latest version sent upstream. Fixes regression in bmips BCM63268 switches. Fixes: fff07085fb5a ("kernel: add pending bmips patches") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ipq40xx: add support for Wallystech DR40x9Robert Marko2023-03-215-1/+441
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds support for the Wallys DR40x9 series boards. They come in IPQ4019 and IPQ4029 versions. IPQ4019/4029 only differ in that that IPQ4029 is the industrial version that is rated to higher temperatures. Specifications are: * CPU: Qualcomm IPQ40x9 (4x ARMv7A Cortex A7) at 716 MHz * RAM: 512 MB * Storage: 2MB of SPI-NOR, 128 MB of parallel NAND * USB 3.0 TypeA port for users * MiniPCI-E with PCI-E 2.0 link * MiniPCI-E for LTE modems with only USB2.0 link * 2 SIM card slots that are selected via GPIO11 * MicroSD card slot * Ethernet: 2x GBe with 24~48V passive POE * SFP port (Does not work, I2C and GPIO's not connected on hardware) * DC Jack * UART header * WLAN: In-SoC 2x2 802.11b/g/n and 2x2 802.11a/n/ac * 4x MMCX connectors for WLAN * Reset button * 8x LED-s Installation instructions: Connect to UART, pins are like this: -> 3.3V | TX | RX | GND Settings are 115200 8n1 Boot initramfs from TFTP: tftpboot 0x84000000 openwrt-ipq40xx-generic-wallys_dr40x9-initramfs-fit-uImage.itb bootm Then copy the sysupgrade image to the /tmp folder and execute sysupgrade -n <image_name> The board file binary was provided from Wallystech on March 14th 2023 including full permission to use and distribute. Signed-off-by: Robert Marko <robert.marko@sartura.hr> Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
* kernel: add missing symbols in 5.15Koen Vandeputte2023-03-211-0/+6
| | | | | | Found these while playing around with video support Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
* kernel: backport eth_addr_add()Rafał Miłecki2023-03-214-4/+86
| | | | | | It's required by upcoming NVMEM layout drivers. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ramips: fix Archer AX23 WiFi MAC address conflictDavid Bauer2023-03-211-4/+1
| | | | | | | | | | The original claim about conflicting MAC addresses is wrong. mac80211 does increment the first octet and sets the LA bit. This means our "workaround" actually leads to the issue while incrementing the last octet is safe. Signed-off-by: David Bauer <mail@david-bauer.net>
* ramips: cudy wr1300v2 reduce SPI freq to 40000000Óscar García Amor2023-03-201-2/+1
| | | | | | | | | Cases have been reported in which certain devices do not boot correctly or have errors. After various tests by users who have such errors it has been concluded that the SPI frequency should be reduced to 40Mhz, at this speed it appears that all devices work correctly. Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
* kernel: bump 5.10 to 5.10.175John Audia2023-03-2036-210/+134
| | | | | | | | | | | | | | Manually rebased: backport-5.10/611-v5.12-net-ethernet-mediatek-support-setting-MTU.patch Removed upstreamed: bcm47xx/patches-5.10/170-bgmac-fix-initial-chip-reset-to-support-BCM5358.patch[1] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.175&id=cbf11ff3708ff163387da924f80a47ce7c721e9b Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: bump 5.10 to 5.10.173John Audia2023-03-2035-88/+79
| | | | | | | | | Manually rebased: ramips/patches-5.10/810-uvc-add-iPassion-iP2970-support.patch All other patches automatically rebased. Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: tcindex classifier has been retiredJohn Audia2023-03-201-1/+0
| | | | | | https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/net/sched?h=v5.10.173&id=18c3fa7a7fdbb4d21dafc8a7710ae2c1680930f6 Signed-off-by: John Audia <therealgraysky@proton.me>
* x86: fix deprecated CONFIG_MICROCODE_OLD_INTERACEJohn Audia2023-03-201-1/+1
| | | | | | | | | | | We use late loading[1] so need to set this option despite upstream adding a kernel taint when this option is set. See discussion in PR#12149 for more details. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v5.10.173&id2=v5.10.172 1. https://github.com/openwrt/openwrt/blob/master/target/linux/x86/base-files/lib/preinit/02_load_x86_ucode Signed-off-by: John Audia <therealgraysky@proton.me>
* mpc85xx: poll PHY statusDavid Bauer2023-03-202-4/+4
| | | | | | | | | | Disable interrupts for the eth-PHYs, as the interrupts are either not firing or lost within the stack. Switch to polling the PHY status in the meantime until a proper fix is implemented. Ref: https://github.com/openwrt/openwrt/issues/12192 Signed-off-by: David Bauer <mail@david-bauer.net>
* mpc85xx: use bootwrapper for ws-ap3825iDavid Bauer2023-03-204-2/+81
| | | | | | | | | | | | | | | The boot-procedure for the Extreme WS-AP3825I is vfragile to put it mildly. It does not relocate the FDT properly. It currently exercises every step manually as well as coming with a pre-padded dtb. Use the PowerPC bootwrapper code for legacy platforms with a pre-filles DTS instead. We still need to ship a fit image to not break the fdt resize / relocate instructions on existing boards. This does not require adapting the U-Boot bootcommand. Ref: https://github.com/openwrt/openwrt/issues/12223 Signed-off-by: David Bauer <mail@david-bauer.net>
* mediatek: filogic: move ilm, dlm and cpu_boot in dedicated nodesLorenzo Bianconi2023-03-207-0/+522
| | | | | | | | This fixes issues with legacy boot loaders that don't process reserved memory regions outside of system RAM Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: move mediatek flow offload refcount fix and fix a logic errorFelix Fietkau2023-03-201-4/+13
| | | | | | | Move it to pending, since it wasn't actually accepted upstream yet. Fixes potential issues when doing offload between multiple MACs. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* bmips: dts: fix switch compatible stringsÁlvaro Fernández Rojas2023-03-204-4/+4
| | | | | | Use the proper string for each SoC. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: add pending bmips patchesÁlvaro Fernández Rojas2023-03-2015-246/+1109
| | | | | | Add patches sent upstream for bmips and b53 and remove downstream ones. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ipq807x: add support for Netgear WAX218Alexandru Gagniuc2023-03-206-1/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Netgear WAX218 is a 802.11ax AP claiming AX3600 support. It is wall or ceiling mountable. It can be powered via PoE, or a 12 V adapter. The board has footprints for 2.54mm UART headers. They're difficult to solder because the GND is connected to a large copper plane. Only try soldering if you are very skilled. Otherwise, use pogo pins. Specifications: --------------- * CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz * RAM: 366 MB of RAM available to OS, not sure of total amount * Storage: Macronix MX30UF2G18AC 256MB NAND * Ethernet: * 2.5G RJ45 port (QCA8081) with PoE input * WLAN: * 2.4GHz/5GHz with 8 antennas * LEDs: * Power (Amber) * LAN (Blue) * 2G WLAN (Blue) * 5G WLAN (Blue) * Buttons: * 1x Factory reset * Power: 12V DC Jack * UART: Two 4-pin unpopulated headers near the LEDs * "J2 UART" is the CPU UART, 3.3 V level Installation: ============= Web UI method ------------- Flashing OpenWRT using the vendor's Web UI is problematic on this device. The u-boot mechanism for communicating the active rootfs is antiquated and unreliable. Instead of setting the kernel commandline, it relies on patching the DTS partitions of the nand node. The way partitions are patched is incompatible with newer kernels. Newer kernels use the SMEM partition table, which puts "rootfs" on mtd12. The vendor's Web UI will flash to either mtd12 or mtd14. One reliable way to boot from mtd14 and avoid boot loops is to use an initramfs image. 1. In the factory web UI, navigate to System Manager -> Firmware. 2. In the "Local Firmware Upgrade" section, click Browse 3. Navigate and select the 'web-ui-factory.fit' image 4. Click "Upload" 5. On the following page, click on "Proceed" The flash proceeds at this point and the system will reboot automatically to OpenWRT. 6. Flash the 'nand-sysupgrade.bin' using Luci or the commandline SSH method ---------- Enable SSH using the CLI or Web UI. The root account is locked out to ssh, and the admin account defaults to Netgear's CLI application. So we need to get creative: First, make sure the device boots from the second firmware partition: ssh -okexalgorithms=diffie-hellman-group14-sha1 admin@<ipaddr> \ /usr/sbin/fw_setenv active_fw 1 Then reboot the device, and run the update: scp -O -o kexalgorithms=diffie-hellman-group14-sha1 \ -o hostkeyalgorithms=ssh-rsa \ netgear_wax218-squashfs-nand-factory.ubi \ admin@<ipaddr>:/tmp/openwrt.ubi ssh -okexalgorithms=diffie-hellman-group14-sha1 admin@<ipaddr> \ /usr/sbin/ubiformat /dev/mtd12 -f /tmp/openwrt.ubi ssh -okexalgorithms=diffie-hellman-group14-sha1 admin@<ipaddr> \ /usr/sbin/fw_setenv active_fw 0 Now reboot the device, and it should boot into a ready-to-use OpenWRT. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-by: Robert Marko <robimarko@gmail.com> Tested-by: Francisco G Luna <frangonlun@gmail.com>
* mpc85xx: fix incorrect kernel targetDavid Bauer2023-03-201-1/+1
| | | | | | | | | | | | | | | The wrapper-image for the WL-WDR4900 was used as a build-target for the kernel. This workd fine as long as only a single wrapper is used with the OpenWrt build-system. If additional wrappers are used, the build becomes racy in the wrapper-stage. The wrapper images actually do not represent a target. They are built based on the kernel configuration. Only copy the resulting images to avoid race-conditions as explained. Signed-off-by: David Bauer <mail@david-bauer.net>
* mpc85xx: remove Watchguard T10 MAC overrideDavid Bauer2023-03-201-5/+0
| | | | | | | | As the mac-address readout never worked, the mac-address fillout by the bootloader is sufficient. Remove the readout for the Watchguard T10 then. Signed-off-by: David Bauer <mail@david-bauer.net>
* mpc85xx: fix missing system importDavid Bauer2023-03-201-0/+1
| | | | | | | The mac-address accessor functions were not included in the sourced script. Fix this by importing the correct script path. Signed-off-by: David Bauer <mail@david-bauer.net>
* kernel: Add CONFIG_KERNEL_HARDLOCKUP_DETECTORHauke Mehrtens2023-03-191-0/+1
| | | | | | | Make it possible to change the kernel configuration option CONFIG_HARDLOCKUP_DETECTOR from OpenWrt. Signed-off-by: Hauke Mehrtens <hmehrtens@maxlinear.com>
* kernel: Deactivate options shown with CONFIG_KERNEL_KCOV=yHauke Mehrtens2023-03-191-0/+1
| | | | | | | This sets the CONFIG_KCOV_IRQ_AREA_SIZE kernel configuration option to its default value. This is shown when I set CONFIG_KERNEL_KCOV=y in the OpenWrt configuration on x86/64. Signed-off-by: Hauke Mehrtens <hmehrtens@maxlinear.com>