aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ramips: fix GB-PC1 and GB-PC2 device supportArınç ÜNAL2022-08-266-63/+68
| | | | | | | | | | | | | | | | | Change switch port labels to ethblack & ethblue. Change lan1 & lan2 LEDs to ethblack_act & ethblue_act and fix GPIO pins. Add the external phy with ethyellow label on the GB-PC2 devicetree. Do not claim rgmii2 as gpio, it's used for ethernet with rgmii2 function. Enable ICPlus PHY driver for IP1001 which GB-PC2 has got. Update interface name and change netdev function. Enable lzma compression to make up for the increased size of the kernel. Make spi flash bindings on par with mainline Linux to fix read errors. Tested on GB-PC2 by Petr. Tested-by: Petr Louda <petr.louda@outlook.cz> Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> (cherry picked from commit 4807bd6a00bcf44dd821047db76a2a799f403cd4)
* ipq806x: add missing scaling_available_frequencies for dedicated cpufreqChristian Marangi2022-08-211-1/+7
| | | | | | | | | | | | Add missing scaling_available_frequencies sysfs entry for dedicated cpufreq driver. This sysfs entry is not standard and each cpufreq driver needs to provide it and declare it in the cpufreq driver struct attr. Fixes: 5dbbefcbccc0 ("ipq806x: introduce dedicated krait cpufreq") Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> [ fix conflict by dropping 5.15 patch not present in openwrt-22.03 ] (cherry picked from commit d6994c53cd0e5334478d2aab424674da438804e2)
* ramips: get MAC addr from the encrypted partition (WG4хх223)Mikhail Zhilkin2022-08-193-13/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit resolves #10062. Adds decryption of the Arcadyan WG4xx223 configuration partition (board_data)to get base MAC address from it. As a result, after this change the hack with saving MAC addressees to u-boot-env before installation of OpenWrt is no longer necessary. This is necessary for the following devices: - Beeline Smartbox Flash (Arcadyan WG443223) - MTS WG430223 (Arcadyan WG430223) Example: +----------------+-------------------+------------------------+ | | MTS WG430223 | Beeline Smartbox Flash | +----------------+-------------------+------------------------+ | base mac (mtd) | A4:xx:xx:51:xx:F4 | 30:xx:xx:51:xx:06 | | label | A4:xx:xx:51:xx:F4 | 30:xx:xx:51:xx:09 | | LAN | A4:xx:xx:51:xx:F6 | 30:xx:xx:51:xx:09 | | WAN | A4:xx:xx:51:xx:F4 | 30:xx:xx:51:xx:06 | | WLAN_2g | A4:xx:xx:51:xx:F5 | 30:xx:xx:51:xx:07 | | WLAN_5g | A6:xx:xx:21:xx:F5 | 32:xx:xx:41:xx:07 | +----------------+-------------------+------------------------+ Collected statistic shows that the 2-4th bits of the 7th byte of the WLAN_5g MAC are the constant (see #10062 for more details): - Beeline Smartbox Flash - 100 - MTS WG430223 - 010 Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com> (cherry picked from commit a6b0d0806055a53a2538df83f8322c38ee9f3441)
* ramips: allow custom trx magic for ArcadyanMikhail Zhilkin2022-08-161-3/+4
| | | | | | | | | | | | | | | This commit: 1. Renames beeline-trx recipe in mt7621.mk to arcadyan-trx. The recipe is necessary for: - MTS WG430223 (Arcadyan WG430223) - Beeline Smartbox Flash (Arcadyan WG443223) 2. Allows specify custom trx magic which is different for the routers mentined above. Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com> (cherry picked from commit 109c503bee9aed34ffb485a29af1e2ec6f3bb6b1) [fix merging conflict in mt7621.mk] Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* ramips: create new dtsi for Arcadyan routersMikhail Zhilkin2022-08-162-186/+199
| | | | | | | | | | | | | | | | | | | | This commit moves common properties for the boards below to a new dtsi: Beeline Smartbox Flash (Arcadyan WG443223) MTS WG430223 (Arcadyan WG430223) The boards are almost the same. Here is the differences: +------+----------+----------+ | | WG430223 | WG443223 | +------+----------+----------+ | RAM | 128 | 256 | +------+----------+----------+ | USB | - | 1x3.0 | +------+----------+----------+ | LEDS | RG | RGB | +------+----------+----------+ Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com> (cherry picked from commit 5b59137a162c07738abbe9fd37125193b3107cb7)
* ramips: add support for MTS WG430223Mikhail Zhilkin2022-08-165-2/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MTS WG430223 is a wireless AC1300 (WiFi 5) router manufactured by Arcadyan company. It's very similar to Beeline Smartbox Flash (Arcadyan WG443223). Device specification -------------------- SoC Type: MediaTek MT7621AT RAM: 128 MiB Flash: 128 MiB (Winbond W29N01HV) Wireless 2.4 GHz (MT7615DN): b/g/n, 2x2 Wireless 5 GHz (MT7615DN): a/n/ac, 2x2 Ethernet: 3xGbE (WAN, LAN1, LAN2) USB ports: No Button: 1 (Reset/WPS) LEDs: 2 (Red, Green) Power: 12 VDC, 1 A Connector type: Barrel Bootloader: U-Boot (Ralink UBoot Version: 5.0.0.2) OEM: Arcadyan WG430223 Installation ------------ 1. Login to the router web interface (superadmin:serial number) 2. Navigate to Administration -> Miscellaneous -> Access control lists & enable telnet & enable "Remote control from any IP address" 3. Connect to the router using telnet (default admin:admin) 4. Place *factory.trx on any web server (192.168.1.2 in this example) 5. Connect to the router using telnet shell (no password required) 6. Save MAC adresses to U-Boot environment: uboot_env --set --name eth2macaddr --value $(ifconfig | grep eth2 | \ awk '{print $5}') uboot_env --set --name eth3macaddr --value $(ifconfig | grep eth3 | \ awk '{print $5}') uboot_env --set --name ra0macaddr --value $(ifconfig | grep ra0 | \ awk '{print $5}') uboot_env --set --name rax0macaddr --value $(ifconfig | grep rax0 | \ awk '{print $5}') 7. Ensure that MACs were saved correctly: uboot_env --get --name eth2macaddr uboot_env --get --name eth3macaddr uboot_env --get --name ra0macaddr uboot_env --get --name rax0macaddr 8. Download and write the OpenWrt images: cd /tmp wget http://192.168.1.2/factory.trx mtd_write erase /dev/mtd4 mtd_write write factory.trx /dev/mtd4 9. Set 1st boot partition and reboot: uboot_env --set --name bootpartition --value 0 Back to Stock ------------- 1. Run in the OpenWrt shell: fw_setenv bootpartition 1 reboot 2. Optional step. Upgrade the stock firmware with any version to overwrite the OpenWrt in Slot 1. MAC addresses ------------- +-----------+-------------------+----------------+ | Interface | MAC | Source | +-----------+-------------------+----------------+ | label | A4:xx:xx:51:xx:F4 | No MACs was | | LAN | A4:xx:xx:51:xx:F6 | found on Flash | | WAN | A4:xx:xx:51:xx:F4 | [1] | | WLAN_2g | A4:xx:xx:51:xx:F5 | | | WLAN_5g | A6:xx:xx:21:xx:F5 | | +-----------+-------------------+----------------+ [1]: a. Label wasb't found neither in factory nor in other places. b. MAC addresses are stored in encrypted partition "glbcfg". Encryption key hasn't known yet. To ensure the correct MACs in OpenWrt, a hack with saving of the MACs to u-boot-env during the installation was applied. c. Default Ralink ethernet MAC address (00:0C:43:28:80:A0) was found in "Factory" 0xfff0. It's the same for all MTS WG430223 devices. OEM firmware also uses this MAC when initialazes ethernet driver. In OpenWrt we use it only as internal GMAC (eth0), all other MACs are unique. Therefore, there is no any barriers to the operation of several MTS WG430223 devices even within the same broadcast domain. Stock firmware image format --------------------------- The same as Beeline Smartbox Flash but with another trx magic +--------------+---------------+----------------------------------------+ | Offset | | Description | +==============+===============+========================================+ | 0x0 | 31 52 48 53 | TRX magic "1RHS" | +--------------+---------------+----------------------------------------+ Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com> (cherry picked from commit 498c15376bae109bfe130cc5581f83e4cc52c0f9)
* ramips: add support for ASUS RT-AX53UChuncheng Chen2022-08-163-0/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifications: - Device: ASUS RT-AX53U - SoC: MT7621AT - Flash: 128MB - RAM: 256MB - Switch: 1 WAN, 3 LAN (10/100/1000 Mbps) - WiFi: MT7905 2x2 2.4G + MT7975 2x2 5G - Ports: USB 3.0 - LEDs: 1x POWER (blue, configurable) 3x LAN (blue, configurable) 1x WAN (blue, configurable) 1x USB (blue, not configurable) 1x 2.4G (blue, not configurable) 1x 5G (blue, not configurable) Flash by U-Boot TFTP method: - Configure your PC with IP 192.168.1.2 - Set up TFTP server and put the factory.bin image on your PC - Connect serial port(rate:115200) and turn on AP, then interrupt "U-Boot Boot Menu" by hitting any key Select "2. Upgrade firmware" Press enter when show "Run firmware after upgrading? (Y/n):" Select 0 for TFTP method Input U-Boot's IP address: 192.168.1.1 Input TFTP server's IP address: 192.168.1.2 Input IP netmask: 255.255.255.0 Input file name: openwrt-ramips-mt7621-asus_rt-ax53u-squashfs-factory.bin - Restart AP aftre see the log "Firmware upgrade completed!" Signed-off-by: Chuncheng Chen <ccchen1984@gmail.com> (replaced led label, added key-* prefix to buttons, added note about BBT) Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 8c00fd9b4519bf0ef8fb3470a6df421b9f38c03c)
* mvebu: backport pending Turris Omnia LEDs improvementsJosef Schlehofer2022-08-164-1/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It backports this patch series, which is currently on review: https://lore.kernel.org/linux-leds/20220704105955.15474-1-kabel@kernel.org/T/#rb89a4ca5a836f17bdcc53d65549e0b1779bb6a18 It allows being able to configure LEDs in userspace. This fixes issue described in Turris Build repository https://gitlab.nic.cz/turris/os/build/-/issues/354 It happens in OpenWrt as well. - Before ``` root@turris:/# ls /sys/class/leds/ ath10k-phy0 ath9k-phy1 mmc0:: ``` -After ``` root@turris:/# ls /sys/class/leds/ ath10k-phy0 rgb:indicator-2 rgb:lan-3 rgb:wlan-1 ath9k-phy1 rgb:lan-0 rgb:lan-4 rgb:wlan-2 mmc0:: rgb:lan-1 rgb:power rgb:wlan-3 rgb:indicator-1 rgb:lan-2 rgb:wan ``` Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com> (cherry picked from commit 049368b936988ce2c7f82c07367d168600fdbaa6)
* mvebu: backport DTS changes for Turris Omnia from mvebu/dtJosef Schlehofer2022-08-162-0/+86
| | | | | | | | | | | | My commit backported patches from the following links: - https://lore.kernel.org/linux-arm-kernel/20220704113622.18887-1-kabel@kernel.org/ - https://lore.kernel.org/linux-arm-kernel/20220704113622.18887-2-kabel@kernel.org/ According to the links, they are applied in repository mvebu in branch dt, so it should be included in upcoming Linux version soon. Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com> (cherry picked from commit 2ae26f523e9bfcd3bdfa93604afe8de9addf5a90)
* mpc85xx: enable NAND support for all subtargetsJosef Schlehofer2022-08-163-3/+1
| | | | | | | | | | | | | | | In subtarget p2020, there wasn't enabled nand support, and because of that there weren't available tools from mtd-utils package, which has utilities for NAND flash memory even though reference board, which is the only currently supported device in p2020 subtarget has NAND [1]. All subtargets in mpc85xx has already enabled nand support, let's do it globally. [1] https://www.nxp.com/design/qoriq-developer-resources/p2020-reference-design-board:P2020RDB Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com> (cherry picked from commit 6006f73383cc7626552175010de23530bdcc8718)
* kernel: add kmod-leds-turris-omniaStefan Kalscheuer2022-08-162-1/+17
| | | | | | | | | | | | | | | | Add support for LEDs of the CZ.NIC Turris Omnia using the upstream driver. There is no generic way to control the LEDs in UCI manner, however the kernel module is the first step to actually use the RGB LEDs in custom logic. Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de> (removed DMARC notice, added driver to Turris Omnia, moved module recipe to target/linux/mvebu/modules.mk) Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit f8fa38c13fcc3b4ce9a4dfc56d98e5188353afac) Reviewed-by: Robert Marko <robimarko@gmail.com>
* ath25: fix initramfs image generationLech Perczak2022-08-141-0/+3
| | | | | | | | | | | | | | | | | Commit 21f460a5dbef ("ath25: fix duplicate LZMA compression") changed the way kernel images are generated, affecting initramfs images instead. Initramfs images were previously ELF images, and by mistake this change caused the raw kernel image to be used as a source. This caused them to be non-loadable by bootloaders. Restore the previous KERNEL_INITRAMFS recipe and adjust KERNEL_INITRAMFS_NAME to point at the correct source artifact. While at that, adjust KERNEL_INITRAMFS_SUFFIX to -kernel.elf, so it matches the suffix of non-initramfs kernel artifact. Fixes: 21f460a5dbef ("ath25: fix duplicate LZMA compression") Signed-off-by: Lech Perczak <lech.perczak@gmail.com> (cherry picked from commit 9f5cbb6e8b9537942db405719bf7662d0e08b8c5)
* ath25: fix ELF image generationLech Perczak2022-08-141-1/+1
| | | | | | | | | | | | | Commit 21f460a5dbef ("ath25: fix duplicate LZMA compression"), when attempting to restore ELF artifact generation, copiedover the raw kernel image twice. Because of that, the .elf artifact was actually a duplicate of raw image. Fix that by copying over .elf suffixed kernel image instead. Fixes: 21f460a5dbef ("ath25: fix duplicate LZMA compression") Signed-off-by: Lech Perczak <lech.perczak@gmail.com> (cherry picked from commit 611291383a826827f240eddebca1949c2e1e7115)
* kernel: bump 5.10 to 5.10.136John Audia2022-08-141-1/+1
| | | | | | | All patches automatically rebased. Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 2239ead6eb63933d80e0c26dd95ba684fdd74006)
* kernel: bump 5.10 to 5.10.135John Audia2022-08-143-6/+6
| | | | | | | All patches automatically rebased. Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit ccff2fbaea50ae983a25483a40ae2dbaeeca5581)
* kernel: Backport upstream flowtable patches from 5.15Hauke Mehrtens2022-08-149-8/+446
| | | | | | | | | | | | | | | | | | | This backports some patches from kernel 5.15 to fix issues with flowtable offloading in kernel 5.10. OpenWrt backports most of the patches related to flowtable offloading from kernel 5.15 already, but we are missing some of the extra fixes. This fixes some connection tracking problems when a flow gets removed from the offload and added to the normal SW path again. The patch 614-v5.18-netfilter-flowtable-fix-TCP-flow-teardown.patch was extended manually with the nf_conntrack_tcp_established() function. All changes are already included in kernel 5.15. Fixes: #8776 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 96ef2dabce1a5f102d53a15f33383193b47fd297)
* kernel: kmod-nft-nat6: Remove packageHauke Mehrtens2022-08-141-3/+0
| | | | | | | | | | | | The nft NAT packages for IPv4 and IPv6 were merged into the common packages with kernel 5.1. The kmod-nft-nat6 package was empty in our build, remove it. Multiple kernel configuration options were also removed, remove them from our generic kernel configuration too. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit b75425370d8de747457c137463bc4d15f6f44d00)
* kernel: scale nf_conntrack_max more reasonablyVincent Pelletier2022-08-112-0/+125
| | | | | | | | | | | | | | | | | | | | Use the kernel's built-in formula for computing this value. The value applied by OpenWRT's sysctl configuration file does not scale with the available memory, under-using hardware capabilities. Also, that formula also influences net.netfilter.nf_conntrack_buckets, which should improve conntrack performance in average (fewer connections per hashtable bucket). Backport upstream commit for its effect on the number of connections per hashtable bucket. Apply a hack patch to set the RAM size divisor to a more reasonable value (2048, down from 16384) for our use case, a typical router handling several thousands of connections. Signed-off-by: Vincent Pelletier <plr.vincent@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> (cherry picked from commit 15fbb916669dcdfcc706e9e75263ab63f9f27c00)
* ramips: Add Xiaomi Mi Router 4A 100M InternationalNita Vesa2022-08-093-1/+69
| | | | | | | | | | | | | | The international version of Mi Router 4A 100M is physically identical to the non-international one, but appears to be using a different partitioning scheme with the "overlay" partition being 2MiB in size instead of 1MiB. This means the following "firmware" partition starts at a different address and the DTS needs to be adjusted for the firmware to work. Signed-off-by: Nita Vesa <werecatf@outlook.com> (cherry picked from commit 1a8c74da709190e5157af9f5c2502b600f6273bb) Signed-off-by: Tom Herbers <freifunk@tomherbers.de>
* realtek: Fix typo in Kconfig promptOlliver Schinagl2022-08-061-1/+1
| | | | | | | | | | As the symbol RTL930x shows, the bool enables the RTL930x platform, not the RTL839x one. Signed-off-by: Olliver Schinagl <oliver@schinagl.nl> (slightly changed commit subject) Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 943905b0b6ee59fb7eaf3611960c0ec87ed61bbc)
* kernel: silence refresh warningChristian Lamparter2022-08-061-1/+1
| | | | | | | |Warning: trailing whitespace in line 66 of drivers/mtd/parsers/Kconfig Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit d6801e0d3f8b0e764fef3d698edf74b3758667ec)
* x86: add missing Lex 3I380NX network detectionPaul Spooren2022-08-061-0/+52
| | | | | | | | | | | | | | | | | | | | The Lex 3I380NX industrial PC has 4 ethernet controllers on board which need pmc_plt_clk0 - 3 to function, add it to the critclk_systems DMI table, so that drivers/clk/x86/clk-pmc-atom.c will mark the clocks as CLK_CRITICAL and they will not get turned off. This commit is nearly redundant to 3d0818f5eba8 ("platform/x86: pmc_atom: Add Lex 3I380D industrial PC to critclk_systems DMI table") but for the 3I380NX device. The original vendor firmware is only available using the WaybackMachine: http://www.lex.com.tw/products/3I380NX.html Signed-off-by: Michael Schöne <michael.schoene@rhebo.com> Signed-off-by: Paul Spooren <paul.spooren@rhebo.com> (Hans broader version for more Lex Baytrail systems) Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 8019410f566377d958e2bd23673d168742ab2f44)
* lantiq: fix lan port 3+4 phy-mode settings for Fritzbox 3390Daniel Kestrel2022-08-061-2/+2
| | | | | | | | | There are forum reports that 2 LAN ports are still not working, the phy-mode settings are adjusted to fix the problem. Fixes: #10371 Signed-off-by: Daniel Kestrel <kestrel1974@t-online.de> (cherry picked from commit 8756a047874bf688138a81898b6973f196cd1d36)
* ipq40xx: fix RUTX10 Wi-Fi woesKasparas Elzbutas2022-08-052-30/+8
| | | | | | | | | | | | | This partially reverts: commit cfc13c44595d ("ipq40xx: utilize nvmem-cells for macs & (pre-)calibration data") U-Boot on these devices mangles the device tree, so nvmem-cell type calibration doesn't work. Fixes: cfc13c44595d ("ipq40xx: utilize nvmem-cells for macs & (pre-)calibration data") Signed-off-by: Kasparas Elzbutas <elzkas@gmail.com> (added reference to commit, rewrote commit message) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* kernel: bump 5.10 to 5.10.134John Audia2022-07-3011-14/+14
| | | | | | | All patches automatically rebased. Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 7be62b1187bb7e21bcdaadfc3d47713a91f05898)
* x86: update defconfig for 5.10.133John Audia2022-07-301-1/+7
| | | | | | | | | Add some new/missing symbols relating to speculative execution mitigations[1]. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v5.10.133&id2=v5.10.132 Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 56760c0b1316a0e379ff141b895c2929f0dace8d)
* kernel: bump 5.10 to 5.10.133John Audia2022-07-304-4/+4
| | | | | | | | | | All patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 913f160ac6c4dcf69ec0eb805c8a1cee809ace45)
* kernel: bump 5.10 to 5.10.132John Audia2022-07-3010-79/+18
| | | | | | | | | | All patches automatically rebased. The following patch was replaced by a similar version upstream: bcm27xx/patches-5.10/950-0036-tty-amba-pl011-Add-un-throttle-support.patch Signed-off-by: John Audia <therealgraysky@proton.me> (cherry picked from commit 7d3c0928de191b203dd5b27ddf208698d08639e3)
* octeon: add SUPPORTED_DEVICES to er/erlitePaul Spooren2022-07-291-0/+2
| | | | | | | | | | | | | | | | | Using the BOARD_NAME variable results for both er and erlite devices to identify themselfs as `er` and `erlite` (via `ubus call system board`). This is problematic when devices search for firmware upgrades since the OpenWrt profile is actually called `ubnt_edgerouter` and `ubnt_edgerouter-lite`. By adding the `SUPPORTED_DEVICE` a mapping is created to point devices called `er` or `erlite` to the corresponding profile. FIXES: https://github.com/openwrt/asu/issues/348 Signed-off-by: Paul Spooren <mail@aparcar.org> (cherry picked from commit 2a07270180ed0e295d854d6e9e59c78c40549efc)
* uboot-bcm4908: include SoC in output filesRafał Miłecki2022-07-282-4/+4
| | | | | | | | | This fixes problem of overwriting BCM4908 U-Boot and DTB files by BCM4912 ones. That bug didn't allow booting BCM4908 devices. Fixes: f4c2dab544ec2 ("uboot-bcm4908: add BCM4912 build") Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit a8e1e30543239e85ff5dc220368164b66cf73fba)
* bcm4908: build bootfs image per-SoCRafał Miłecki2022-07-284-59/+92
| | | | | | | | | | | | | | | | | In theory we could have just 1 bootfs image for all devices as each device has its own entry in the "configurations" node. It doesn't work well with default configuration though. If something goes wrong U-Boot SPL can be interrupted (by pressing A) to enter its minimalistic menu. It allows ignoring boardid. In such case bootfs default configuration is used. For above reason each SoC family (BCM4908, BCM4912) should have its own bootfs built. It allows each of them to have working default configuration. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 6ae2f7ff4737ec8dbec026fc6c02f7d1850b521c)
* lantiq: fix network port GPIO settings for Fritzbox 3390Daniel Kestrel2022-07-231-2/+2
| | | | | | | | There are forum reports that 2 LAN ports are not working, the GPIO settings are adjusted to fix the problem. Signed-off-by: Daniel Kestrel <kestrel1974@t-online.de> (cherry picked from commit 0f301b0b1d7ca4b5fe290a72f0434525405f5a26)
* ipq806x: Archer VR2600: fix switch ports numberingChristian Lamparter2022-07-231-3/+3
| | | | | | | | | The order of LAN ports shown in Luci is reversed compared to what is written on the case of the device. Fix the order so that they match. Fixes: #10275 Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 69ea671320c936e72f554348475eeebcab383b42)
* realtek: correct egress frame port verificationSander Vanheule2022-07-212-39/+36
| | | | | | | | | | | | | | | | | | | | | Destination switch ports for outgoing frame can range from 0 to CPU_PORT-1. Refactor the code to only generate egress frame CPU headers when a valid destination port number is available, and make the code a bit more consistent between different switch generations. Change the dest_port argument's type to 'unsigned int', since only positive values are valid. This fixes the issue where egress frames on switch port 0 did not receive a VLAN tag, because they are sent out without a CPU header. Also fixes a potential issue with invalid (negative) egress port numbers on RTL93xx switches. Reported-by: Arınç ÜNAL <arinc.unal@xeront.com> Suggested-by: Birger Koblitz <mail@birger-koblitz.de> Tested-by: Luiz Angelo Daros de Luca <luizluca@gmail.com> Signed-off-by: Sander Vanheule <sander@svanheule.net> (cherry picked from commit 1773264a0c6da099af7f36046f95f0126d6de1eb)
* realtek: correct egress frame priority assignmentSander Vanheule2022-07-211-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | Priority values passed to the egress (TX) frame header initialiser are invalid when smaller than 0, and should not be assigned to the frame. Queue assignment is then left to the switch core logic. Current code for RTL83xx forces the passed priority value to be positive, by always masking it to the lower bits, resulting in the priority always being set and enabled. RTL93xx code doesn't even check the value and unconditionally assigns the (32 bit) value to the (5 bit) QID field without masking. Fix priority assignment by only setting the AS_QID/AS_PRI flag when a valid value is passed, and properly mask the value to not overflow the QID/PRI field. For RTL839x, also assign the priority to the right part of the frame header. Counting from the leftmost bit, AS_PRI and PRI are in bits 36 and 37-39. The means they should be assigned to the third 16 bit value, containing bits 32-47. Tested-by: Luiz Angelo Daros de Luca <luizluca@gmail.com> Signed-off-by: Sander Vanheule <sander@svanheule.net> (cherry picked from commit 0b35a08a057848d909156604c4391a5d9f1d97e5)
* realtek: fix egress L2 learning on rtl839xSander Vanheule2022-07-211-1/+1
| | | | | | | | | | | | | The flag to enable L2 address learning on egress frames is in CPU header bit 40, with bit 0 being the leftmost bit of the header. This corresponds to BIT(7) in the third 16-bit value of the header. Correctly set L2LEARNING by fixing the off-by-one error. Fixes: 9eab76c84e31 ("realtek: Improve TX CPU-Tag usage") Tested-by: Luiz Angelo Daros de Luca <luizluca@gmail.com> Signed-off-by: Sander Vanheule <sander@svanheule.net> (cherry picked from commit d6165ea75baea4f9039f3a378d55219c74b932a7)
* realtek: fix egress port mask on rtl839xSander Vanheule2022-07-211-1/+1
| | | | | | | | | | | | | The flag to enable the outgoing port mask is in CPU header bit 43, with bit 0 being the leftmost bit of the header. This corresponds to BIT(4) in the third 16-bit value of the header. Correctly set AS_DPM by fixing the off-by-one error. Fixes: 9eab76c84e31 ("realtek: Improve TX CPU-Tag usage") Tested-by: Luiz Angelo Daros de Luca <luizluca@gmail.com> Signed-off-by: Sander Vanheule <sander@svanheule.net> (cherry picked from commit d9516cacb087fed7716b34b1e02ce956bb6c27f1)
* ramips: add support for Netgear WAX202Wenli Looi2022-07-216-0/+318
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Netgear WAX202 is an 802.11ax (Wi-Fi 6) router. Specifications: * SoC: MT7621A * RAM: 512 MiB NT5CC256M16ER-EK * Flash: NAND 128 MiB F59L1G81MB-25T * Wi-Fi: * MT7915D: 2.4/5 GHz (DBDC) * Ethernet: 4x 1GbE * Switch: SoC built-in * USB: None * UART: 115200 baud (labeled on board) Load addresses (same as ipTIME AX2004M): * stock * 0x80010000: FIT image * 0x81001000: kernel image -> entry * OpenWrt * 0x80010000: FIT image * 0x82000000: uncompressed kernel+relocate image * 0x80001000: relocated kernel image -> entry Installation: * Flash the factory image through the stock web interface, or TFTP to the bootloader. NMRP can be used to TFTP without opening the case. * Note that the bootloader accepts both encrypted and unencrypted images, while the stock web interface only accepts encrypted ones. Revert to stock firmware: * Flash the stock firmware to the bootloader using TFTP/NMRP. References in WAX202 GPL source: https://www.downloads.netgear.com/files/GPL/WAX202_V1.0.5.1_Source.rar * openwrt/target/linux/ramips/dts/mt7621-ax-nand-wax202.dts DTS file for this device. Signed-off-by: Wenli Looi <wlooi@ucalgary.ca> (cherry picked from commit 0f068e7c4a83bcbf20c4e52a5f8a3f1fe2af2246)
* kernel: Refresh kernel patchesHauke Mehrtens2022-07-194-11/+11
| | | | | | No manual changes needed. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 5.10 to 5.10.130John Audia2022-07-193-6/+6
| | | | | | | | | All patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: bump 5.10 to 5.10.129John Audia2022-07-198-20/+20
| | | | | | | | | All patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Signed-off-by: John Audia <therealgraysky@proton.me>
* mt7622: remove 300 MHz from dtsJohn Audia2022-07-191-0/+25
| | | | | | | | | | | | | | | | | Due to the bug described here[1], remove the 300 MHz clock to avoid a low voltage condition that can cause a hang when rebooting the RT3200/E8450. This solution is probably better than the script-based work-around[2]. 1. https://forum.openwrt.org/t/belkin-rt3200-linksys-e8450-wifi-ax-discussion/94302/1490 2. https://github.com/openwrt/openwrt/pull/5025 Signed-off-by: John Audia <therealgraysky@proton.me> Tested-by: Rui Salvaterra <rsalvaterra@gmail.com> Tested-by: John Audia <therealgraysky@proton.me> (cherry picked from commit d0d6b8e1833c587d0c50cac4f6324aa93b0bc8fc) [ fix the conflict by apply the patch to kernel 5.10 ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* bcm4908: use upstream-accepted watchdog patchesRafał Miłecki2022-07-182-1/+11
| | | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 864fdf2bf3f4b5c71e57a27c514672b966580148)
* bcm4908: backport latest DT patchesRafał Miłecki2022-07-187-1/+363
| | | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 001856fa51eaa704a254955138f76907eb02c2b4)
* kernel: update leds-bcm63138 driverRafał Miłecki2022-07-183-0/+85
| | | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit bb2a2b1dbe9c03d2abbb6989b6c4041e765543b0)
* kernel: backport LEDs driver for BCMBCA devicesRafał Miłecki2022-07-185-0/+499
| | | | | | | This includes BCM63xx and BCM4908 families. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit d9ab1e56d8d16182bd292f393c012d7e6873ed89)
* ath79: bsap18x0: pad rootfs imageTomasz Maciej Nowak2022-07-151-1/+1
| | | | | | | | | | | This image is supposed to be written with help of bootloader to the flash, but as it stands, it's not aligned to block size and RedBoot will happily create non-aligned partition size in FIS directory. This could lead to kernel to mark the partition as read-only, therefore pad the image to block erase size boundary. Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> (cherry picked from commit 9decd2a8436d2bb6b5f436268c92a6e6728486ce)
* ath79: ja76pf2: use nvmem cells to specify MAC addressesTomasz Maciej Nowak2022-07-152-4/+15
| | | | | | | | | | | | | The bootloader on this board hid the partition containig MAC addresses and prevented adding this space to FIS directory, therefore those had to be stored in RedBoot configuration as aliases to be able to assigne them to proper interfaces. Now that fixed partition size are used instead of redboot-fis parser, the partition containig MAC addresses could be specified, and with marking it as nvmem cell, we can assign them without userspace involvement. Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> (cherry picked from commit b52719b71a3337e5ae840c7a50fe41ebdc070f4e)
* ath79: move image check for devices with RedBootTomasz Maciej Nowak2022-07-152-31/+46
| | | | | | | | | | | Don't comence the switch to RAMFS when the image format is wrong. This led to rebooting the device, which could lead to false impression that upgrade succeded. Being here, factor out the code responsible for upgrading RedBoot devices to separate file. Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> (cherry picked from commit 5897c52e78e3cd3846db083d48dd9d6b47ff3a08)
* ath79: switch some RedBoot based devices to OKLI loaderTomasz Maciej Nowak2022-07-157-37/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After the kernel has switched version to 5.10, JA76PF2 and RouterStations lost the capability to sysupgrade the OpenWrt version. The cause is the lack of porting the patches responsible for partial flash erase block writing and these boards FIS directory and RedBoot config partitions share the same erase block. Because of that the FIS directory can't be updated to accommodate kernel/rootfs partition size changes. This could be remedied by bootloader update, but it is very intrusive and could potentially lead to non-trivial recovery procedure, if something went wrong. The less difficult option is to use OpenWrt kernel loader, which will let us use static partition sizes and employ mtd splitter to dynamically adjust kernel and rootfs partition sizes. On sysupgrade from ath79 19.07 or 21.02 image, which still let to modify FIS directory, the loader will be written to kernel partition, while the kernel+rootfs to rootfs partition. The caveats are: * image format changes, no possible upgrade from ar71xx target images * downgrade to any older OpenWrt version will require TFTP recovery or usage of bootloader command line interface To downgrade to 19.07 or 21.02, or to upgrade if one is already on OpenWrt with kernel 5.10, for RouterStations use TFTP recovery procedure. For JA76PF2 use instructions from this commit message: commit 0cc87b3bacee ("ath79: image: disable sysupgrade images for routerstations and ja76pf2"), replacing kernel image with loader (loader.bin suffix) and rootfs image with firmware (firmware.bin suffix). Fixes: b10d6044599d ("kernel: add linux 5.10 support") Fixes: 15aa53d7ee65 ("ath79: switch to Kernel 5.10") Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> (mkubntimage was moved to generic-ubnt.mk) Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 5c142aad7bc018fe000789740a486c49973035b8)