aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* ramips: improve gpio control for Phicomm PSG1218Shiji Yang2021-02-233-20/+7
| | | | | | | | | | | Description: 1. From key and led config setting, we can find only "uartf" and "i2c" are used as gpio by check mt7620 datasheet. It's time to remove unused pin group. 2. PSG1218 only have three led, so we can remove ethernet led pinctrl. refer to Phicomm K2G. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* mvebu: add 5.10 as a testing kernelRui Salvaterra2021-02-231-1/+1
| | | | | | | | | | | | | Keep 5.4 as stable until further validation. Tested on Turris Omnia (Rui Salvaterra) and ESPRESSObin v5 (Tomasz Maciej Nowak). Cortex-A{53,72} subtargets are only build-tested. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> [added comment about tests] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: fix the Turris Omnia device treeRui Salvaterra2021-02-233-0/+165
| | | | | | | | | Enable and fix hardware buffer management. Also fix the IRQ storm caused by a misconfiguration of the PCA9538 interrupt pin. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* mvebu: fix the patch numberingRui Salvaterra2021-02-233-0/+0
| | | | | | | | | | Make each logical patch group numbering contiguous. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> [add kernel version to backport] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: refresh 5.10 kconfigs/patchesRui Salvaterra2021-02-2337-2967/+33
| | | | | | | | Also delete already upstreamed patches/changes. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* mvebu: remove upstreamed DTS files in 5.10Adrian Schmutzler2021-02-233-0/+0
| | | | | | | Some armada-3720-espressobin-* files have been upstreamed, move these to files-5.4. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: copy 5.4 patches/kconfigs to 5.10Rui Salvaterra2021-02-2353-0/+5216
| | | | | | | | | | Just a simple copy, no refresh yet. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> [do not duplicate files] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: refresh the 5.4 kernel configsRui Salvaterra2021-02-233-283/+24
| | | | | | | | | Remove the implicit/inherited symbols. While not strictly necessary, this will make reviewing the diff between 5.4 and 5.10 easier. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: 5.10: add further generic kconfig symbolsRui Salvaterra2021-02-231-0/+7
| | | | | | | | | | This will make the specific kconfig smaller. Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com> Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com> Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> [improved commit title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bmips: fix SMP CPU mappingÁlvaro Fernández Rojas2021-02-232-11/+58
| | | | | | | | SMP isn't supported on BCM6358 since it has a shared TLB. Some boards boot with CPU #1 instead of CPU #0, and this is currently not supported do to a smp-bmips bug. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: switch to accepted upstream patchÁlvaro Fernández Rojas2021-02-232-8/+25
| | | | | | This patch has been accepted and is going to be in linux v5.12. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: rename upstream patchesÁlvaro Fernández Rojas2021-02-239-0/+0
| | | | | | These patches were applied in linux v5.11, not v5.12. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6358: add watchdogÁlvaro Fernández Rojas2021-02-231-0/+9
| | | | | | | Watchdog node was missing in commit 029093a302. Fixes: 029093a302c9 ("bmips: add new target") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: remove unneeded downstream serial patchÁlvaro Fernández Rojas2021-02-232-12/+1
| | | | | | Disabling CONFIG_SERIAL_8250 makes the upstream serial driver work OOB. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: pinctrl: fix BCM6348 groupsDaniel González Cabanelas2021-02-235-58/+21
| | | | | | | | | | | | | | | | | | | | The current driver has some troubles: - Some groupings are wrong. - The pinctrl group0 owns pins never used (at least in Openwrt) for any pinmux. The driver hijacks all the pins on the group avoiding any other use, spite they're free. I.e. for buttons, causing this kernel error: [ 4.735928] gpio-keys-polled keys: unable to claim gpio 479, err=-22 [ 4.742642] gpio-keys-polled: probe of keys failed with error -22 - Minor errors about groupings on the documentation - Missing "diag" grouping in dtsi - Wrong groupings in dtsi Fix it by setting the correct groups. And relax the pin capturing, letting the gpios belonging to any group to be used for other purposes like buttons. This was the behavior with stock firmwares and old OpenWrt versions which never caused any trouble. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* bmips: bcm6358: fix EHCI/OHCI kernel panicsÁlvaro Fernández Rojas2021-02-232-0/+70
| | | | | | | ARCH_HAS_SYNC_DMA_FOR_CPU_ALL is causing kernel panics when EHCI or OHCI are enabled. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* imx6: remove redundant IMAGE_NAMEAdrian Schmutzler2021-02-231-2/+0
| | | | | | | | | | IMAGE_NAME is set twice for ventana, and the second value actually matches the default in image.mk. Remove both. Fixes: ded905ce431b ("imx6: extend cubox support to hummingboard, add support for building full images") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: remove redundant KERNEL_PREFIX definitionsPaul Spooren2021-02-234-7/+0
| | | | | | | | | | The variables KERNEL_INITRAMFS_PREFIX and KERNEL_PREFIX are already defined in include/image.mk and don't have to be redefined in the target Makefiles. Signed-off-by: Paul Spooren <mail@aparcar.org> [also cover imx6] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bmips: split base-files into subtargetsAdrian Schmutzler2021-02-235-6/+36
| | | | | | | | | Like done for several targets already, splitting base-files into subtarget will provide smaller images due to more specific distribution of files per subtarget and allow to use default cases more effectively. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bmips: add JFFS2 unaligned access patchÁlvaro Fernández Rojas2021-02-221-0/+26
| | | | | | This patch is also needed on bmips if SMP is enabled. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368: fix bcm2835-rngÁlvaro Fernández Rojas2021-02-222-0/+76
| | | | | | | IPSEC needs a reset before using its HW RNG. Otherwise, the numbers generated won't be random at all. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ramips: fix Phicomm PSG1218A switch port labelsShiji Yang2021-02-221-1/+1
| | | | | | | | The lan port sequence was reversed compared to the labels. Signed-off-by: Shiji Yang <yangshiji66@qq.com> [improve commit title/message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: move aliases to the top in SoC DTSI filesAdrian Schmutzler2021-02-229-47/+47
| | | | | | | The aliases node is expected as one of the first entries, and having it there matches alphabetic sorting as well. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: drop redundant definitions of serial0 in aliasesAdrian Schmutzler2021-02-224-4/+0
| | | | | | | | These were redefines of the same value already set in the SoC dtsi files. Reported-by: Shiji Yang <yangshiji66@qq.com> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bmips: add new targetÁlvaro Fernández Rojas2021-02-2280-0/+12048
| | | | | | | | | | | | | | | | | This target has full device tree support, thus reducing the number of patches needed for bcm63xx, in which there's a patch for every board. The intention is to start with a minimal amount of downstream patches and start upstreaming all of them. Current status: - Enabling EHCI/OHCI on BCM6358 causes a kernel panic. - BCM63268 lacks Timer Clocks/Reset support. - No PCI/PCIe drivers. - No ethernet drivers. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: limit name metadata to model nameÁlvaro Fernández Rojas2021-02-221-5/+1
| | | | | | | Since there are only 16 characters available, on most cases the vendor name will fit in the metadata, but the model name won't fit. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: mtdsplit: add support for BCM63XX CFE firmwareÁlvaro Fernández Rojas2021-02-225-0/+194
| | | | | | | | Broadcom CFE bootloader relies on a tag for identifying the current firmware, such as version, image start address, kernel address and size, rootfs size, board id, signatures, etc. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ramips: correct/add Phicomm K2x WAN/label MAC addressShiji Yang2021-02-221-4/+4
| | | | | | | | | | | | | | Phicomm K2G: add missing label_mac Phicomm PSG1218A & PSG1218B: The previous wan mac was set as factory@0x28 +1 (originally based on the default case for the ramips target), but the correct wan mac is factory@0x28 -1, being equal to factory@0x2e. Signed-off-by: Shiji Yang <yangshiji66@qq.com> [minor commit title/message adjustments] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: bcm63268: fix GPIO interruptsÁlvaro Fernández Rojas2021-02-221-1/+1
| | | | | | pinctrl should rely on external interrupt controller for GPIO interrupts. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* generic: add missing symbolDavid Bauer2021-02-221-0/+1
| | | | Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: enable Regulator support for targetDavid Bauer2021-02-225-3/+2
| | | | | | | | | | | | Regulator support was enabled on all subtargets except for ath79-nand. With Kernel 5.10, AT803x requires Regulator support, thus enabling on the complete target, as ath79-nand requires AT803x. While this is only required on Kernel 5.10, enable it also on 5.4. We have no major size-constraint, so enabling it on 5.4 allows us to clean up the occurences in the subtarget configuration. Signed-off-by: David Bauer <mail@david-bauer.net>
* mpc85xx: add testing kernel for p1020David Bauer2021-02-222-0/+4
| | | | | | | CONFIG_REGULATOR is required for the p1020 subtarget, as the AT803X driver depends on it. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: use ioremap kernel version independentDavid Bauer2021-02-221-14/+0
| | | | | | | | | | As mangix pointed out on IRC, ioremap and ioremap_nocache are functionally equivalent on kenrel 5.4 and 5.10. Therefore we can use ioremap regardless of the kernel the driver gets compiled for. Signed-off-by: David Bauer <mail@david-bauer.net>
* kernel: sort configAleksander Jan Bajkowski2021-02-212-6/+6
| | | | | | | | | | | | | This was done by executing this script: find . -name "config-*" > ../configs.txt for config in $(cat ../configs.txt); do ./scripts/kconfig.pl '+' $config /dev/null > $config-new mv $config-new $config done rm ../configs.txt Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* bcm27xx: remove urngd packageÁlvaro Fernández Rojas2021-02-201-0/+2
| | | | | | Now that khwrngd is working on all subtargets we can remove urgnd. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm27xx: enable bcm2711 HW RNGÁlvaro Fernández Rojas2021-02-203-0/+27
| | | | | | Also add a patch setting its quality, which should make it usable by khwrngd. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* generic: add bcm2835-rng quality patchÁlvaro Fernández Rojas2021-02-202-0/+52
| | | | | | | This patch allows devices without a high resolution timer to boot up faster. It should speed up boots for bcm2708 and bcm63xx. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* x86: add led driver for PC Engines APU1Andreas Eberlein2021-02-204-5/+50
| | | | | | | | | This driver adds the LED support for the PC Engines APU1. This integrates the Linux kernel driver and includes a patch to support newer firmware versions. Also the default LED configuration is updated to use the correct devices. Signed-off-by: Andreas Eberlein <foodeas@aeberlein.de>
* ramips: overwrite reset gpio properties in EX6150 DTSStijn Segers2021-02-201-0/+3
| | | | | | | | | | | | | | | The Netgear EX6150 can, just like the D-Link DIR-860L rev B1, fail to initialise both radios in some cases. Add the reset GPIOs explicitly so the PCI-E devices get re-initialised properly. See also FS #3632. Error shows up in dmesg as follows: [ 1.560764] mt7621-pci 1e140000.pcie: pcie1 no card, disable it (RST & CLK) Tested-by: Kurt Roeckx <kurt@roeckx.be> Signed-off-by: Stijn Segers <foss@volatilesystems.org> [removed period from commit title] Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add kernel 5.10 supportDavid Bauer2021-02-2042-1/+3854
| | | | | | | | | | | | | | | | This adds Kernel 5.10 support for the generic, nand and tiny subtargets. The following patch is not contained, as it needs to be reworked: platform/920-mikrotik-rb4xx.patch Tested-on: - Siemens WS-AP3610 - Enterasys WS-AP3710 - Aerohive HiveAP 121 - TP-Link TL-WA901 v2 - TP-Link TL-WR741 v1 Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: ar934x-nand: add kernel 5.10 compatibilityDavid Bauer2021-02-201-0/+30
| | | | | | | | | Adapt the driver to make it work with the NAND subsystem changes between kernel 5.4 and 5.10. Tested-on: Aerohive HiveAP121 Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: specify device-type for PCI controllersDavid Bauer2021-02-206-0/+14
| | | | | | | | Specify the device_type property for PCI as well as PCIe controllers. Otherwise, the PCI range parser will not be selected when using kernel 5.10. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: ag71xx: make kernel 5.10 compatibleDavid Bauer2021-02-202-1/+28
| | | | | | | Add the necessary kernel version ifdef switches in order to support the kernel version 5.10. Signed-off-by: David Bauer <mail@david-bauer.net>