aboutsummaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
* mediatek: add alternative bootchain variant for UniFi 6 LRDaniel Golle2021-04-095-289/+386
| | | | | | | | Builds images for the Ubiquiti Network UniFi 6 LR device running the U-Boot build added by the previous commits. Everything but MTD partitions is moved to dtsi. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: support FIT partition parser on mtdblock devicesDaniel Golle2021-04-094-12/+241
| | | | | | | | | | | | | | | Allow using the FIT block-device partition partition parser to work on top of mtdblock devices. This is more tricky than it sounds as it requires to reorganize the procedure of registering mtdblock devices in order to avoid locking troubles caused by the block partition parsers then trying to open the mtdblock device for reading while locks are still being held. Fix that by moving the adding of the disks after the entire device has been probed when locks no longer need to be held. Also address issue with mtdsuper surfaced when using sub-partitions which prevented mounting JFFS2 using the /dev/mtdblock* device. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: mtdsplit_fit: support FIT with external dataDaniel Golle2021-04-091-39/+243
| | | | | | | | | | | | | | | | | | U-Boot has recently added support for having data blobs in uImage.FIT images stored at offsets after the FDT structure rather than embedding the data into the FDT structure itself. This is useful as it allows parts of the image to be mapped by the FIT partition parser, and it allows the FIT structure itself to be parsed more easily as it usually fits into single page. mtdsplit_fit assumed that the total length of an image is identical to the length of the FDT structure. For uImage.FIT with external data this assumption no longer holds true. Add support for uImage.FIT with external data to mtdsplit_fit and in in that case only split-off rootfs_data -- selecting and mapping rootfs partition is left to the block partition parser just like on UBI and block/GPT based platforms. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: mikrotik: define the testing kernel versionKoen Vandeputte2021-04-091-0/+2
| | | | | | | | | | commit d6b785d477 ("ath79: add kernel 5.10 support") moved KERNEL_TESTING_PATCHVER to a subtarget level, but is looks like Mikrotik subtarget was forgotten. Also add it for Mikrotik. Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
* bcm4908: enable Netgear R8000P bootloader imageRafał Miłecki2021-04-081-2/+2
| | | | | | | | | | | | | | | | | | This enables building BCM4908 "raw" image that can be flashed using bootloader web UI. It requires serial console access & stopping booting by the "Press any key to stop auto run". It's easy to build vendor like CHK image but it can't be safely flashed using vendor UI at this point. Netgear implements method called "NAND incremental flashing" that doesn't seem to flash bootfs partition as provided. Above method seems to update vmlinux.lz without updating 94908.dtb. It prevents OpenWrt kernel from booting due to incomplete DTB file. Full Netgear R8000P support can be enabled after finding a way to make vendor firmware flash OpenWrt firmware including the 94908.dtb update. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: enable target & Asus GT-AC5300 imageRafał Miłecki2021-04-082-1/+3
| | | | | | | | | OpenWrt was succesfully tested on the GT-AC5300 model. It's possible to: 1. Install OpenWrt using vendor UI 2. Perform UBI aware sysupgrade 3. Install vendor firmware using OpenWrt sysupgrade Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* firmware-utils: bcm4908img: convert into a packageRafał Miłecki2021-04-081-1/+3
| | | | | | | | | | bcm4908img is a tool managing BCM4908 platform images. It's used for creating them as well as checking, modifying and extracting data from. It's required by both: host (for building firmware images) and target (for sysupgrade purposes). Make it a host/target package. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ramips: rt305x: use lzma-loader for ZyXEL Keenetic Lite rev.BSzabolcs Hubai2021-04-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes boot loader LZMA decompression issue, reported by GitHub user KOLANICH at [0]. The reported LZMA ERROR has date of 2020-07-20, soon after the device support landed: Ralink UBoot Version: 3.5.2.4_ZyXEL .... 3: System Boot system code via Flash. Image Name: MIPS OpenWrt Linux-4.14.187 Created: 2020-07-20 3:39:11 UTC Image Type: MIPS Linux Kernel Image (lzma compressed) Data Size: 1472250 Bytes = 1.4 MB Load Address: 80000000 Entry Point: 80000000 Verifying Checksum ... OK Uncompressing Kernel Image ... LZMA ERROR 1 - must RESET board to recover [0] https://github.com/openwrt/openwrt/commit/fea232ae8feb6af780fd4fa78ebe9231778bf75a#commitcomment-45016560 Fixes: 4dc9ad4af8c921494d20b303b6772fc6b5af3a69 ("ramips: add support for ZyXEL Keenetic Lite Rev.B") Signed-off-by: Szabolcs Hubai <szab.hu@gmail.com>
* ath79: move pcie node to DTSI for qca955x Senao APsMichael Pratt2021-04-084-29/+9
| | | | | | | | | | pcie0 is the same for this generation of Senao APs while eth0, eth1, and wmac can differ the qca,no-eeprom property has no effect for the ath10k drivers Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: cleanup DTS for ALLNET ALL-WAP02860ACMichael Pratt2021-04-081-92/+17
| | | | | | | | | | | | | | | | | | | | | | | | | use qca955x_senao_loader.dtsi because it is the same hardware / partitioning and some cleanup Effects: nodes to match similar boards - keys - eth0 - pcie0 bumps SPI frequency to 40 MHz removes &pll node: the property is defined in qca955x.dtsi removes qca,no-eeprom: has no effect with mtd-cal-data property (also spelling) Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: add factory.bin for ALLNET ALL-WAP02860ACMichael Pratt2021-04-083-4/+37
| | | | | | | | | | | | | | | This device is a Senao-based product using hardware and software from Senao with the tar-gz platform for factory.bin and checksum verification at boot time using variables stored in uboot environment and a 'failsafe' image when it fails. Extremely similar hardware/software to Engenius EAP1200H and other Engenius APs with qca955x Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: add Senao 'failsafe' sysupgrade procedureMichael Pratt2021-04-089-4/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a similar upgrade method for sysupgrade.bin, like factory.bin, for Senao boards with the tar.gz OEM upgrade platform, and 'failsafe' image which is loaded on checksum failure. This is inspired by the OEM upgrade script /etc/fwupgrade.sh and the existing platforms for dual-boot Senao boards. Previously, if the real kernel was damaged or missing the only way to recover was with UART serial console, because the OKLI lzma-loader is programmed to halt. uboot did not detect cases where kernel or rootfs is damaged and boots OKLI instead of the failsafe image, because the checksums stored in uboot environment did not include the real kernel and rootfs space. Now, the stored checksums include the space for both the lzma-loader, kernel, and rootfs. Therefore, these boards are now practically unbrickable. Also, the factory.bin and sysupgrade.bin are now the same, except for image metadata. This allows for flashing OEM image directly from openwrt as well as flashing openwrt image directly from OEM. Make 'loader' partition writable so that it can be updated during a sysupgrade. tested with ENS202EXT v1 EAP1200H EAP350 v1 EAP600 ECB350 v1 ECB600 ENH202 v1 Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: adjust ath79/tiny Senao APs to 4k blocksizeMichael Pratt2021-04-086-3/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ath79/tiny kernel config has CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y from commit 05d35403b211ccb9bf20e2b3c0b7a30c82c6d6a2 Because of this, these changes are required for 2 reasons: 1. Senao devices in ath79/tiny with a 'failsafe' partition and the tar.gz sysupgrade platform and a flash chip that supports 4k sectors will fail to reboot to openwrt after a sysupgrade. the stored checksum is made with the 64k blocksize length of the image to be flashed, and the actual checksum changes after flashing due to JFFS2 space being formatted within the length of the rootfs from the image example: 0x440000 length of kernel + rootfs (from sysupgrade.bin) 0x439000 offset of rootfs_data (from kernel log) 2. for boards with flash chips that support 4k sectors: saving configuration over sysupgrade is not possible because sysupgrade.tgz is appended at a 64k boundary and the mtd parser starts JFFS2 at a 4k boundary. for boards with flash chips that do not support 4k sectors: partitioning with 4k boundaries causes a boot loop from the mtd parser not finding kernel and rootfs. Also: Some of the Senao boards that belong in ath79/tiny, for example ENH202, have a flash chip that does not support 4k sectors (no SECT_4K symbol in upstream source). Because of this, partitioning must be different for these devices depending on the flash chip model detected by the kernel. Therefore: this creates 2 DTSI files to replace the single one with 64k partitioning for 4k and 64k partitioning respectively. Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: remove 'fakeroot' for Senao devicesMichael Pratt2021-04-086-49/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using the same custom kernel header magic in both OKLI lzma-loader, DTS, and makefile this hack is not necessary anymore However, "rootfs" size and checksum must now be supplied by the factory.bin image through a script that is accepted by the OEM upgrade script. This is because Senao OEM scripts assume a squashfs header exists at the offset for the original "rootfs" partition which is actually the kernel + rootfs in this implementation, and takes size value from the header that would be there with hexdump, but this offset is now the uImage header instead. This frees up 1 eraseblock previously used by the "fakeroot" partition for bypassing the OEM image verification. Also, these Senao devices with a 'failsafe' partition and the tar-gz factory.bin platform would otherwise require flashing the new tar-gz sysupgrade.bin afterward. So this also prevents having to flash both images when starting from OEM or 'failsafe' the OEM upgrade script verifies the header magic numbers, but only the first two bytes. Example: [ "${magic_word_kernel}" = "2705" ] && [ "${magic_word_rootfs}" = "7371" -o "${magic_word_rootfs}" = "6873" ] && errcode="0" therefore picked the magic number 0x73714f4b which is 'sqOK' Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: lzma-loader: allow setting custom kernel magicMichael Pratt2021-04-084-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ...and max flash offset The mtdsplit parser was recently refactored to allow the kernel to have custom image header magic. Let's also do this for the lzma-loader For example: When implemented together, this allows the kernel to "appear" to be a rootfs by OEM software in order to write an image that is actually kernel + rootfs. At the same time, it would boot to openwrt normally by setting the same magic in DTS. Both of the variables have a default value that is unchanged when not defined in the makefiles This has no effect on the size of the loader when lzma compressed. Signed-off-by: Michael Pratt <mcpratt@pm.me>
* realtek: allow writing to "u-boot-env2"Bjørn Mork2021-04-085-5/+0
| | | | | | | | U-Boot uses the "bootpartition" variable stored in "u-boot-env2" to select the active system partition. Allow updates to enable system switching from OpenWrt. Signed-off-by: Bjørn Mork <bjorn@mork.no>
* bcm4908: fix Netgear R8000P imageRafał Miłecki2021-04-071-2/+5
| | | | | | Use vendor format to allow flashing using Negear UI. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: add sysupgrade supportRafał Miłecki2021-04-071-0/+213
| | | | | | | | | | It supports flashing OpenWrt images (bootfs & UBI upgrade) as well as vendor images (whole MTD partition write). Upgrading cferom is unsupported. It requires copying device specific data (like MAC) to target image before flashing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: pad firmware image bootfs JFFS2 partition to 8 MiBRafał Miłecki2021-04-071-1/+1
| | | | | | | | | This way MTD "bootfs" partition will be always 8+ MiB. This should be enough for any custom / future firmware to fit its bootfs (e.g. big kernel) without having to repertition whole flash. That way we can preserve UBI and its erase counters during sysupgrade. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ath79: ar934x-nand: fix broken nand on kernel 5.10Koen Vandeputte2021-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Booting current 5.10.x testing kernel shows this: [ 0.335781] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xf1 [ 0.342280] nand: Samsung NAND 128MiB 3,3V 8-bit [ 0.346982] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 [ 0.354703] ar934x-nand 1b800200.nand: unknown ECC mode 2 [ 0.360193] ar934x-nand 1b800200.nand: nand_scan failed, err:-22 [ 0.366341] ar934x-nand: probe of 1b800200.nand failed with error -22 ... [ 1.089264] /dev/root: Can't open blockdev [ 1.093482] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6 [ 1.101077] Please append a correct "root=" boot option; here are the available partitions: [ 1.109555] 1f00 64 mtdblock0 [ 1.109559] (driver?) [ 1.116199] 1f01 48 mtdblock1 [ 1.116202] (driver?) [ 1.122841] 1f02 4 mtdblock2 [ 1.122844] (driver?) [ 1.129493] 1f03 4 mtdblock3 [ 1.129497] (driver?) [ 1.136138] 1f04 4 mtdblock4 [ 1.136142] (driver?) [ 1.142787] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) [ 1.151168] Rebooting in 1 seconds.. The issue is caused by a wrong check for ECC engine type on newer kernels. Fix this. Bootlog after: [ 0.335689] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xf1 [ 0.342192] nand: Samsung NAND 128MiB 3,3V 8-bit [ 0.346884] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 [ 0.354611] Scanning device for bad blocks [ 0.364924] random: fast init done [ 0.496641] 3 fixed-partitions partitions found on MTD device ar934x-nand [ 0.503545] Creating 3 MTD partitions on "ar934x-nand": [ 0.508865] 0x000000000000-0x000000040000 : "booter" [ 0.515133] 0x000000040000-0x000000400000 : "kernel" [ 0.523265] 0x000000400000-0x000008000000 : "ubi" Fixes: fb64e2c30f ("ath79: ar934x-nand: add kernel 5.10 compatibility") Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
* bcm4908: rename bootfs dummy file to the 1-openwrtRafał Miłecki2021-04-061-1/+1
| | | | | | | | | | | | The purpose of that dummy file is to make CFE work properly with OpenWrt bootfs. CFE for some reason ignores JFFS2 files with ino 0. Rename it to 1-openwrt so: 1. It's consistent with bcm63xx 2. It's OpenWrt specific so sysupgrade can distinguish it from vendor images Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm4908: enable JFFS2 supportRafał Miłecki2021-04-051-1/+0
| | | | | | It's needed for accessing JFFS2 bootfs partition. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ipq40xx: add MikroTik hAP ac2 supportRobert Marko2021-04-056-1/+314
| | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the MikroTik RouterBOARD RBD52G-5HacD2HnD-TC (hAP ac²), a indoor dual band, dual-radio 802.11ac wireless AP with integrated omnidirectional antennae, USB port and five 10/100/1000 Mbps Ethernet ports. See https://mikrotik.com/product/hap_ac2 for more info. Specifications: - SoC: Qualcomm Atheros IPQ4018 - RAM: 128 MB - Storage: 16 MB NOR - Wireless: · Built-in IPQ4018 (SoC) 802.11b/g/n 2x2:2, 2.5 dBi antennae · Built-in IPQ4018 (SoC) 802.11a/n/ac 2x2:2, 2.5 dBi antennae - Ethernet: Built-in IPQ4018 (SoC, QCA8075) , 5x 1000/100/10 port, passive PoE in - 1x USB Type A port Installation: Boot the initramfs image via TFTP and then flash the sysupgrade image using "sysupgrade -n" Signed-off-by: Robert Marko <robimarko@gmail.com>
* kernel: bump 5.10 to 5.10.27Kevin Darbyshire-Bryant2021-04-0320-58/+62
| | | | | | | | | | | | | | | | Use update_kernel to refresh all patches, required manual updates to: 610-netfilter_match_bypass_default_checks.patch 611-netfilter_match_bypass_default_table.patch 762-net-bridge-switchdev-Refactor-br_switchdev_fdb_notif.patch 764-net-bridge-switchdev-Send-FDB-notifications-for-host.patch Run-tested: x86_64 Nothing screamed out but any funny business with linux bridging should suspect this update first. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* realtek: rename partitions in Netgear DTSIStijn Segers2021-04-031-5/+5
| | | | | | | | | Switch the Netgear DTSI for the Realtek target from the OEM partition naming scheme to accepted OpenWrt naming practices. A quick git grep for 'u-boot-env' e.g. in the OpenWrt tree turns up almost 500 hits whereas grepping for 'bdinfo' (the OEM equivalent) returns a meagre 14. Signed-off-by: Stijn Segers <foss@volatilesystems.org>
* lantiq: add basic support for AVM FRITZ!Box 3390Andreas Böhler2021-04-036-1/+328
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The FRITZ!Box 3390 actually contains two SoCs, one Lantiq with a 5GHz WiFi and one AR9342 with a 2.4GHz WiFi. Only the Lantiq has access to the flash memory, the Atheros runs fully from RAM. Specifications -------------- - Lantiq 500 MHz - 128MiB RAM - 128MiB NAND - 256k Flash - AR9580 5GHz WiFi - AR9342 560 MHz - 64MiB RAM - AR9328 2.4GHz WiFi Remarks ------- This commit only adds support for the Lantiq side of things and prepares the drivers for communication with the Atheros SoC. Thus, only 5GHz WiFi works by default, the 2.4GHz WiFi will be added via another target. Some kernel patches will be required to add support for the Atheros SoC. Installation ------------ Use the eva_ramboot.py script to boot the initramfs image. Then, transfer the sysupgrade image to the device and run sysupgrade to flash it to the NAND. Signed-off-by: Andreas Böhler <dev@aboehler.at> Acked-by: Aleksander Jan Bajkowski A.Bajkowski@stud.elka.pw.edu.pl Signed-off-by: Joachim Cerny <cocktail_yogi@web.de>
* lantiq: VR9: fix gpio-hog by defining the GPIO rangesJoachim Cerny2021-04-031-0/+1
| | | | | | | | | | defined gpio-ranges according to Reference: https://github.com/torvalds/linux/blob/master/drivers/pinctrl/pinctrl-xway.c#L864 This change is needed by gpio-hog on Fritzbox 3390 thx to @abajk Acked-by: Aleksander Jan Bajkowski A.Bajkowski@stud.elka.pw.edu.pl Signed-off-by: Andreas Böhler <dev@aboehler.at> Signed-off-by: Joachim Cerny <cocktail_yogi@web.de>
* ramips: fix IMAGE_SIZE of HC5x6: fix image size of HC5x61Shiji Yang2021-04-031-3/+3
| | | | | | | | "firmware" partition size defined in the device tree file is 0xf70000, so the right IMAGE_SIZE is 15808k Fixes: df1e5d646345 ("ramips: fix partition layout of hiwifi hc5x61") Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ramips: Fix booting on MQmaker WiTi boardDaniel Engberg2021-04-031-0/+1
| | | | | | | | This fixes the dreaded "lzma error 1" also reported on similar devices Ref: https://bugs.openwrt.org/index.php?do=details&task_id=3057 Fixes: FS#3057 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* ramips: Fix booting on MTC WR1201René van Dorst2021-04-031-0/+1
| | | | | | | | This fixes the dreaded "lzma error 1" also reported on similar devices Ref: https://bugs.openwrt.org/index.php?do=details&task_id=3057 Fixes: FS#3057 Signed-off-by: René van Dorst <opensource@vdorst.com>
* armvirt: add 5.10 testing kernelAleksander Jan Bajkowski2021-04-031-0/+1
| | | | | | | Add 5.10 as testing kernel. Builds successfully with CONFIG_ALL_KMODS=y enabled. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt: refresh 5.10 configAleksander Jan Bajkowski2021-04-033-19/+20
| | | | | | | | | | This was done by executing these commands: $ make kernel_oldconfig CONFIG_TARGET=subtarget $ make kernel_oldconfig CONFIG_TARGET=subtarget_platform Some common symbols have been moved to target config. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt: copy config files for 5.10Aleksander Jan Bajkowski2021-04-033-0/+391
| | | | | | Copy config and patches for 5.10. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* armvirt: refresh 5.4 configAleksander Jan Bajkowski2021-04-033-203/+14
| | | | | | | | This was done by executing these commands: $ make kernel_oldconfig CONFIG_TARGET=subtarget $ make kernel_oldconfig CONFIG_TARGET=subtarget_platform Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* kernel: bump 5.4 to 5.4.109John Audia2021-04-0256-180/+180
| | | | | | | | | | | | | | | | | | | | Ran update_kernel.sh in a fresh clone without any existing toolchains. Manually rebased: pending-5.4/611-netfilter_match_bypass_default_table.patch The upstream change affecting this patch is the revert of an earlier kernel commit. Therefore, we just revert our corresponding changes in [1]. Build system: x86_64 Build-tested: ipq806x/R7800 [1] 9b1b89229f0e ("kernel: bump 5.4 to 5.4.86") Signed-off-by: John Audia <graysky@archlinux.us> [adjust manually rebased patch, add explanation] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: enhance support for Linksys EA9500Vivek Unune2021-04-014-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Add leds and configs 2. Add network configs 3. Add script to clear partial boot flag 4. Hack to use port 5 as cpu port as port 8 connected to eth2 wont pass any frames 5. Enable EA9500 image generation Hardware Info: - Processor - Broadcom BCM4709C0KFEBG dual-core @ 1.4 GHz - Switch - BCM53012 in BCM4709C0KFEBG & external BCM53125 - DDR3 RAM - 256 MB - Flash - 128 MB (Toshiba TC58BVG0S3HTA00) - 2.4GHz - BCM4366 4×4 2.4/5G single chip 802.11ac SoC - Power Amp - Skyworks SE2623L 2.4 GHz power amp (x4) - 5GHz x 2 - BCM4366 4×4 2.4/5G single chip 802.11ac SoC - Power Amp - PLX Technology PEX8603 3-lane, 3-port PCIe switch - Ports - 8 Ports, 1 WAN Ports - Antennas - 8 Antennas - Serial Port - @j6 [GND,TX,RX] (VCC NC) 115200 8n1 Flashing Instructions: 1. Connect a USB-TTL table to J6 on the router as well as a ethernet cable to a lan port and your PC. 2. Power-on the router. 3. Use putty or a serial port program to view the terminal. Hit Ctrl+C and interrupt the CFE terminal terminal. 4. Setup a TFTP server on your local machine at setup you local IP to 192.168.1.2 5. Start the TFTP Server 6. Run following commands at the CFE terminal flash -noheader 192.168.1.2:/openwrt.trx nflash0.trx flash -noheader 192.168.1.2:/openwrt.trx nflash0.trx2 nvram set bootpartition=0 && nvram set partialboots=0 && nvram commit 7. Reboot router to be presented by OpenWrt Note: Only installation method via serial cable is supported at the moment. The trx firmware has to be flashed to both the partitions using following commands from CFE prompt. This will cover US and Non-US variants. Signed-off-by: Vivek Unune <npcomplete13@gmail.com> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: use upstream Linksys EA9500 fixesRafał Miłecki2021-04-012-1/+30
| | | | | | One fix was accepted, one was added. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: fix FIT partition parser compatibility issuesDaniel Golle2021-03-312-65/+18
| | | | | | | | | | | | The uImage.FIT partition parser used to squeeze in FIT partitions in the range where partition editor tools (fdisk and such) expect the regular partition. This is confusing people and tools when adding additional partitions on top of the partition used for OpenWrt's uImage.FIT. Instead of squeezing in the additional partitions, rather start with all uImage.FIT partitions at offset 64. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* bcm4908: backport DT patch adding Ethernet MAC addressRafał Miłecki2021-03-311-0/+82
| | | | | | | This tells OS (Linux) where from MAC should be read (bootloader MTD partition). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mediatek: mt7622: improve sysupgrade on MMCDaniel Golle2021-03-311-49/+12
| | | | | | | Use generic functions to acquire rootdev. Make sure to wipe rootfs_data in case of '-n'. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* bmips: backport pinctrl fixesÁlvaro Fernández Rojas2021-03-312-0/+82
| | | | | | Backport some minor upstream fixes for the pinctrl drivers. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ramips: mt7620: ralink-i2s: fix modpost errorIlya Lipnitskiy2021-03-311-1/+2
| | | | | | | | Fixes the following error when building without CONFIG_MODULE_STRIPPED: FATAL: modpost: sound/soc/ralink/snd-soc-ralink-i2s: struct of_device_id is not terminated with a NULL entry! Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
* ramips/mt7621: enable support for cpuidleRui Salvaterra2021-03-311-1/+9
| | | | | | | | | | | MIPS Coherent Processor Systems (CPS), which include the MT7621 SoC, support deep sleep idle states and have a specific cpuidle driver for them. Enable support for it, while also switching from constant timer ticks to the idle dynticks model, with the TEO governor. Run-tested on a Redmi AC2100. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* ramips/mt7621: drop the timer recalibration patchRui Salvaterra2021-03-313-97/+10
| | | | | | | | | | | | | | | | | We've been carrying this patch for many years [1], in order to fix a timer calibration issue on MT7621. Turns out, after retesting with a recent kernel (Linux 5.10), the system works perfectly fine without it (no rcu_sched stalls or inconsistent BogoMIPS values across CPUs). Manually refreshed: 322-mt7621-fix-cpu-clk-add-clkdev.patch 323-mt7621-memory-detect.patch [1] https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=6f4a903533361a2906a4d94ac6f597cd9c6c47bc Suggested-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com> Tested-by: Donald Hoskins <grommish@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* ramips/mt7621: drop the weak reordering patchRui Salvaterra2021-03-312-12/+2
| | | | | | | | | | | | | | | | | | In order to fix random hangs on MT7621, we've been selecting WEAK_REORDERING_BEYOND_LLSC for years [1]. However, these random hangs have been most likely caused by an oversight in the MIPS implementation of the kernel memory consistency model, which has already been fixed for some time (and backported to stable) [2]. Manually refreshed: 321-mt7621-timer.patch [1] https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=5c971cd6fdd7298a2017bdb6bea870088eddb8b9 [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/mips?h=linux-5.4.y&id=42344113ba7a1ed7b5654cd5270af0d5698d8521 Suggested-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com> Tested-by: Donald Hoskins <grommish@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* sunxi: enable wifi module on Pine64 boardsZoltan HERPAI2021-03-292-0/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Pine64(+) and the SoPine64 baseboard has an optional BT+WiFi module, carrying an RTL8723BS. The wifi part is connected via SDIO, the BT part is connected via UART. The BT part requires additional code changes in the drivers so we'll skip that until 5.10. Aside from a DTS patch to enable the wifi module, add the required packages into the device definitions. [ 8.996970] RTL8723BS: module init start [ 9.000922] RTL8723BS: rtl8723bs v4.3.5.5_12290.20140916_BTCOEX20140507-4E40 [ 9.007965] RTL8723BS: rtl8723bs BT-Coex version = BTCOEX20140507-4E40 [ 9.014785] pnetdev = 000000009bdd5000 [ 9.047780] RTL8723BS: rtw_ndev_init(wlan0) [ 9.053349] RTL8723BS: module init ret =0 root@OpenWrt:/# iw list Wiphy phy0 wiphy index: 0 max # scan SSIDs: 9 max scan IEs length: 2304 bytes max # sched scan SSIDs: 0 max # match sets: 0 Retry short limit: 7 Retry long limit: 4 Coverage class: 0 (up to 0m) Available Antennas: TX 0 RX 0 Supported interface modes: * IBSS * managed * AP * monitor Band 1: Frequencies: * 2412 MHz [1] (20.0 dBm) * 2417 MHz [2] (20.0 dBm) * 2422 MHz [3] (20.0 dBm) * 2427 MHz [4] (20.0 dBm) * 2432 MHz [5] (20.0 dBm) * 2437 MHz [6] (20.0 dBm) * 2442 MHz [7] (20.0 dBm) * 2447 MHz [8] (20.0 dBm) * 2452 MHz [9] (20.0 dBm) * 2457 MHz [10] (20.0 dBm) * 2462 MHz [11] (20.0 dBm) * 2467 MHz [12] (20.0 dBm) (no IR) * 2472 MHz [13] (20.0 dBm) (no IR) * 2484 MHz [14] (20.0 dBm) (no IR) Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* sunxi: enable MUSB in A53 subtargetZoltan HERPAI2021-03-291-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | The Pine64(+) and the SoPine64 baseboard has two USB ports. One of these (the lower) is connected directly to a USB host, the other one's (upper) PHY is shared with the separate OTG controller. In order to get it working, MUSB support needs to be enabled. As there are other targets which compile MUSB support into the kernel and not package it into modules, the same is done here. [ 1.348760] usb usb5: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 [ 1.357029] usb usb5: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 1.364250] usb usb5: Product: MUSB HDRC host driver [ 1.369219] usb usb5: Manufacturer: Linux 5.4.99 musb-hcd [ 1.374617] usb usb5: SerialNumber: musb-hdrc.1.auto [ 1.379891] hub 5-0:1.0: USB hub found [ 1.383677] hub 5-0:1.0: 1 port detected [...] [ 697.299440] usb 1-1: new high-speed USB device number 2 using ehci-platform [ 697.461855] usb 1-1: New USB device found, idVendor=090c, idProduct=1000, bcdDevice=11.00 [ 697.470038] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 697.477180] usb 1-1: Product: USB Flash Disk Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* bmips: dts: align LEDsÁlvaro Fernández Rojas2021-03-296-32/+45
| | | | | | Align all bmips devices LED configurations. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: backport accepted pinctrl patchesÁlvaro Fernández Rojas2021-03-2939-2892/+3446
| | | | | | | These patches have been accepted for linux v5.13. External interrupts not supported for now. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: vr-3032u: fix gpio keysÁlvaro Fernández Rojas2021-03-291-2/+2
| | | | | | These GPIO keys were assigned to incorrect pins. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>