aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ramips: add support for Beeline SmartBox GIGAMikhail Zhilkin2022-07-0310-3/+352
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Beeline SmartBox GIGA is a wireless WiFi 5 router manufactured by Sercomm company. Device specification -------------------- SoC Type: MediaTek MT7621AT RAM: 256 MiB, Nanya NT5CC128M16JR-EK Flash: 128 MiB, Macronix MX30LF1G18AC Wireless 2.4 GHz (MT7603EN): b/g/n, 2x2 Wireless 5 GHz (MT7613BE): a/n/ac, 2x2 Ethernet: 3 ports - 2xGbE (WAN, LAN1), 1xFE (LAN2) USB ports: 1xUSB3.0 Button: 1 button (Reset/WPS) PCB ID: DBE00B-1.6MM LEDs: 1 RGB LED Power: 12 VDC, 1.5 A Connector type: barrel Bootloader: U-Boot Installation ----------------- 1. Downgrade stock (Beeline) firmware to v.1.0.02; 2. Give factory OpenWrt image a shorter name, e.g. 1001.img; 3. Upload and update the firmware via the original web interface. Remark: You might need make the 3rd step twice if your running firmware is booted from the Slot 1 (Sercomm0 bootflag). The stock firmware reverses the bootflag (Sercomm0 / Sercomm1) on each firmware update. Revert to stock --------------- 1. Change the bootflag to Sercomm1 in OpenWrt CLI and then reboot: printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3 2. Optional: Update with any stock (Beeline) firmware if you want to overwrite OpenWrt in Slot 0 completely. MAC Addresses ------------- +-----+-----------+---------+ | use | address | example | +-----+-----------+---------+ | LAN | label | *:16 | | WAN | label + 1 | *:17 | | 2g | label + 4 | *:1a | | 5g | label + 5 | *:1b | +-----+-----------+---------+ The label MAC address was found in Factory 0x21000 Notes ----- 1. The following scripts are required for the build: sercomm-crypto.py - already exists in OpenWrt sercomm-partition-tag.py - already exists in OpenWrt sercomm-payload.py - already exists in OpenWrt sercomm-pid.py - new, the part of this pull request sercomm-kernel-header.py - new, the part of this pull request 2. This device (same as other Sercomm S2,S3-based devices) requires special LZMA and LOADADDR settings for successful boot: LZMA_TEXT_START=0x82800000 KERNEL_LOADADDR=0x81001000 LOADADDR=0x80001000 3. This device (same as several other Sercomm-based devices - Beeline, Netgear, Etisalat, Rostelecom) has partition map (mtd1) containing real partition offsets, which may differ from device to device depending on the number and location of bad blocks on NAND. "fixed-partitions" is used if the partition map is not found or corrupted. This behavour (it's the same as on stock firmware) is provided by MTD_SERCOMM_PARTS module. Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* scripts: add support for Sercomm PIDMikhail Zhilkin2022-07-031-0/+102
| | | | | | | | | | | | | | | | | | | | This scripts creates Sercomm PID file. PID is necessary for the factory images creation of variuos Sercomm-based devices (Beeline, Netgear, Etisalat). Size: 0x70 +-------+------+---------------+------------------+ | Start | Size | Value* (ASCII)| Description | +=======+======+===============+==================+ | 0x0 | 0x8 | 10100 | Hardware version | +-------+------+---------------+------------------+ | 0x8 | 0x8 | 444245 (DBE) | Hardware ID | +-------+------+---------------+------------------+ | 0x64 | 0x4 | 1002 | Software version | +-------+------+---------------+------------------+ *for Beeline Smartbox GIGA Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* scripts: add support for Sercomm kernel headerMikhail Zhilkin2022-07-031-0/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This scripts creates custom kernel header that necessary for Sercomm mt7621 devices: - Sercomm S3 - Beeline SmartBox Giga - Beeline SmartBox Pro - Beeline Smartbox Turbo - Beeline Smartbox Turbo+ - WiFire S1500.NBN Header format ------------- +--------+---------------+------------------------+ | Offset | Value | Description | +========+===============+========================+ | 0x0 | 53 65 72 00 | Magic "Ser." | +--------+---------------+------------------------+ | 0x4 | 04 00 00 01 | End offset of RootFS | +--------+---------------+------------------------+ | | | This header checksum | | 0x8 | d6 14 9a c1 | htonl(~crc) | +--------+---------------+------------------------+ | 0xc | 02 ff ff ff | Constant | +--------+---------------+------------------------+ | 0x10 | 00 01 40 00 | Kernel start offset | +--------+---------------+------------------------+ | 0x14 | c6 94 24 00 | Kernel length | +--------+---------------+------------------------+ | | | Kernel checksum | | 0x18 | e7 78 89 f1 | htonl(~crc) | +--------+---------------+------------------------+ | 0x1c | 00 00 00 00 | Constant | +--------+---------------+------------------------+ | 0x20 | ff ff ff ff | Constant | +--------+---------------+------------------------+ | 0x24 | ff ff ff ff | Constant | +--------+---------------+------------------------+ | 0x28 | 00 00 00 01 | RootFS offset | +--------+---------------+------------------------+ | | | RootFS length | | 0x2c | 04 00 00 00 | Always 0x4, we check | | | | UBI magic only | +--------+---------------+------------------------+ | | | RootFS checksum | | 0x30 | 1c fc 55 2d | htonl(~crc) | | | | Const for UBI magic | +--------+---------------+------------------------+ | 0x34 | 00 00 00 00 | Constant | +--------+---------------+------------------------+ | 0x38 | ff ff ff ff … | Pad to 0x100 | +--------+---------------+------------------------+ Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* wpa_supplicant: compile with OCV supportMichael Yartys2022-07-033-3/+5
| | | | | | | | | | | | | Operating Channel Validation (OCV) is a security feature designed to prevent person-in-the-middle multi-channel attacks. Compile -basic and -full variants with support for OCV. This feature can be configured in the wireless config by setting ocv equal to one of the following values: 0 = disabled (hostapd/wpa_supplicant default) 1 = enabled if wpa_supplicant's SME in use. Otherwise enabled only when the driver indicates support for operating channel validation. Signed-off-by: Michael Yartys <michael.yartys@protonmail.com>
* hostapd: enable compilation of OCV and add build feature discoveryMichael Yartys2022-07-034-3/+11
| | | | | | | | | | | | | | | Operating Channel Validation (OCV) is a security feature designed to prevent person-in-the-middle multi-channel attacks. Compile the -basic and -full variants of hostapd with this feature, and enable discovery of this feature for future luci integration. OCV can be configured by setting ocv equal to one of the following values in the wireless config: 0 = disabled (hostapd/wpa_supplicant default) 1 = enabled 2 = enabled in workaround mode - Allow STA that claims OCV capability to connect even if the STA doesn't send OCI or negotiate PMF. Signed-off-by: Michael Yartys <michael.yartys@protonmail.com>
* kernel: bump 5.15 to 5.15.50Rui Salvaterra2022-07-037-13/+13
| | | | | | Patches automatically rebased. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* mt76: update to the latest versionFelix Fietkau2022-07-031-3/+3
| | | | | | 93e3fce916c6 mt76: pass original queue id from __mt76_tx_queue_skb to the driver Signed-off-by: Felix Fietkau <nbd@nbd.name>
* bcm53xx: use -falign-functions=32 for kernel compilationRafał Miłecki2022-07-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Northstar SoCs have pretty small CPU caches and their performance is heavily affected by cache hits & misses. It means that all kind of random code changes can affect performance as they often reorganize (change alignment & possibly reorder) kernel symbols. It was discussed in ARM / net mailinglists: 1. ARM router NAT performance affected by random/unrelated commits [1] [2] 2. Optimizing kernel compilation / alignments for network performance [3] [4] It seems that -falign-functions can be used as a partial workaround. It doesn't solve all cases (e.g. documented watchdog one [5]) but it surely helps with many of them. A complete long term solution may be PGO (profile-guided optimization) but it isn't available at this point. [1] https://lkml.org/lkml/2019/5/21/349 [2] https://www.spinics.net/lists/linux-block/msg40624.html [3] https://lore.kernel.org/linux-arm-kernel/066fc320-dc04-11a4-476e-b0d11f3b17e6@gmail.com/T/ [4] https://www.spinics.net/lists/netdev/msg816103.html [5] http://lists.openwrt.org/pipermail/openwrt-devel/2022-July/038989.html Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: rename patch to avoid duplicate patch numberFelix Fietkau2022-07-021-0/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mt76: update to the latest versionFelix Fietkau2022-07-021-3/+3
| | | | | | | c07f45927839 firmware: update mt7622 firmware to version 20220630 af406a2d1c36 mt76: do not use skb_set_queue_mapping for internal purposes Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix mesh queue selection issueFelix Fietkau2022-07-021-0/+28
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* realtek: EnGenius EWS2910P: declare and hog the poe-enable GPIOAlexandru Gagniuc2022-07-021-0/+7
| | | | | | | | | | | | GPIO 1 on the RTL8231 is used to force the PoE MCU to disable power outputs. It is not used by any driver, but if accidentally set low, PoE outputs are disabled. This situation is hard to debug, and requires knowledge of the Broadcom PoE protocol used by the MCU. To prevent this situation, hog it as an output high. This is consistent with the ZyXel GS1900 series handles it. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
* mediatek: 5.15: refresh patchesNick Hainke2022-07-012-7/+2
| | | | | | | | Refresh patches: - 510-net-mediatek-add-flow-offload-for-mt7623.patch - 920-dts-mt7622-bpi-r64-fix-wps-button.patch Signed-off-by: Nick Hainke <vincent@systemli.org>
* generic: 5.15: refresh patchesNick Hainke2022-07-013-3/+3
| | | | | | | | | Refresh patches: - 402-mtd-blktrans-call-add-disks-after-mtd-device.patch - 420-mtd-set-rootfs-to-be-root-dev.patch - 495-mtd-core-add-get_mtd_device_by_node.patch Signed-off-by: Nick Hainke <vincent@systemli.org>
* mediatek: mt7622: fix banana pi r64 wps buttonNick Hainke2022-07-011-0/+45
| | | | | | | | | | | | | | | Fix the wps button to prevent wrongly detected recovery procedures. In the official banana pi r64 git the wps button is set to GPIO_ACTIVE_LOW and not GPIO_ACTIVE_HIGH. Import patch to fix on boot unwanted recovery entering: Press the [f] key and hit [enter] to enter failsafe mode Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level - failsafe button wps was pressed - - failsafe - Signed-off-by: Nick Hainke <vincent@systemli.org>
* ath79: use rtl8366s and rtl8366_smi as a moduleLuiz Angelo Daros de Luca2022-07-012-4/+2
| | | | | | | | | | | | | rtl8366s is used only by dlink_dir-825-b1 and the netgear_wndr family (wndr3700, wndr3700-v2, wndr3800ch, wndr3800.dts, wndrmac-v1, wndrmac-v2). Not tested in real hardware. With rtl8366rb, rtl8366s, rtl8367 as modules, rtl8366_smi can also be a loadable module. This change was tested with tl-wr2543-v1. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* kernel: netdevices: load rtl8366s on bootLuiz Angelo Daros de Luca2022-07-011-1/+1
| | | | | | | This external switch driver should be loaded on boot for network support in failsafe mode. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* ath79: use rtl8367 as a moduleLuiz Angelo Daros de Luca2022-07-012-2/+1
| | | | | | | rtl8367 is used only by tl-wr2543-v1. Tested both normal and failsafe modes. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* kernel: netdevices: add rtl8367 moduleLuiz Angelo Daros de Luca2022-07-011-0/+16
| | | | | | | Create a package for rtl8367 to use it as loadable module instead of a builtin one. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* ath79: use rtl8366rb as a moduleLuiz Angelo Daros de Luca2022-07-013-2/+2
| | | | | | | | | | | It looks like rtl8366rb is used only by tplink_tl-wr1043nd-v1 and buffalo_wzr-hp-g300nh-rb. There is no need to have it built-in as it works as a loadable module. Tested both failsafe and normal boot on tl-wr1043nd-v1. buffalo_wzr-hp-g300nh-rb was not tested. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* kernel: netdevices: load rtl8366rb on bootLuiz Angelo Daros de Luca2022-07-011-1/+1
| | | | | | | This external switch driver should be loaded on boot for network support in failsafe mode. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* ramips: improve YunCore AX820 LEDsThibaut VARÈNE2022-07-011-6/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At least two AX820 hardware variants are known to exist, but they cannot be distinguished (same hardware revision, no specific markings). They appear to have the same LED hardware, but wired differently: - One has a red system LED at GPIO 15, a green wlan2g LED at GPIO 14 and a blue wlan5g LED at GPIO 16; - The other only offers a green system LED at GPIO 15, with GPIO 14 and 16 being apparently not connected Finally, a Yuncore datasheet says the canonical wiring should be: - Blue wlan2g GPIO 14, green system GPIO 15, red wlan5g GPIO 16 All GPIOs are tied to a single RGB LED which is exposed via lightpipe on the device front casing. Considering the above, this patch exposes all three LEDs, preserves the common system LED (GPIO 15) as the openwrt status LED, and removes the color information from the LEDs names since it is not consistent across hardware. The LED naming is made consistent with other YunCore devices. A note is added in DTS to ensure this information is always available and prevent unwanted changes in the future. Fixes: #10131 "YunCore AX820: GPIO LED not correct" Reviewed-by: Sander Vanheule <sander@svanheule.net> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* toolchain: fix dangling symlink to self in FixupLibdirSven Wegener2022-07-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This avoids a dangling symlink to self when reinstalling the toolchain: ./staging_dir/toolchain-mips_24kc_gcc-9.3.0_musl/lib/lib -> lib This is caused by the fact that in the toolchain dir we have 'lib64 -> lib' and on executing 'ln lib ./staging_dir/toolchain-mips_24kc_gcc-9.3.0_musl/lib64' ln dereference the symbolic link 'lib64' to 'lib' so the REAL command is 'ln lib ./staging_dir/toolchain-mips_24kc_gcc-9.3.0_musl/lib' this results in the dangling symlink to self. Signed-off-by: Sven Wegener <sven.wegener@stealer.net> [ add more details to the commit description and fix title ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* qoriq: enable Book-E Watchdog TimerStijn Tintel2022-07-012-0/+4
| | | | | | | | | | | | | | | Enable PowerPC Book-E Watchdog Timer support. Having this enabled in-kernel will result in procd starting it during boot. This effectively solves the problem of the WDT in the Winbond W83793 chip potentially resetting the system during sysupgrade, which could result in an unbootable device. While the driver is modular, resulting in procd not starting the WDT during boot (because that happens before kmod load), the WDT handover during sysupgrade results in the WDT being started. This normally shouldn't be a problem, but the W83793 WDT does not like procd's defaults, nor the handover happening during sysupgrade. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* bcm27xx: add support for Raspberry Pi Zero 2Stijn Tintel2022-07-013-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to licensing uncertainty, we do not include the firmwares for the wireless chips used in the Raspberry Pi Zero 2 W. To have working wireless, follow the instructions below. For people building their own images: mkdir -p files/lib/firmware/brcm wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436-sdio.bin wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436-sdio.txt wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436s-sdio.bin wget -P files/lib/firmware/brcm/ https://github.com/RPi-Distro/firmware-nonfree/raw/bullseye/debian/config/brcm80211/brcm/brcmfmac43436s-sdio.txt Now build the OpenWrt image as usual, and it will include the firmware files in the correct location. For people using ext4 images: Write the ext4 image to the sdcard, then mount the 2nd partition and put the firmware files from the links above in /lib/firmware/brcm relative from the mount point where the partition is mounted. For people using squashfs images: Write the squashfs image to the sdcard, place it in the Raspberry Pi Zero 2 W, boot it and wait for the overlay filesystem to be created. Find the offset of the overlay filesystem in sysfs: # cat /sys/devices/virtual/block/loop0/loop/offset 25755648 Shut down the device, unplug the power and move the SD card to a Linux computer. Mount the 2nd partition of the sdcard as a loop device with the offset found earlier. sudo mount /dev/sdh2 -o loop,offset=25755648 /mnt/temp Put the firmware files from the links above in /upper/lib/firmware/brcm relative to the mount point where the loop device is mounted. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be> Tested-by: Peter van Dijk <peter@7bits.nl>
* mac80211: read alternative brcm fw names from DTStijn Tintel2022-07-011-0/+205
| | | | | | This patch is required for the Raspberry Pi Zero 2 W. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* ath79: add support for ASUS RP-AC51Tamas Balogh2022-06-306-6/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Asus RP-AC51 Repeater Category: AC750 300+433 (OEM w. unstable driver) AC1200 300+866 (OpenWrt w. stable driver) Hardware specifications: Board: AP147 SoC: QCA9531 2.4G b/g/n WiFi: QCA9886 5G n/ac DRAM: 128MB DDR2 Flash: gd25q128 16MB SPI-NOR LAN/WAN: AR8229 1x100M Clocks: CPU:650MHz, DDR:600MHz, AHB:200MHz MAC addresses as verified by OEM firmware: use address source Lan/W2G *:C8 art 0x1002 (label) 5G *:CC art 0x5006 Installation: Asus windows recovery tool: install the Asus firmware restoration utility unplug the router, hold the reset button while powering it on release when the power LED flashes slowly specify a static IP on your computer: IP address: 192.168.1.75 Subnet mask 255.255.255.0 Start the Asus firmware restoration utility, specify the factory image and press upload Do not power off the device after OpenWrt has booted until the LED flashing. TFTP Recovery method: set computer to a static ip, 192.168.1.10 connect computer to the LAN 1 port of the router hold the reset button while powering on the router for a few seconds send firmware image using a tftp client; i.e from linux: $ tftp tftp> binary tftp> connect 192.168.1.1 tftp> put factory.bin tftp> quit Signed-off-by: Tamas Balogh <tamasbalogh@hotmail.com>
* ath79: add support for ASUS PL-AC56Tamas Balogh2022-06-307-0/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Asus PL-AC56 Powerline Range Extender Rev.A1 (in kit with Asus PL-E56P Powerline-slave) Hardware specifications: Board: AP152 SoC: QCA9563 2.4G n 3x3 PLC: QCA7500 WiFi: QCA9882 5G ac 2x2 Switch: QCA8337 3x1000M Flash: 16MB 25L12835F SPI-NOR DRAM SoC: 64MB w9751g6kb-25 DRAM PLC: 128MB w631gg6kb-15 Clocks: CPU:775.000MHz, DDR:650.000MHz, AHB:258.333MHz, Ref:25.000MHz MAC addresses as verified by OEM firmware: use address source Lan/Wan/PLC *:10 art 0x1002 (label) 2G *:10 art 0x1000 5G *:14 art 0x5000 Important notes: the PLC firmware has to be provided and copied manually onto the device! The PLC here has no dedicated flash, thus the firmware file has to be uploaded to the PLC controller at every system start the PLC functionality is managed by the script /etc/init.d/plc_basic, a very basic script based on the the one from Netadair (netadair dot de) Installation: Asus windows recovery tool: have to have the latest Asus firmware flashed before continuing! install the Asus firmware restoration utility unplug the router, hold the reset button while powering it on release when the power LED flashes slowly specify a static IP on your computer: IP address: 192.168.1.75 Subnet mask 255.255.255.0 start the Asus firmware restoration utility, specify the factory image and press upload do NOT power off the device after OpenWrt has booted until the LED flashing TFTP Recovery method: have to have the latest Asus firmware flashed before continuing! set computer to a static ip, 192.168.1.75 connect computer to the LAN 1 port of the router hold the reset button while powering on the router for a few seconds send firmware image using a tftp client; i.e from linux: $ tftp tftp> binary tftp> connect 192.168.1.1 tftp> put factory.bin tftp> quit do NOT power off the device after OpenWrt has booted until the LED flashing Additional notes: the pairing buttons have to have pressed for at least half a second, it doesn't matter on which plc device (master or slave) first it is possible to pair the devices without the button-pairing requirement simply by pressing reset on the slave device. This will default to the firmware settings, which is also how the plc_basic script is setting up the master device, i.e. configuring it to firmware defaults the PL-E56P slave PLC has its dedicated 4MByte SPI, thus it is capable to store all firmware currently available. Note that some other slave devices are not guarantied to have the capacity for the newer ~1MByte firmware blobs! To have a good overlook about the slave device, here are its specs: same QCA7500 PLC controller, same w631gg6kb-15 128MB RAM, 25L3233F 4MB SPI-NOR and an AR8035-A 1000M-Transceiver Signed-off-by: Tamas Balogh <tamasbalogh@hotmail.com>
* kernel: bump 5.10 to 5.10.127John Audia2022-06-299-20/+20
| | | | | | All patches automatically rebased. Signed-off-by: John Audia <therealgraysky@proton.me>
* kernel: bump 5.10 to 5.10.126John Audia2022-06-291-2/+2
| | | | | | | | | No patches rebased, just checksum update for this refresh. Build system: x86_64 Build-tested: ipq806x/R7800 Signed-off-by: John Audia <therealgraysky@proton.me>
* mac80211: add patch for mwifiex to fix cryptic errors/warningsJosef Schlehofer2022-06-291-0/+200
| | | | | | | | | | | | | | | In Turris MOX SDIO card [1], which uses Marvell 88W997 and its driver mwifiex, you might get cryptic messages, which are not helpful to use. @pali created patch, which improves messages by the driver and he will send this to Linux kernel soon. Before: [ 81.026156] mwifiex_sdio mmc1:0001:1: CMD_RESP: cmd 0x20 error, result=0x1 After: [ 15.784018] mwifiex_sdio mmc1:0001:1: CMD_RESP: cmd RF_ANTENNA (0x20) error, result=0x1 Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* mac80211: mwl: add patch to raise global limit of SSID up to 4Josef Schlehofer2022-06-291-0/+46
| | | | | | | SDIO chip 88W9997 from NXP [1] is quite limited by its firmware and driver. Add hacky patch to allow up to 4 SSID instead of 3 SSID. Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* mvebu: add Methode euroDPU supportRobert Marko2022-06-296-5/+37
| | | | | | | | | | | | | | | | Add support for Methode euroDPU which is based on uDPU but does not have a second SFP cage, instead of which a Maxlinear G.hn IC is used. PHY mode is set to 1000Base-X despite Maxlinear IC being capable of 2500Base-X since until 5.15 support for mvebu is available trying to use 2500Base-X will cause buffer overruns for which the fix is not easily backportable. Installation instructions: 1. Boot the FIT initramfs image (openwrt-mvebu-cortexa53-methode_edpu-initramfs.itb) 2. sysupgrade using the openwrt-mvebu-cortexa53-methode_edpu-firmware.tgz Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* mvebu: update and refactor uDPU DTSRobert Marko2022-06-294-34/+216
| | | | | | | | | | | | | | | | | | uDPU DTS has pending upstream fixups, so backport those as well as split the DTS into a DTSI and DTS in preparation for euroDPU support which uses uDPU as the base. Ethernet aliases have not yet been sent upstream but will be soon in order for U-boot to set the correct MAC on both ethernet interfaces instead of just one. Since U-boot environment now has its own partition, update the envtools config script to search for it instead. Patch hardcoding PHY mode is also not applicable anymore, so drop it and set in the uDPU DTS directly. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ath79: add support for RouterBOARD mAPThibaut VARÈNE2022-06-295-0/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MikroTik mAP-2nd (sold as mAP) is an indoor 2.4Ghz AP with 802.3af/at PoE input and passive PoE passthrough. See https://mikrotik.com/product/RBmAP2nD for more details. Specifications: - SoC: QCA9533 - RAM: 64MB - Storage: 16MB NOR - Wireless: QCA9533 802.11b/g/n 2x2 - Ethernet: 2x 10/100 ports, 802.3af/at PoE in port 1, 500 mA passive PoE out on port 2 - 7 user-controllable LEDs Note: the device is a tiny AP and does not distinguish between both ethernet ports roles, so they are both assigned to lan. With the current setup, ETH1 is connected to eth1 and ETH2 is connected to eth0 via the embedded switch port 2. Flashing: TFTP boot initramfs image and then perform sysupgrade. The "ETH1" port must be used to upload the TFTP image. Follow common MikroTik procedure as in https://openwrt.org/toh/mikrotik/common. Tested-By: Andrew Powers-Holmes <aholmes@omnom.net> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ipq40xx: mikrotik: make RouterBoot partition writeableThibaut VARÈNE2022-06-295-5/+0
| | | | | | | | | Linux MTD requires the parent partition be writable for a child partition to be allowed write permission. In order for soft_config to be writeable (and modifiable via sysfs), the parent RouterBoot partition must be writeable Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* ath79: mikrotik: add rw soft_config to extra devicesJohn Thomson2022-06-292-2/+0
| | | | | | | Linux MTD requires the parent partition be writable for a child partition to be allowed write permission. Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
* kernel: fix variable erasesize patchJohn Thomson2022-06-292-416/+128
| | | | | | | | | Update this pending patch to remove the untested (variable eraseregions) section, alongside simplifying the patch. Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au> [refresh and split out unrelated refreshes] Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* kernel: cut broken SPI_NOR 4K eraseblock LIMIT patchJohn Thomson2022-06-299-149/+0
| | | | | | | | | | | | | | | | | | Since 4e0c54bc5bc8 ("kernel: add support for kernel 5.4"), the spi-nor limit 4k erasesize to spi-nor chips below a configured size patch has not functioned as intended. For uniform erasesize SPI-NOR devices, both nor->erase_opcode & mtd->erasesize are used in erase operations. These are set before, and not modified by, this CONFIG_MTD_SPI_NOR_USE_4K_SECTORS_LIMIT patch. Thus, an SPI-NOR device with CONFIG_MTD_SPI_NOR_USE_4K_SECTORS will always use 4k erasesize (where the device supports it). If this patch was fixed to function as intended, there would be cases where devices change from a 4K to a 64K erasesize. Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
* x86: 64: Add kmod-igc to default packagesHauke Mehrtens2022-06-291-1/+1
| | | | | | | | This adds the igc driver for the Intel 2.5GBit Ethernet chip to the default packages. Fixes: #10064 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ramips: add support for ASUS RP-AC87Tamas Balogh2022-06-294-0/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Asus RP-AC87 ac2600 Repeater 2.4GHz 800Mbps 5GHz 1733Mbps Hardware specifications: SoC: MT7621A 2 cores 4 threads @880MHz WiFi2G: MT7615E 2G 4x4 b/g/n Wifi5G: MT7615E 5G 4x4 n/ac DRAM: 128MB DDR3 @1200mhz Flash: 16MB MX25L12805D SPI-NOR LAN/WAN: MT7530 1x1000M MAC addresses as verified by OEM firmware: use address source Lan/W5G *:B0 factory 0x8004 (label) W2G *:B4 factory 0x0 Installation: Asus windows recovery tool: install the Asus firmware restoration utility unplug the router, hold the reset button while powering it on release when the power LED flashes slowly specify a static IP on your computer: IP address: 192.168.1.75 Subnet mask 255.255.255.0 Start the Asus firmware restoration utility, specify the factory image and press upload Do not power off the device after OpenWrt has booted until the LED flashing. TFTP Recovery method: set computer to a static ip, 192.168.1.2 connect computer to the LAN 1 port of the router hold the reset button while powering on the router for a few seconds send firmware image using a tftp client; i.e from linux: $ tftp tftp> binary tftp> connect 192.168.1.1 tftp> put factory.bin tftp> quit Signed-off-by: Tamas Balogh <tamasbalogh@hotmail.com>
* iptables: default to ip(6)tables-nftEtienne Champetier2022-06-291-19/+12
| | | | | | | | | | | | | | | OpenWrt now uses firewall4 (nft) by default, so iptables should also default to nftables backend. When multiple packages provide the same virtual package, opkg pick the first one by alphabetical order, so we rename iptables-legacy to iptables-zz-legacy and add iptables-legacy in PROVIDES. We also need to remove IPTABLES_NFTABLES config as this cause recursive dependencies. Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
* qoriq: add kernel 5.15 supportStijn Tintel2022-06-292-0/+403
| | | | | | Add support for kernel 5.15 as testing kernel for qoriq. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* qoriq: enable HARDENED_USERCOPYStijn Tintel2022-06-291-1/+0
| | | | | | | The random crashes observed with HARDENED_USERCOPY enabled no longer seem to occur. Enable HARDENED_USERCOPY to improve security. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* qoriq: disable CONFIG_COMPATStijn Tintel2022-06-291-8/+0
| | | | | | | We do not need support for 32 bit applications, as we're building everything for 64 bit. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* qoriq: 02_network fix sweth globbing logicThibaut VARÈNE2022-06-291-1/+1
| | | | | | This prevents invalid configuration of non-existent sweth devices. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* qoriq: define reset button for Firebox M300Thibaut VARÈNE2022-06-292-1/+13
| | | | | | This patch provides support for the Firebox M300 reset button. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* qoriq: define leds for Firebox M300Thibaut VARÈNE2022-06-292-1/+22
| | | | | | | | This patch provides support for the Firebox M300 only user-controllable bi-color LED, and makes the green "shield" LED act as the typical OpenWrt status led. Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* kernel: add missing symbol to 5.15 configStijn Tintel2022-06-291-0/+1
| | | | | | | | Kernel 5.15.49 introduced a new symbol 'LIB_MEMNEQ'. Add it to the generic 5.15 config. Fixes: f1cd14448221 ("kernel: bump 5.15 to 5.15.49") Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: add missing symbol to 5.10 configStijn Tintel2022-06-291-0/+1
| | | | | | | | Kernel 5.10.124 introduced a new symbol 'LIB_MEMNEQ'. Add it to the generic 5.10 config. Fixes: 9e5d743422ed ("kernel: bump 5.10 to 5.10.124") Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>