aboutsummaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
...
* mediatek: implement bad-block management table supportFelix Fietkau2021-02-285-0/+842
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* image: extend FIT partition parser for use on eMMC/SDcardDaniel Golle2021-02-283-19/+245
| | | | | | | | | | Introduce a magic GUID_PARTITION_LINUX_FIT_GUID to designate a GPT partition to be interpreted by the FIT partition parser. In that way, sub-partitions for (external-data) uImage.FIT stored directly in a partition can be split, similar like we do for devices with raw flash storage. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: backport pending fix to select CPU_MIPS64Jason A. Donenfeld2021-02-272-0/+73
| | | | | | | | | | | | | | | | | | | | | The CPU_MIPS64 and CPU_MIPS32 variables are supposed to be able to distinguish broadly between 64-bit and 32-bit MIPS CPUs. However, they weren't selected by the specialty CPUs, Octeon and Loongson, which meant it was possible to hit a weird state of: MIPS=y, CONFIG_64BIT=y, CPU_MIPS64=n This commit rectifies the issue by having CPU_MIPS64 be selected when the missing Octeon or Loongson models are selected. In particular, this affects our octeonplus target. It has been posted to LKML here: https://lore.kernel.org/linux-mips/20210227122605.2680138-1-Jason@zx2c4.com/ Cc: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com> Cc: David Bauer <mail@david-bauer.net> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* kernel: bump 5.4 to 5.4.101John Audia2021-02-272-2/+2
| | | | | | | | | | | | Ran update_kernel.sh in a fresh clone without any existing toolchains. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional. Signed-off-by: John Audia <graysky@archlinux.us>
* kernel: move some new symbols available on 5.10 to genericAleksander Jan Bajkowski2021-02-273-7/+7
| | | | | | Move some disabled config options found in sunxi target to generic. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* kernel: b53: update the BCM5365 UIDDaniel González Cabanelas2021-02-261-2/+2
| | | | | | | | | | | | | | BCM63XX internal PHYs and BCM5365 SoC internal switch are both using the same phy_driver->phy_id, causing conflicts and unnecessary probes. E.g the BCM63XX phy internal IRQ is lost on the first probe. The full BCM5365 UID is 0x00406370. Use an additional byte to mask the BCM5365 UID to avoid duplicate driver phy_id's. This will fix the IRQ issue in internal BCM63XX PHYs and avoid more conflicts in the future. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* kernel: 5.4: generic: add missing symbolsIlya Lipnitskiy2021-02-261-0/+13
| | | | Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
* kernel: 5.4: fix patches after wireguard backportIlya Lipnitskiy2021-02-263-25/+7
| | | | | | No major problems, just a minor Kconfig fix and a refresh. Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
* kernel: 5.4: import wireguard backportJason A. Donenfeld2021-02-26124-0/+63670
| | | | | | | | | | | | | | | | | | Rather than using the clunky, old, slower wireguard-linux-compat out of tree module, this commit does a patch-by-patch backport of upstream's wireguard to 5.4. This specific backport is in widespread use, being part of SUSE's enterprise kernel, Oracle's enterprise kernel, Google's Android kernel, Gentoo's distro kernel, and probably more I've forgotten about. It's definately the "more proper" way of adding wireguard to a kernel than the ugly compat.h hell of the wireguard-linux-compat repo. And most importantly for OpenWRT, it allows using the same module configuration code for 5.10 as for 5.4, with no need for bifurcation. These patches are from the backport tree which is maintained in the open here: https://git.zx2c4.com/wireguard-linux/log/?h=backport-5.4.y I'll be sending PRs to update this as needed. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* kernel: 5.10: wireguard: backport 5.12-rc1 changes in net.gitJason A. Donenfeld2021-02-265-0/+1016
| | | | | | | | | | | | | | These will eventually make their way to 5.10, but it could be a while. https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=ee576c47db60432c37e54b1e2b43a8ca6d3a8dca https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=5a0598695634a6bb4126818902dd9140cd9df8b6 https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=99fff5264e7ab06f45b0ad60243475be0a8d0559 https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=8b5553ace83cced775eefd0f3f18b5c6214ccf7a https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=bce2473927af8de12ad131a743f55d69d358c0b9 Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> [Rename 082-wireguard-kconfig... to 083-wireguard-kconfig...] Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
* zynq: Enable CONFIG_KERNEL_MODE_NEONIlya Lipnitskiy2021-02-261-1/+0
| | | | | | | | This flag is set on all other platforms. And Zynq 7000 SoC does have NEON support: https://www.xilinx.com/support/documentation/application_notes/xapp1206-boost-sw-performance-zynq7soc-w-neon.pdf Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
* mpc85xx: remove fdt.bin imageDavid Bauer2021-02-261-1/+1
| | | | | | | | | When converting the fdt binary to be created as an artifact, the image receipt was dropped but the entry in the target images list was not. Fixes commit 1e41de2f48e2 ("mpc85xx: convert TL-WDR4900 v1 to simpleImage") Signed-off-by: David Bauer <mail@david-bauer.net>
* ramips: add support for ZTE MF283+Lech Perczak2021-02-268-0/+415
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ZTE MF283+ is a dual-antenna LTE category 4 router, based on Ralink RT3352 SoC, and built-in ZTE P685M PCIe MiniCard LTE modem. Hardware highlighs: - CPU: MIPS24KEc at 400MHz, - RAM: 64MB DDR2, - Flash: 16MB SPI, - Ethernet: 4 10/100M port switch with VLAN support, - Wireless: Dual-stream 802.11n (RT2860), with two internal antennas, - WWAN: Built-in ZTE P685M modem, with two internal antennas and two switching SMA connectors for external antennas, - FXS: Single ATA, with two connectors marked PHONE1 and PHONE2, internally wired in parallel by 0-Ohm resistors, handled entirely by internal WWAN modem. - USB: internal miniPCIe slot for modem, unpopulated USB A connector on PCB. - SIM slot for the WWAN modem. - UART connector for the console (unpopulated) at 3.3V, pinout: 1: VCC, 2: TXD, 3: RXD, 4: GND, settings: 57600-8-N-1. - LEDs: Power (fixed), WLAN, WWAN (RGB), phone (bicolor, controlled by modem), Signal, 4 link/act LEDs for LAN1-4. - Buttons: WPS, reset. Installation: As the modem is, for most of the time, provided by carriers, there is no possibility to flash through web interface, only built-in FOTA update and TFTP recovery are supported. There are two installation methods: (1) Using serial console and initramfs-kernel - recommended, as it allows you to back up original firmware, or (2) Using TFTP recovery - does not require disassembly. (1) Using serial console: To install OpenWrt, one needs to disassemble the router and flash it via TFTP by using serial console: - Locate unpopulated 4-pin header on the top of the board, near buttons. - Connect UART adapter to the connector. Use 3.3V voltage level only, omit VCC connection. Pin 1 (VCC) is marked by square pad. - Put your initramfs-kernel image in TFTP server directory. - Power-up the device. - Press "1" to load initramfs image to RAM. - Enter IP address chosen for the device (defaults to 192.168.0.1). - Enter TFTP server IP address (defaults to 192.168.0.22). - Enter image filename as put inside TFTP server - something short, like firmware.bin is recommended. - Hit enter to load the image. U-boot will store above values in persistent environment for next installation. - If you ever might want to return to vendor firmware, BACK UP CONTENTS OF YOUR FLASH NOW. For this router, commonly used by mobile networks, plain vendor images are not officially available. To do so, copy contents of each /dev/mtd[0-3], "firmware" - mtd3 being the most important, and copy them over network to your PC. But in case anything goes wrong, PLEASE do back up ALL OF THEM. - From under OpenWrt just booted, load the sysupgrade image to tmpfs, and execute sysupgrade. (2) Using TFTP recovery - Set your host IP to 192.168.0.22 - for example using: sudo ip addr add 192.168.0.22/24 dev <interface> - Set up a TFTP server on your machine - Put the sysupgrade image in TFTP server root named as 'root_uImage' (no quotes), for example using tftpd: cp openwrt-ramips-rt305x-zte_mf283plus-squashfs-sysupgrade.bin /srv/tftp/root_uImage - Power on the router holding BOTH Reset and WPS buttons held for around 5 seconds, until after WWAN and Signal LEDs blink. - Wait for OpenWrt to start booting up, this should take around a minute. Return to original firmware: Here, again there are two possibilities are possible, just like for installation: (1) Using initramfs-kernel image and serial console (2) Using TFTP recovery (1) Using initramfs-kernel image and serial console - Boot OpenWrt initramfs-kernel image via TFTP the same as for installation. - Copy over the backed up "firmware.bin" image of "mtd3" to /tmp/ - Use "mtd write /tmp/firmware.bin /dev/mtd3", where firmware.bin is your backup taken before OpenWrt installation, and /dev/mtd3 is the "firmware" partition. (2) Using TFTP recovery - Follow the same steps as for installation, but replacing 'root_uImage' with firmware backup you took during installation, or by vendor firmware obtained elsewhere. A few quirks of the device, noted from my instance: - Wired and wireless MAC addresses written in flash are the same, despite being in separate locations. - Power LED is hardwired to 3.3V, so there is no status LED per se, and WLAN LED is controlled by WLAN driver, so I had to hijack 3G/4G LED for status - original firmware also does this in bootup. - FXS subsystem and its LED is controlled by the modem, so it work independently of OpenWrt. Tested to work even before OpenWrt booted. I managed to open up modem's shell via ADB, and found from its kernel logs, that FXS and its LED is indeed controlled by modem. - While finding LEDs, I had no GPL source drop from ZTE, so I had to probe for each and every one of them manually, so this might not be complete - it looks like bicolor LED is used for FXS, possibly to support dual-ported variant in other device sharing the PCB. - Flash performance is very low, despite enabling 50MHz clock and fast read command, due to using 4k sectors throughout the target. I decided to keep it at the moment, to avoid breaking existing devices - I identified one potentially affected, should this be limited to under 4MB of Flash. The difference between sysupgrade durations is whopping 3min vs 8min, so this is worth pursuing. In vendor firmware, WWAN LED behaviour is as follows, citing the manual: - red - no registration, - green - 3G, - blue - 4G. Blinking indicates activity, so netdev trigger mapped from wwan0 to blue:wwan looks reasonable at the moment, for full replacement, a script similar to "rssileds" would need to be developed. Behaviour of "Signal LED" in vendor firmware is as follows: - Off - no signal, - Blinking - poor coverage - Solid - good coverage. A few more details on the built-in LTE modem: Modem is not fully supported upstream in Linux - only two CDC ports (DIAG and one for QMI) probe. I sent patches upstream to add required device IDs for full support. The mapping of USB functions is as follows: - CDC (QCDM) - dedicated to comunicating with proprietary Qualcomm tools. - CDC (PCUI) - not supported by upstream 'option' driver yet. Patch submitted upstream. - CDC (Modem) - Exactly the same as above - QMI - A patch is sent upstream to add device ID, with that in place, uqmi did connect successfully, once I selected correct PDP context type for my SIM (IPv4-only, not default IPv4v6). - ADB - self-explanatory, one can access the ADB shell with a device ID added to 51-android.rules like so: SUBSYSTEM!="usb", GOTO="android_usb_rules_end" LABEL="android_usb_rules_begin" SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", ATTR{idProduct}=="1275", ENV{adb_user}="yes" ENV{adb_user}=="yes", MODE="0660", GROUP="plugdev", TAG+="uaccess" LABEL="android_usb_rules_end" While not really needed in OpenWrt, it might come useful if one decides to move the modem to their PC to hack it further, insides seem to be pretty interesting. ADB also works well from within OpenWrt without that. O course it isn't needed for normal operation, so I left it out of DEVICE_PACKAGES. Signed-off-by: Lech Perczak <lech.perczak@gmail.com> [remove kmod-usb-ledtrig-usbport, take merged upstream patches] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: add LED support for GL.iNet GL-MV1000Jeff Collins2021-02-262-1/+46
| | | | | | | | This patch enables LED support for the GL.iNet GL-MV1000 Signed-off-by: Jeff Collins <jeffcollins9292@gmail.com> [add SPDX identifier on new file, add aliases, minor cosmetic issues] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix USB power on TP-Link TL-WR810N v1Tom Stöveken2021-02-261-0/+1
| | | | | | | | | | | Before: Kernel reported "usb_vbus: disabling" and the USB was not providing power After: USB power is switched on, peripheral is powered from the device Signed-off-by: Tom Stöveken <tom@naaa.de> [squash and tidy up] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: backport more upstream dts stuff from kernel 5.11Rafał Miłecki2021-02-257-0/+507
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: backport Linksys Panamera (EA9500) patchesVivek Unune2021-02-255-2/+230
| | | | | | | | | | | | | | | | These patches have been already accepted. 302-ARM-dts-BCM5301X-Update-Northstar-pinctrl-binding.patch had to be updated. [rmilecki: use actual upstream accepted patches replace v5.10 with v5.11 to match actual upstream kernel recover dropped part of the pinctrl compatible patch update filenames refresh patches] Signed-off-by: Vivek Unune <npcomplete13@gmail.com> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bcm53xx: group dts backports by upstream kernel versionRafał Miłecki2021-02-254-1/+6
| | | | | | It's a simple renaming thing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* bmips: dts: fix syscon-reboot nodesÁlvaro Fernández Rojas2021-02-256-42/+36
| | | | | | Using regmap with phandles is deprecated. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add BCM63268 timer clock and reset supportÁlvaro Fernández Rojas2021-02-256-4/+413
| | | | | | We need this to fix USB support on BCM63268. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: rewrite pin controllersÁlvaro Fernández Rojas2021-02-2526-2188/+3517
| | | | | | This is needed in order to upstream them. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* treewide: rename IMAGE_PREFIX/IMAGE_NAME to DEVICE_IMG_*Adrian Schmutzler2021-02-259-13/+13
| | | | | | | | | | | | | | We so far had two variables IMG_PREFIX and IMAGE_PREFIX with different content. Since these names are obviously quite confusing, this patch renames the latter to DEVICE_IMG_PREFIX, as it's a device-dependent variable, while IMG_PREFIX is only (sub)target-dependent. For consistency, also rename IMAGE_NAME to DEVICE_IMG_NAME, as that's a device-dependent variable as well. Cc: Paul Spooren <mail@aparcar.org> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: switch to use seperate ramdisk for initramfs imagesDaniel Golle2021-02-252-2/+2
| | | | | | | | | | | | | | | | | | MediaTek targets always use U-Boot's modern uImage.FIT format which allows bundling several blobs into a single file including hashes, descriptions and more. In fact, we are already using that to bundle the Flattened Device Tree blob with the kernel on this and many other targets. In the same fashion, we can now make use of the newly introduced support for building seperate ramdisk to uImage.FIT with a dedicated initrd blob checked and loaded by U-Boot instead of embedding the cpio archive into the kernel itself. This allows for having larger ramdisks, choosing ramdisk compression independently of kernel compression (while only kernel is decompressed by the bootloader) and for more easily replacing or modifying the filesystem contained in an initramfs image. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* oxnas: add experimental support for Linux 5.10Daniel Golle2021-02-2513-0/+1365
| | | | | | | PCIe still reports link-down for some reason, RAID fails to assemble despite SATA looking good (maybe a generic problem with RAID?) Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: enable UART node for GL-USB150Adrian Schmutzler2021-02-251-4/+0
| | | | | | | | | | This was overlooked when adding support for this device. (It has recently been discovered that this was the only device in ath79 having &uart disabled.) Fixes: acc62630132c ("ath79: add support for GL.iNet GL-USB150") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.100John Audia2021-02-252-3/+3
| | | | | | | | | | | | | | Ran update_kernel.sh in a fresh clone without any existing toolchains. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> [refresh again] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: mt7622-bananapi-bpi-r64-rootdisk rebase to upstream dtsOskari Lemmela2021-02-241-573/+1
| | | | | | | simplify maintaining mt7622-bananapi-bpi-r64-rootdisk.dts by storing only differences between upstream dts Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
* mediatek: mt7622: fix bpi-r64 emmc f2fs overlayOskari Lemmela2021-02-241-1/+2
| | | | | | | | f2fs tools are needed for generating f2fs overlay. vfat modules are used for recovery mounting. Fixes: f72a2b004c3 ("mediatek: add bpi-r64 emmc support") Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
* mediatek: mt7622: enable support for f2fs overlayOskari Lemmela2021-02-241-0/+2
| | | | | | | f2fs filesystem and loop device support are needed for f2fs overlay over squashfs. Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
* mediatek: mt7622: add missing CONFIG_MMC_BLKOskari Lemmela2021-02-241-0/+1
| | | | | | CONFIG_MMC_BLK enables block devices for SD/eMMC Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
* kernel: bump version 5.10 to 5.10.18Kabuli Chana2021-02-2422-86/+86
| | | | | | | | update kernel version, refresh current patchset Signed-off-by: Kabuli Chana <newtownBuild@gmail.com> [rebase/refresh] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bmips: add SPI accepted PM patchesÁlvaro Fernández Rojas2021-02-244-20/+93
| | | | | | These patches have been accepted upstream. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ath79: create common DTSI for Senao qca955x APsAdrian Schmutzler2021-02-243-170/+101
| | | | | | | | | | | | | | This creates a shared DTSI for qca955x Senao/Engenius APs with concatenated firmware partition/okli loader: - EAP1200H - EnstationAC v1 To make this usable for future boards with 32 MB flash as well, split the partitions node already. Suggested-by: Michael Pratt <mcpratt@pm.me> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: rename 'engenius' Makefile definitions to 'senao'Michael Pratt2021-02-243-25/+33
| | | | | | | | | | | | | | | | These recipes and definitions can apply to devices from other vendors with PCB boards or SDK produced by Senao not only the brand Engenius possible examples: Extreme Networks, WatchGuard, OpenMesh, Fortinet, ALLNET, OCEDO, Plasma Cloud, devolo, etc. so rename all of these items and move DEVICE_VENDOR from common to generic/tiny.mk Signed-off-by: Michael Pratt <mcpratt@pm.me>
* ath79: create common DTSI for Senao ar934x APsAdrian Schmutzler2021-02-244-273/+98
| | | | | | | | | | | | | | | This creates a shared DTSI for ar934x Senao/Engenius APs: - EAP300 v2 - ENS202EXT v1 - EAP600 - ECB600 Since ar9341/ar9344 have different configuration, this new file mostly contains the partitioning. Suggested-by: Michael Pratt <mcpratt@pm.me> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: create common DTSI for Senao ar724x APsAdrian Schmutzler2021-02-244-261/+94
| | | | | | | | | | | | | | This creates a shared DTSI for ar724x Senao/Engenius APs: - ENH202 v1 - EAP350 v1 - ECB350 v1 Since ar7240/ar7242 have different configuration, this new file mostly contains the partitioning. Suggested-by: Michael Pratt <mcpratt@pm.me> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: enable UART in SoC DTSI filesAdrian Schmutzler2021-02-24208-847/+16
| | | | | | | | | | | | | | | The uart node is enabled on all devices except one (GL-USB150 *). Thus, let's not have a few hundred nodes to enable it, but do not disable it in the first place. Where the majority of devices is using it, also move the serial0 alias to the DTSI. *) Since GL-USB150 even defines serial0 alias, the missing uart is probably just a mistake. Anyway, disable it for now so this patch stays cosmetic. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kirkwood: set testing kernel version to 5.10Sungbo Eo2021-02-241-0/+1
| | | | | | | | | | | | Tested on Pogoplug V4. Linksys EA3500 will not build with buildbot settings and should be disabled when the target is switched, unless the image size is reduced again. Signed-off-by: Sungbo Eo <mans0n@gorani.run> [add EA3500 comment] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kirkwood: update config for kernel 5.10Sungbo Eo2021-02-241-5/+7
| | | | | | | | | | | Update config with make kernel_oldconfig. CONFIG_SATA_PMP=y is added manually as done for 5.4. This should be resolved properly in a separate issue. Signed-off-by: Sungbo Eo <mans0n@gorani.run> [add back CONFIG_SATA_PMP, rebase/refresh] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kirkwood: refresh patches for kernel 5.10Sungbo Eo2021-02-243-487/+2
| | | | | | | Refresh patches to make them apply to kernel 5.10. The removed patch has been merged upstream. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* kirkwood: copy files to kernel 5.10Sungbo Eo2021-02-2416-0/+1614
| | | | | | Copy config and patches to kernel 5.10. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* kernel: add further missing symbolsAdrian Schmutzler2021-02-245-3/+4
| | | | | | | | | | | CONFIG_NET_DSA_MV88E6XXX_PTP was simply missing in generic config. CONFIG_I2C_PXA_SLAVE was previously enabled via i2c-pxa package, but got removed there without moving the symbol to generic config. Fixes: dd13add3ceed ("kernel: i2c-pxa: remove slave") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* image: allow building FIT and uImage with ramdiskDaniel Golle2021-02-241-0/+3
| | | | | | | | | | | | | Instead of embedding the initrd cpio archive into the kernel, allow for having an external ramdisk added to the FIT or uImage. This is useful to overcome kernel size limitations present in many stock bootloaders, as the ramdisk is then loaded seperately and doesn't add to the kernel size. Hence we can have larger ramdisks to host ie. installers with all binaries to flash included (or a web-based firmware selector). In terms of performance and total size the differences are neglectible. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* image: add support for building FIT image with filesystemDaniel Golle2021-02-247-2/+438
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow for single (external-data) FIT image to hold kernel, dtb and squashfs. In that way, the bootloader verifies the system integrity including the rootfs, because what's the point of checking that the hash of the kernel is correct if it won't boot in case of squashfs being corrupted? Better allow bootloader to check everything needed to make it at least up to failsafe mode. As a positive side effect this change also makes the sysupgrade process on nand potentially much easier as it is now. In short: mkimage has a parameter '-E' which allows generating FIT images with 'external' data rather than embedding the data into the device-tree blob itself. In this way, the FIT structure itself remains small and can be parsed easily (rather than having to page around megabytes of image content). This patch makes use of that and adds support for adding sub-images of type 'filesystem' which are used to store the squashfs. Now U-Boot can verify the whole OS and the new partition parsers added in the Linux kernel can detect the filesystem sub-images, create partitions for them, and select the active rootfs volume based on the configuration in FIT (passing configuration via device tree could be implemented easily at a later stage). This new FIT partition parser works for NOR flash (on top of mtdblock), NAND flash (on top of ubiblock) as well as classic block devices (ie. eMMC, SDcard, SATA, NVME, ...). It could even be used to mount such FIT images via `losetup -P` on a user PC if this patch gets included in Linux upstream one day ;) Signed-off-by: John Crispin <john@phrozen.org> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ramips: remove obsolete mx25l25635f compatible hackDENG Qingfang2021-02-244-4/+4
| | | | | | | The kernel bump to 5.4 has removed the mx25l25635f hack, and the mx25l25635f compatible is no longer required. Signed-off-by: DENG Qingfang <dqfext@gmail.com>
* ramips: overwrite reset gpio properties in DIR-860L DTSStijn Segers2021-02-231-0/+3
| | | | | | | | | | | | | | As suggested by Sergio, this adds GPIOs 19 and 8 explicitly into the DIR-860L DTS, so the PCI-E ports get reset and the N radio (radio1) on PCI-E port 1 comes up reliably. Fixes the following error that popped up in dmesg: [ 1.638942] mt7621-pci 1e140000.pcie: pcie1 no card, disable it (RST & CLK) Suggested-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Signed-off-by: Stijn Segers <foss@volatilesystems.org> Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
* ramips: mt7621: enable SX150x driverSander Vanheule2021-02-231-0/+1
| | | | | | | | | | | | | | | | The Netgear R6800 and R6700v2 devices have a Semtech SX1503 GPIO expander controlling the device LEDs. This expander was initially supported on 4.14, but support was lost in the transition to 5.4. Since this driver cannot be built as a kernel module, enable it in the kernel config for all mt7621 devices. Run-tested on a Netgear R6800. Cc: Stijn Segers <foss@volatilesystems.org> Cc: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Sander Vanheule <sander@svanheule.net> Tested-by: Stijn Segers <foss@volatilesystems.org>
* kernel: DSA roaming fix for Marvell mv88e6xxxDENG Qingfang2021-02-2330-0/+2365
| | | | | | | | | | | | | | | | | | | | | | | | | Marvell mv88e6xxx switch series cannot perform MAC learning from CPU-injected (FROM_CPU) DSA frames, which results in 2 issues. - excessive flooding, due to the fact that DSA treats those addresses as unknown - the risk of stale routes, which can lead to temporary packet loss Backport those patch series from netdev mailing list, which solve these issues by adding and clearing static entries to the switch's FDB. Add a hack patch to set default VID to 1 in port_fdb_{add,del}. Otherwise the static entries will be added to the switch's private FDB if VLAN filtering disabled, which will not work. The switch may generate an "ATU violation" warning when a client moves from the CPU port to a switch port because the static ATU entry added by DSA core still points to the CPU port. DSA core will then clear the static entry so it is not fatal. Disable the warning so it will not confuse users. Link: https://lore.kernel.org/netdev/20210106095136.224739-1-olteanv@gmail.com/ Link: https://lore.kernel.org/netdev/20210116012515.3152-1-tobias@waldekranz.com/ Ref: https://gitlab.nic.cz/turris/turris-build/-/issues/165 Signed-off-by: DENG Qingfang <dqfext@gmail.com>
* kernel: add symbol CONFIG_POWER_RESET_LINKSTATIONAdrian Schmutzler2021-02-233-2/+1
| | | | | | | | Add symbol to generic config (this was added between 5.4 and 5.10), and remove it from the targets where it was added by kernel_oldconfig in the meantime. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* generic: add missing symbolsDavid Bauer2021-02-232-0/+2
| | | | Signed-off-by: David Bauer <mail@david-bauer.net>