aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ramips: mt7621: remove set-affinity scriptRosen Penev2023-04-011-19/+0
| | | | | | | | | | | | From https://github.com/openwrt/openwrt/pull/12280#issuecomment-1489279860 On Ethernet and WLAN, NAPI is threaded for all queues. This means that the processing work is not stuck on the CPU that fired the IRQ. Under heavy load, IRQs get disabled anyway, so it should not matter at all which CPUs the IRQs fire on. Basic testing indicates this to be true. There's no speedup or slowdown. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7621: ASUS RT-AX53U add NMBM, nest firmwareFelix Baumann2023-04-011-7/+26
| | | | | | | | | | | | Nests kernel and ubi into firmware partition in-order to be compatible with OEM firmware. This allows restoring oem firmware from a backup of firmware2. Add jffs2 partition which is present in the oem firmware. Add support for mediatek NMBM (wear leveling on newer mediatek devices). Exclude UBI partition from NMBM management. Continues PR #10685. Tested-by: Felix Baumann <felix.bau@gmx.de> Signed-off-by: Felix Baumann <felix.bau@gmx.de>
* kernel: bump 5.15 to 5.15.105John Audia2023-04-0125-189/+94
| | | | | | | | | | | | | | | | | | | Manually rebased: Removed upstreamed: backport-5.15/743-v6.3-0005-net-dsa-b53-mmap-fix-device-tree-support.patch[1] backport-5.15/743-v6.3-0006-net-dsa-tag_brcm-legacy-fix-daisy-chained-switches.patch[2] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.105&id=9bbb3d3f218f1cf51f57a43cf8fd63b05be1b821 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.105&id=48f52431af9980582b6faa32ff8b581edb10486c Build system: x86_64 Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: add support for XMC XM25QH64CJoe Mullally2023-04-012-0/+44
| | | | | | | The XMC XM25QH64C is a 8MB SPI NOR chip. The patch is verified on TL-WPA8631P v3. Datasheet available at https://www.xmcwh.com/uploads/442/XM25QH64C.pdf Signed-off-by: Joe Mullally <jwmullally@gmail.com>
* kernel: fix mtk_eth_soc flow accounting for MT7986Felix Fietkau2023-04-011-0/+8
| | | | | | This was accidentally dropped when MT7981 support was added Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ipq40xx: add LED functions for Google WiFiJan-Niklas Burfeind2023-03-311-2/+9
| | | | | | | | | | | | | | | | | Add LED function properties for the LED controller to avoid failing driver probe with kernel 5.15. While at it, also define the OpenWrt LED indicator patterns for this device. Ref commit 583ac0e11df7 ("mpc85xx: update lp5521 led-controller node for 5.10") Google uses white for running and red for an issue Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me> Tested-by: Andrijan Möcker <amo@ct.de> Reviewed-by: Brian Norris <computersforpeace@gmail.com> Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq40xx: add reset button for Google WiFi (Gale)Jan-Niklas Burfeind2023-03-311-1/+14
| | | | | | | | | | Add the external reset button for use with OpenWrt. Co-authored-by: Brian Norris <computersforpeace@gmail.com> Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me> Reviewed-by: Brian Norris <computersforpeace@gmail.com> Tested-by: Brian Norris <computersforpeace@gmail.com> Signed-off-by: David Bauer <mail@david-bauer.net>
* bmips: bcm6362/bcm63268: enable HW RNGÁlvaro Fernández Rojas2023-03-312-0/+24
| | | | | | | This enables the HW Random Number Generator on the BCM6362 and BCM63268 SoCs, which is the same one used on BCM6368 SoC. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: remove obsolete netfilter tcp window size check bypass patchFelix Fietkau2023-03-302-156/+0
| | | | | | | On any currently supported hardware, the performance impact should not matter anymore. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: Refresh patchesHauke Mehrtens2023-03-291-2/+2
| | | | | | | Refresh the ramips kernel patches. Fixes: 7472476aef26 ("kernel: fix mtk_eth_soc throughput regressions on gigabit PHY ports") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* bmips: bcm6348-enet: register emac driver from iudmaÁlvaro Fernández Rojas2023-03-291-2/+15
| | | | | | | | Register the ethernet driver from iudma, which avoids the attempt to probe the emac driver before iudma and its consequent deferral. The ethernet driver can't work without iudma anyway. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: filter out pahole versionRobert Marko2023-03-291-0/+1
| | | | | | | | Pahole version is being autodetected during runtime since kernel 5.15.96 via in-kernel scripts/pahole-version.sh so add CONFIG_PAHOLE_VERSION to kernel filter in order to prevent it from being added to target configs. Signed-off-by: Robert Marko <robimarko@gmail.com>
* mediatek: re-add wireless driver for TUF-AX4200Andrew Sim2023-03-291-1/+1
| | | | | | | | | | | The wireless driver package was incorrectly removed from the TUF-AX4200 device-packages, resulting in images without wireless functionality. Fixes: d98c4fb8bfab ("mediatek: broaden filogic target description") Signed-off-by: Andrew Sim <andrewsimz@gmail.com> [rework commit description] Signed-off-by: David Bauer <mail@david-bauer.net>
* bmips: bcm6348-enet: add PHY supportÁlvaro Fernández Rojas2023-03-292-0/+119
| | | | | | | We should ensure that the PHY is properly configured. This is specially needed in devices using the internal PHY for ethernet0. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: fix mtk_eth_soc throughput regressions on gigabit PHY portsFelix Fietkau2023-03-2910-27/+100
| | | | | | Fixes issues on MT7621 and MT7623 switch ports, and PHY ports on all SoC Signed-off-by: Felix Fietkau <nbd@nbd.name>
* bmips: add basic BCM6358 ethernet supportÁlvaro Fernández Rojas2023-03-286-0/+1732
| | | | | | | | The MDIO bus is supported but there are errors when trying to probe and configure the external BCM5325E switch through B53 DSA. Therefore, let's add basic ethernet (but working) support for now. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368-enetsw: refactor probeÁlvaro Fernández Rojas2023-03-281-23/+29
| | | | | | | | | - Switch to devm functions where possible. - Fix probing when no resets provided. - Properly check pointers (IS_ERR_OR_NULL/PTR_ERR). - Add probe info. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368-enetsw: remove unneeded variablesÁlvaro Fernández Rojas2023-03-281-35/+16
| | | | | | Change the code to use defines instead of variables. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368-enetsw: harmonize dev variablesÁlvaro Fernández Rojas2023-03-281-76/+83
| | | | | | | | The current implementation of bcm6368-enetsw is a mess of dev, ndev and kdev variables, which have refer to different things depending on the function. This commit harmonizes it and resolves the issue. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: sercomm,h500-s: add Quantenna gpio switchÁlvaro Fernández Rojas2023-03-281-0/+16
| | | | | | | Sercomm H500-s has a Quantenna SoC for external wifi which can be activated or deactivated through GPIO #20. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: remove unnecessary change from backlog threading fixFelix Fietkau2023-03-281-19/+9
| | | | | Fixes: f1c9bd6f6f41 ("kernel: fix kernel warning and network issue in the backlog threading patch") Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: fix kernel warning and network issue in the backlog threading patchFelix Fietkau2023-03-281-8/+26
| | | | | | Fixes enabling it early during the boot Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mediatek: broaden filogic target descriptionDaniel Golle2023-03-272-5/+7
| | | | | | | The filogic subtarget now also supports MT7981 and will in future also support MT7988. Reflect that in the target description. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add device tree include for the MT7981 SoCDaniel Golle2023-03-271-0/+766
| | | | | | Add mt7981.dtsi so we can start adding MT7981 devices. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: fix Macronix SPI-NAND driverDaniel Golle2023-03-271-0/+35
| | | | | | | | | Use scratch buffer for DMA operetations. Passing a pointer to a stack variable won't work and results in bogus bit flips being reported. Patch was submitted upstream and is part of Linux 6.3. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add support for SPI calibrationDaniel Golle2023-03-277-2/+590
| | | | | | | Newer MediaTek's SoCs need SPI calibration routines for SPI to work reliably. Import patches for that from MediaTek's SDK. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add PWM support for MT7981 SoCDaniel Golle2023-03-271-0/+212
| | | | | | | Add patch to support PWM on the MT7981 SoC. This patch will also be submitted to upstream Linux soon. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add I2C for MT7981 SoCDaniel Golle2023-03-271-0/+74
| | | | | | | Add patch to support I2C on the MT7981 SoC. This change will also be submitted to upstream Linux soon. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: simplify MaxLinear GPY PHY driverDaniel Golle2023-03-271-0/+166
| | | | | | | | | | | | | | | The mxl-gpy driver apparently was built in the assumption that SGMII auto-negotiation is always switched on at the MAC. This may be true for few rather recent drivers (why?), but certainly isn't for most drivers unless 'managed = "in-band-status"' is set in device tree. Add patch to the mediatek target which reduces mxl-gpy to behave more like an ordinary PHY driver using out-of-band status. This allows to use these PHYs without rate-adaptation which seems to be at least partially broken/racy in some revisions of the PHY and/or internal PHY firmware. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: dsa: make use of pcs-mtk-lynxi also for mt7530Daniel Golle2023-03-271-0/+514
| | | | | | | | The MT7531 switch IC comes with SerDes ports with PCS identical to what is also used in MediaTek's SoCs. Make use of the shared driver to ease maintainance and reduce code duplication. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: backport regmap reg_base and downshift featuresDaniel Golle2023-03-274-1/+243
| | | | | | | Backport new regmap features from Linux 5.18 which are needed to let mt7530 use pcs-mtk-lynxi. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: mtk_eth_soc: switch to external PCS driverDaniel Golle2023-03-278-25/+537
| | | | | | Backport patch to make use of the new PCS driver in mtk_eth_soc. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: pcs-mtk-lynxi: add hack to use 2500Base-X without ANDaniel Golle2023-03-271-0/+40
| | | | | | | | | | Using 2500Base-T SFP modules e.g. on the BananaPi R3 requires manually disabling auto-negotiation, e.g. using ethtool. While a proper fix using SFP quirks is being discussed upstream, bring a work-around to restore user experience to what it was before the switch to the dedicated SGMII PCS driver. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: net: pcs: add driver for MediaTek SGMII PCSDaniel Golle2023-03-2710-13/+407
| | | | | | Backport dedicated PCS driver for MediaTek LynxI SGMII/SerDes unit. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: mtk_eth_soc: allow setting MDIO clock frequencyDaniel Golle2023-03-278-23/+99
| | | | | | | | Backport patch allowing to set the MDIO bus clock frequency. By default the MDIO bus clock runs on 2.5 MHz, allow increasing it up to 25 MHz. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add support for built-in GE PHYs of newer SoCsDaniel Golle2023-03-274-0/+1446
| | | | | | | | | | | MT7981 and the upcoming MT7988 have built-in Gigabit Ethernet PHYs. While they share some design properties with the PHYs present in MT753x, they do need calibration data from the SoC's efuse. Add driver to support them. Upstreaming it is planned, but there are still some ongoing discussions with MediaTek. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: backport support for MT7981 EthernetDaniel Golle2023-03-272-1/+184
| | | | | | Backport support for the MT7981 SoC to mtk_eth_soc. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: backport pinctrl driver for MT7981 SoCDaniel Golle2023-03-274-0/+1021
| | | | | | | Backport the pinctrl driver for the MT7981 SoC. The driver has also been submitted upstream and is part of Linux 6.3. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: backport clk driver for MT7981 SoCDaniel Golle2023-03-2710-0/+1185
| | | | | | | Backport driver for common clocks in MT7981 SoC. The driver has also been submitted upstream and became part of Linux 6.3. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: replace mtk_sgmii patches with versions accepted upstreamDaniel Golle2023-03-2721-223/+875
| | | | | | | | | Replace patches for MediaTek Ethernet driver SGMII/SerDes unit with their corresponding upstream patches. Not all of the patches in our tree went upstream as-is, some are slightly different implementations, and they require the phylink_pcs helpers now made available. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: backport some phylink helper functionsDaniel Golle2023-03-272-1/+151
| | | | | | | | | | | | | | It isn't feasible to literally backport all upstream phylink_pcs changes down to Linux 5.15: It's just too many patches, and many downstream drivers and hacks are likely to break. We are too close to branching off to risk this, and it's also just too much work. Instead just add helper functions used by modern PCS drivers while keeping the original functions instact as well. While this may add a kilobyte or two of extra kernel size, it has the advantage that we get the best of both worlds: None of the existing codepaths are touched, but yet we have the option to backport singular improvements to Ethernet drivers where needed. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* generic: 5.15: refresh kernel patchesChristian Marangi2023-03-2730-553/+261
| | | | | | | Refresh kernel patches for generic kernel 5.15 due to new backport version of MGLRU patchset. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* kernel: Update MGLRU patchsetKazuki H2023-03-2737-4805/+9996
| | | | | | | | The current patches are old, update them from mainline. Backports taken from https://github.com/yuzhaogoogle/linux/commits/mglru-5.15 Tested-by: Kazuki H <kazukih0205@gmail.com> #mt7622/Linksys E8450 UBI Signed-off-by: Kazuki H <kazukih0205@gmail.com>
* ramips: add support for Keenetic Lite III rev. AAlexey Bartenev2023-03-274-0/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | General specification: SoC Type: MediaTek MT7620N (580MHz) ROM: 8 MB SPI-NOR (W25Q64FV) RAM: 64 MB DDR (EM6AB160TSD-5G) Switch: MediaTek MT7530 Ethernet: 5 ports - 5×100MbE (WAN, LAN1-4) Wireless: 2.4 GHz (MediaTek RT5390): b/g/n Buttons: 3 button (POWER, RESET, WPS) Slide switch: 4 position (BASE, ADAPTER, BOOSTER, ACCESS POINT) Bootloader: U-Boot 1.1.3 Power: 9 VDC, 0.6 A MAC in stock: |- + | | LAN | RF-EEPROM + 0x04 | | WLAN | RF-EEPROM + 0x04 | | WAN | RF-EEPROM + 0x28 | OEM easy installation 1. Use a PC to browse to http://my.keenetic.net. 2. Go to the System section and open the Files tab. 3. Under the Files tab, there will be a list of system files. Click on the Firmware file. 4. When a modal window appears, click on the Choose File button and upload the firmware image. 5. Wait for the router to flash and reboot. OEM installation using the TFTP method 1. Download the latest firmware image and rename it to klite3_recovery.bin. 2. Set up a Tftp server on a PC (e.g. Tftpd32) and place the firmware image to the root directory of the server. 3. Power off the router and use a twisted pair cable to connect the PC to any of the router's LAN ports. 4. Configure the network adapter of the PC to use IP address 192.168.1.2 and subnet mask 255.255.255.0. 5. Power up the router while holding the reset button pressed. 6. Wait approximately for 5 seconds and then release the reset button. 7. The router should download the firmware via TFTP and complete flashing in a few minutes. After flashing is complete, use the PC to browse to http://192.168.1.1 or ssh to proceed with the configuration. Signed-off-by: Alexey Bartenev <41exey@proton.me>
* bcm47xx: enable adm6996 only on legacy subtargetAleksander Jan Bajkowski2023-03-274-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The generic subtarget supports only a few devices. None of these devices are equipped with a ADM6996 switch. On the mips74k subtarget, the driver for the adm6996 switch is disabled. So it seems that the ADM6996 driver should be enabled only on the legacy subtarget. Support for ADM6996 switches was enabled in commit 68081fc1c8c7814b1c064431eb2e364f9226801a. At the time when this driver was enabled the bcm47xx target had only one subtarget. Switches used by individual devices suported by the generic subtarget are listed below. Device Switch Edimax PS-1208MFG int. SoC Linksys WRT300N v1.1 Broadcom BCM5325 Linksys WRT310N v1 Broadcom BCM5397 Linksys WRT350N v1 Broadcom BCM5397 Linksys WRT610N v1 Broadcom BCM53115 Linksys WRT610N v2 Broadcom BCM53115 Linksys E3000 v1 Broadcom BCM53115 Reduce uncompressed kernel size by 8320 Bytes. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* bcm47xx: refresh configAleksander Jan Bajkowski2023-03-272-10/+6
| | | | | | | This was done by executing these command: $ make kernel_oldconfig CONFIG_TARGET=subtarget Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* lantiq: xway: add support for AVM FRITZ!Box 7330Aleksander Jan Bajkowski2023-03-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The AVM FRITZ!Box 7330 shares hardware with the AVM Fritzbox 7320 except for the second ethernet port, which only supports 100M. Hardware: - SoC: Lantiq ARX 188 - CPU: 2x MIPS 34Kc 393 MHz - RAM: 64 MiB 196 MHz - Flash: 16 MiB NAND - Ethernet: Built-in Gigabit Ethernet switch, 1x 1GbE, 1x 100M - Wifi: Atheros AR9227-BC2A b/g/n with 2 pcb/internal antennas - USB: 2x USB 2.0 - DSL: Built-in ADSL2+ modem - DECT: Dialog SC14441 - LEDs: 1 two-color, 4 one-color - Buttons: 1x DECT, 1x WIFI - Telephone connectors: 1 FXS port via TAE or RJ11 connector Installation: The installation process is described on the wiki. Unsupported (same as AVM 7320): - VoIP (DECT and FXS), - Second Ethernet port. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* ath79: Add Aruba AP-175 supportMartin Kennedy2023-03-273-0/+254
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This board is very similar to the Aruba AP-105, but is outdoor-first. It is very similar to the MSR2000 (though certain MSR2000 models have a different PHY[^1]). A U-Boot replacement is required to install OpenWrt on these devices[^2]. Specifications -------------- * Device: Aruba AP-175 * SoC: Atheros AR7161 680 MHz MIPS * RAM: 128MB - 2x Mira P3S12D40ETP * Flash: 16MB MXIC MX25L12845EMI-10G (SPI-NOR) * WiFi: 2 x DNMA-H92 Atheros AR9220-AC1A 802.11abgn * ETH: IC+ IP1001 Gigabit + PoE PHY * LED: 2x int., plus 12 ext. on TCA6416 GPIO expander * Console: CP210X linking USB-A Port to CPU console @ 115200 * RTC: DS1374C, with internal battery * Temp: LM75 temperature sensor Factory installation: - Needs a u-boot replacement. The process is almost identical to that of the AP105, except that the case is easier to open, and that you need to compile u-boot from a slightly different branch: https://github.com/Hurricos/u-boot-ap105/tree/ap175 The instructions for performing an in-circuit reflash with an SPI-Flasher like a CH314A can be found on the OpenWrt Wiki (https://openwrt.org/toh/aruba/ap-105); in addition a detailed guide may be found on YouTube[^3]. - Once u-boot has been replaced, a USB-A-to-A cable may be used to connect your PC to the CP210X inside the AP at 115200 baud; at this point, the normal u-boot serial flashing procedure will work (set up networking; tftpboot and boot an OpenWrt initramfs; sysupgrade to OpenWrt proper.) - There is no built-in functionality to revert back to stock firmware, because the AP-175 has been declared by the vendor[^4] end-of-life as of 31 Jul 2020. If for some reason you wish to return to stock firmware, take a backup of the 16MiB flash before flashing u-boot. [^1]: https://github.com/shalzz/aruba-ap-310/blob/master/platform/bootloader/apboot-11n/include/configs/msr2k.h#L186 [^2]: https://github.com/Hurricos/u-boot-ap105/tree/ap175 [^3]: https://www.youtube.com/watch?v=Vof__dPiprs [^4]: https://www.arubanetworks.com/support-services/end-of-life/#product=access-points&version=0 Signed-off-by: Martin Kennedy <hurricos@gmail.com>
* ramips: mt7621: enable unused PCIe port to fix potential boot failureShiji Yang2023-03-264-16/+0
| | | | | | | | | | | | | One user reported that his SIMAX1800T couldn't boot like the others. After debugging, I found that this was caused by the disabled PCIe port. I cannot reproduce this issue on my SIMAX1800T. But when I disabled pcie2 on the ASUS RT-AC57U, I got the same result. It seems that disabling these unused PCIe ports on some mt7621 revisions will cause PCIe to fail to initialize. So we'd better to re-enable them on all related mt7621 devices. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ramips: fix 5g mac for TOTOLINK X5000RChuanhong Guo2023-03-261-0/+4
| | | | | | | | | There's no valid mac address for the second band in the eeprom. The vendor fw uses 2.4G mac + 4 as the mac for 5G radio. Do the same in our firmware. Fixes: 23be410b3d ("ramips: add support for TOTOLINK X5000R") Signed-off-by: Chuanhong Guo <gch981213@gmail.com>