aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mvebu
Commit message (Collapse)AuthorAgeFilesLines
* mvebu: Move cortexa9 specific config options from global configMarek Behún2022-01-152-2/+4
| | | | | | | | | | | Move config options CONFIG_PHY_MVEBU_A38X_COMPHY CONFIG_RTC_DRV_MV to cortexa9/config-5.10. These are not needed for arm64 targets. Signed-off-by: Marek Behún <kabel@kernel.org>
* mvebu: cortexa9: Add support for Ctera C200-V2Pawel Dembicki2022-01-157-1/+527
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2-Bay NAS - maximum two 3.5" Harddisks Hardware: - SoC: Marvell 88F6707-A1 ARMv7 Processor 1,2GHz (ARMADA 370 SoC) - Ram: 1GB (2x Nanya NT5CC512M8DN-D1) - NAND Flash: 256MB (ESMT F59L2G81A-25T) - Lan: 1x GBE (Marvell 88E1318-NNB2) - Storage: 2x SATA HDD 3.5" Slot - USB: 2x USB 3.0 port (Renesas uPD720202) - Console: Internal J3 connector (1: Vcc, 2: Rx, 3: Tx, 4: GND) - LEDs: 13x GPIO controlled - Buttons: 2x GPIO controlled Known issues: - Buzzer is unused due lack of proper driver - USB1/2 usbport ledtrigger won't work (through DT) - Renesas uPD720202 requires firmware file. It's possible to find non-free binary. Please look for 'UPDATE.mem' file and put in into '/lib/firmware/renesas_usb_fw.mem' file. Installation: - Apply factory initramfs image via stock web-gui. - Do sysupgrade to make installation complete. Back to stock: - OpenWrt rootfs partition use unused space after stock firmware. - Full revert is possible. - Login via ssh and run: ## ctera_c200-v2_back_to_factory start ## . /lib/functions.sh part=$(find_mtd_part "active_bank") active_bank=$(strings "$part" | grep bank) if [ "$active_bank" = "bank1" ]; then echo "bank2" > /tmp/change_bank else echo "bank1" > /tmp/change_bank fi mtd write /tmp/change_bank active_bank reboot ## ctera_c200-v2_back_to_factory end ## Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com> (put back-to-stock script into commit message, removed dup. SUBPAGESIZE var, added 01_leds for non-working dt-usb-port trigger) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mvebu: enable watchdog for Armada 37XXJosef Schlehofer2022-01-151-0/+1
| | | | | | | | | | | | | | This option includes support for watchdog timer on Marvell Armada 37xx SoCs. [1] It is useful e.g. for Turris MOX, Marvell ESPRESSObin Enable armada-37xx-watchdog driver as built in for mvebu cortex-a53, so that kernel can start serving as soon as the driver is probed, until userspace takes over it. [1] https://cateee.net/lkddb/web-lkddb/ARMADA_37XX_WATCHDOG.html Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com> (improved commit message, 2nd paragraph) Signed-off-by: Marek Behún <kabel@kernel.org>
* mvebu: cortexa53: Enable Armada 37xx rWTM driverMarek Behún2022-01-151-0/+4
| | | | | | | | | | | | | | | | | Enabling Armada 37xx rWTM driver. This gives the kernel access to random number generator, if provided by the rWTM firmware. Note that the driver is called turris-mox-rwtm because it was initially written for Turris MOX, but will also work on other Armada 37xx platforms, if they use rWTM firmware from CZ.NIC [1]. It makes sense to have this driver built-in, so that kernel has access to random number generator without needing to load any drivers. [1] https://gitlab.nic.cz/turris/mox-boot-builder Signed-off-by: Marek Behún <kabel@kernel.org> Reviewed-by: Andre Heider <a.heider@gmail.com>
* mvebu: kernel: enable CONFIG_BLK_DEV_NVMEJosef Schlehofer2022-01-151-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG_BLK_DEV_NVME [1]: - This is a kernel driver for SSD connected to PCI or PCIe bus [1]. By default, it is enabled for targets "ipq807x", "rockchip/armv8" and "x86/64". With miniPCIe adapter, there is a possibility to connect NVMe disk to Turris Omnia (cortex-a9), Turris MOX (cortex-a53). It allows to boot system from NVMe disk, because of that it can not be kmod package as you can not access the disk to be able to boot from it. CONFIG_NVME_CORE [2]: - This is selected by CONFIG_BLK_DEV_NVME It does not need to be explicitly enabled, but it is done for "ipq807", "x64_64" and rockchip/armv8", which has also enabled the previous config option as well. Kernel increase: ~28k KiB on mamba kernel Reference: [1] https://cateee.net/lkddb/web-lkddb/BLK_DEV_NVME.html [2] https://cateee.net/lkddb/web-lkddb/NVME_CORE.html Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* mvebu: puzzle: wan LED and fix default networkDaniel Golle2021-12-232-1/+21
| | | | | | | | | Fix default network configuration of the Puzzle-M902 so all LAN ports are included in the LAN bridge. Setup network LED to indicate WAN port link status, like vendor firmware does as well. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mvebu: enable Aquantia phy driver for Puzzle devicesDaniel Golle2021-12-233-15/+16
| | | | | | | Fixes Ethernet link status on all ports and makes 2.5G ports usable in 2.5G and 1G full-duplex mode. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mvebu: remove accidentally added fileDaniel Golle2021-12-211-11/+0
| | | | | | | Remove accidentally added file (which was a left-over of a by-now replaced driver) Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mvebu: puzzle-m901: add LEDs, fan and reset buttonDaniel Golle2021-12-211-0/+84
| | | | | | | Wire up MCU driver for LEDs, fan and temperature sensor, and add GPIO reset button just like on the M902 also on the Puzzle M901. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mvebu: puzzle-m902: add GPIO reset buttonDaniel Golle2021-12-211-0/+11
| | | | | | | Add reset button to device tree so it has the function expected from usual OpenWrt devices. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mvebu: puzzle-mcu: improve led driverDaniel Golle2021-12-211-51/+75
| | | | | | | | Set blinking mode using scheduled work instead of blocking which may result in deadlocks. Add dynamic kprintf debugging hexdumps of all MCU rx and tx. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mvebu: puzzle-m902: add driver for MCU driving LEDs, fan and buzzerDaniel Golle2021-12-2111-1/+2462
| | | | | | | | | | Backport MFD driver for communicating with the on-board MCU found on IEI World Puzzle appliances. Improve the driver to support multiple LEDs, apply a default state and let MCU take care of blinking if timing is within supported range. Wire up LEDs and fan for Puzzle M902 in device tree. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: 5.10: consolidate mac80211 crypto optionsSergey Ryazanov2021-12-172-8/+0
| | | | | | | | | | | | | | | | | | | | | | Each of - CRYPTO_AEAD2 - CRYPTO_AEAD - CRYPTO_GF128MUL - CRYPTO_GHASH - CRYPTO_HASH2 - CRYPTO_HASH - CRYPTO_MANAGER2 - CRYPTO_MANAGER - CRYPTO_NULL2 either directly required for mac80211 crypto support, or directly selected by such options. Support for the mac80211 crypto was enabled in the generic config since c7182123b9 ("kernel: make cryptoapi support needed by mac80211 built-in"). So move the above options from the target configs to the generic config to make it clear why do we need them. CC: Felix Fietkau <nbd@nbd.name> Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: filter out both Clang and LLD versionsSergey Ryazanov2021-12-171-1/+0
| | | | | | | | Both CLANG_VERSION and LLD_VERISON are autogenerated runtime configuration options, so add them to the kernel configuration filter and remove from generic and per-target configs to keep configs clean. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: bump 5.10 to 5.10.84John Audia2021-12-174-32/+12
| | | | | | | | | | All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B Run-tested: bcm2711/RPi4B Signed-off-by: John Audia <graysky@archlinux.us>
* mvebu: next backport mvnet MQPrio offloadKabuli Chana2021-12-034-0/+395
| | | | | | linux-next MQPrio patches adding TC traffic shaping offload Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
* mvebu: sysupgrade: drop unnecessary UBI to UBI logicBjørn Mork2021-12-031-18/+1
| | | | | | | | | | | | | | | | | | The recent changes to the maximum kernel size for Mamba and Venom highlighted the fact that the old Mamba kernel size has been hardcoded in linksys_get_root_magic() even for devices with a different kernel/rootfs split. The purpose of this code seems to be to avoid issues caused by partially overwriting an existing UBI partition, where some of the erase counters would be reset but not the unmodified ones. This problem has been solved in a more generic way by the UBI EOF marker. This ensures that any old PEBs after the marker are properly initialized. It is therefore unnecessary to erase the whole partition before flashing a new OpenWrt factory image. Signed-off-by: Bjørn Mork <bjorn@mork.no>
* kernel: bump 5.10 to 5.10.81John Audia2021-11-271-1/+1
| | | | | | | | | | | | | Manually rebased: octeontx/patches-5.10/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch All other patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, ipq806x/R7800 Run-tested: bcm2711/RPi4B, ipq806x/R7800 Signed-off-by: John Audia <graysky@archlinux.us>
* mvebu: backport mvneta basic MQPrio patchKabuli Chana2021-11-201-0/+109
| | | | | | | Implement a basic MQPrio support, inserting rules in RX that translate the TC to prio mapping into vlan prio to queues. Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
* kernel: bump 5.10 to 5.10.76Rui Salvaterra2021-10-301-1/+1
| | | | | | | | | | | | | | | | Deleted (upstreamed): bcm27xx/patches-5.10/950-0145-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch [1] Manually rebased: bcm27xx/patches-5.10/950-0355-xhci-quirks-add-link-TRB-quirk-for-VL805.patch bcm53xx/patches-5.10/180-usb-xhci-add-support-for-performing-fake-doorbell.patch Note: although automatically rebaseable, the last patch has been edited to avoid conflicting bit definitions. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.10.y&id=b6f32897af190d4716412e156ee0abcc16e4f1e5 Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* mvebu: mochabin: correct LED labels in DTSRobert Marko2021-10-091-9/+9
| | | | | | | | | | LED labels got reversed by accident, so fix it to the usual color:led_name format. Fixes: 78cf3e53b1f4 ("mvebu: add Globalscale MOCHAbin") Signed-off-by: Robert Marko <robert.marko@sartura.hr> [add Fixes:] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: Deactivate some ARM64 errata workaroundsHauke Mehrtens2021-10-032-8/+0
| | | | | | | | | | | This deactivates the following workarounds for erratas in ARM64 CPUS: CONFIG_ARM64_ERRATUM_1165522: Cortex-A76 cores (r0p0, r1p0, r2p0) CONFIG_ARM64_ERRATUM_1286807: Cortex-A76 cores (r0p0 to r3p0) CONFIG_ARM64_ERRATUM_1418040: Cortex-A76/Neoverse-N1 cores (r0p0 to r3p1) CONFIG_CAVIUM_TX2_ERRATUM_219: Cavium ThunderX2 CONFIG_FUJITSU_ERRATUM_010001: Fujitsu-A64FX Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mvebu: remove obsolete Kernel 5.4Paul Spooren2021-10-0273-8546/+0
| | | | | | | With the upgrade to Kernel 5.10 per default the old version is no longer required to be in tree. Signed-off-by: Paul Spooren <mail@aparcar.org>
* kernel: bump 5.4 to 5.4.150Hauke Mehrtens2021-10-029-27/+27
| | | | | | | | | | | | | | | | Manually rebased: generic/pending-5.4/800-bcma-get-SoC-device-struct-copy-its-DMA-params-to-th.patch mvebu/patches-5.4/021-arm64-dts-marvell-armada-37xx-Move-PCIe-comphy-handl.patch Removed upstreamed: layerscape/patches-5.4/819-uart-0004-MLK-18137-fsl_lpuart-Fix-loopback-mode.patch All others updated automatically. Compile-tested on: lantiq/xrx200, armvirt/64 Runtime-tested on: lantiq/xrx200, armvirt/64 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mvebu: add Globalscale MOCHAbinRobert Marko2021-10-025-0/+469
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Globalscale MOCHAbin is a Armada 7040 based development board. Specifications: * Armada 7040 Quad core ARMv8 Cortex A-72 @ 1.4GHz * 2 / 4 / 8 GB of DDR4 DRAM * 16 GB eMMC * 4MB SPI-NOR (Bootloader) * 1x M.2-2280 B-key socket (for SSD expansion, SATA3 only) * 1x M.2-2250 B-key socket (for modems, USB2.0 and I2C only) * 1x Mini-PCIe 3.0 (x1, USB2.0 and I2C) * 1x SATA 7+15 socket (SATA3) * 1x 16-pin (2×8) MikroBus Connector * 1x SIM card slot (Connected to the mini-PCIe and both M.2 slots) * 2x USB3.0 Type-A ports via SMSC USB5434B hub * Cortex 2x5 JTAG * microUSB port for UART (PL2303GL/PL2303SA onboard) * 1x 10G SFP+ * 1x 1G SFP (Connected to 88E1512 PHY) * 1x 1G RJ45 with PoE PD (Connected to 88E1512 PHY) * 4x 1G RJ45 ports via Topaz 88E6141 switch * RTC with battery holder (SoC provided, requires CR2032 battery) * 1x 12V DC IN * 1x Power switch * 1x 12V fan header (3-pin, power only) * 1x mini-PCIe LED header (2x0.1" pins) * 1x M.2-2280 LED header (2x0.1" pins) * 6x Bootstrap jumpers * 1x Power LED (Green) * 3x Tri-color RGB LEDs (Controllable) * 1x Microchip ATECC608B secure element Note that 1G SFP and 1G WAN cannot be used at the same time as they are in parallel connected to the same PHY. Installation: Copy dtb from build_dir to bin/ and run tftpserver there: $ cp ./build_dir/target-aarch64_cortex-a72_musl/linux-mvebu_cortexa72/image-armada-7040-mochabin.dtb bin/targets/mvebu/cortexa72/ $ in.tftpd -L -s bin/targets/mvebu/cortexa72/ Connect to the device UART via microUSB port and power on the device. Power on the device and hit any key to stop the autoboot. Set serverip (host IP) and ipaddr (any free IP address on the same subnet), e.g: $ setenv serverip 192.168.1.10 # Host $ setenv ipaddr 192.168.1.15 # Device Set the ethernet device (Example for the 1G WAN): $ setenv ethact mvpp2-2 Ping server to confirm network is working: $ ping $serverip Using mvpp2-2 device host 192.168.1.15 is alive Tftpboot the firmware: $ tftpboot $kernel_addr_r openwrt-mvebu-cortexa72-globalscale_mochabin-initramfs-kernel.bin $ tftpboot $fdt_addr_r image-armada-7040-mochabin.dtb Boot the image: $ booti $kernel_addr_r - $fdt_addr_r Once the initramfs is booted, transfer openwrt-mvebu-cortexa72-globalscale_mochabin-squashfs-sdcard.img.gz to /tmp dir on the device. Gunzip and dd the image: $ gunzip /tmp/openwrt-mvebu-cortexa72-globalscale_mochabin-squashfs-sdcard.img.gz $ dd if=/tmp/openwrt-mvebu-cortexa72-globalscale_mochabin-squashfs-sdcard.img of=/dev/mmcblk0 && sync Reboot the device. Hit any key to stop the autoboot. Reset U-boot env and set the bootcmd: $ env default -a $ setenv bootcmd 'load mmc 0 ${loadaddr} boot.scr && source ${loadaddr}' Optionally I would advise to edit the console env variable to remove earlycon as that causes the kernel to never use the driver for the serial console. Earlycon should be used only for debugging before the kernel can configure the console and will otherwise cause various issues with the console. $ setenv console 'console=ttyS0,115200' Save and reset $ saveenv $ reset OpenWrt should boot from eMMC now. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* mvebu: add support for iEi Puzzle-M901/Puzzle-M902Ian Chang2021-09-096-0/+868
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware specification ---------------------- * CN9130 SoC, Quad-core ARMv8 Cortex-72 @ 2200 MHz * 4 GB DDR * 4 GB eMMC * mmcblk0 - mmcblk0p1 64M kernel_1 - mmcblk0p2 64M kernel_2 - mmcblk0p3 512M rootfs_1 - mmcblk0p4 512M rootfs_2 - mmcblk0p5 512M Reserved - mmcblk0p6 64M Reserved - mmcblk0p7 1.8G rootfs_data * 4 MB (SPI Flash) * 6 x 2.5 Gigabit ports (Puzzle-M901) - External PHY with 6 ports (AQR112R) * 6 x 2.5 Gigabit ports (Puzzle-M902) - External PHY with 6 ports (AQR112R) 3 x 10 Gigabit ports (Puzzle-M902) - External PHY with 3 ports (AQR113R) * 4 x Front panel LED * 1 x USB 3.0 * Reset button on Rear panel * UART (115200 8N1,header on PCB) Flash instructions: The original firmware is based on OpenWrt. Flash firmware using LuCI and CLI Signed-off-by: Ian Chang <ianchang@ieiworld.com>
* mvebu: backport CN9130 dts necessary files changes to 5.4Ian Chang2021-09-0910-0/+2883
| | | | | | | | | 1. Add support for Marvell CN9130 SoC 2. Add support for CP115,and create an armada-cp11x.dtsi file which will be used to instantiate both CP110 and CP115 3. Add support for AP807/AP807-quad,AP807 is a major component of CN9130 SoC series 4. Drop PCIe I/O ranges from CP11x file and externalize PCIe macros from CP11x file Signed-off-by: Ian Chang <ianchang@ieiworld.com>
* mvebu: switch to kernel 5.10Rui Salvaterra2021-09-081-2/+1
| | | | | | | | | | It's been brewing on my cortexa9 subtarget (Turris Omnia) for months. Perfectly stable. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> Acked-by: Hauke Mehrtens <hauke@hauke-m.de> [modify subject to match previous updates] Signed-off-by: Paul Spooren <mail@aparcar.org>
* kernel: move two symbols to the generic kconfigsRui Salvaterra2021-08-292-4/+0
| | | | | | | CONFIG_RCU_{NEED_SEGCBLIST,STALL_COMMON} are set basically everywhere. Move them to the generic kconfigs. And resort the generic kconfigs while at it. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: bump 5.4 to 5.4.143John Audia2021-08-291-39/+0
| | | | | | | | | | | | | | | | | | Manually rebased: bcm27xx/patches-5.4/950-1031-net-lan78xx-Ack-pending-PHY-ints-when-resetting.patch Removed upstreamed: mvebu/patches-5.4/100-cpufreq-armada-37xx-forbid-cpufreq-for-1.2-GHz-variant.patch All other patches automatically rebased. 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: bump 5.10 to 5.10.61John Audia2021-08-291-39/+0
| | | | | | | | | | | | | | | | | | Manually rebased: bcm27xx/patches-5.10/950-1031-net-lan78xx-Ack-pending-PHY-ints-when-resetting.patch Removed upstreamed: mvebu/patches-5.10/101-cpufreq-armada-37xx-forbid-cpufreq-for-1.2-GHz-variant.patch All other patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B Run-tested: bcm2711/RPi4B No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
* base-files: rename 'sdcard' to 'legacy-sdcard'Daniel Golle2021-08-164-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While an image layout based on MBR and 'bootfs' partition may be easy to understand for users who are very used to the IBM PC and always have the option to access the SD card outside of the device (and hence don't really depend on other recovery methods or dual-boot), in my opinion it's a dead end for many desirable features on embedded systems, especially when managed remotely (and hence without an easy option to access the SD card using another device in case things go wrong, for example). Let me explain: * using a MSDOS/VFAT filesystem to store kernel(s) is problematic, as a single corruption of the bootfs can render the system into a state that it no longer boots at all. This makes dual-boot useless, or at least very tedious to setup with then 2 independent boot partitions to avoid the single point of failure on a "hot" block (the FAT index of the boot partition, written every time a file is changed in bootfs). And well: most targets even store the bootloader environment in a file in that very same FAT filesystem, hence it cannot be used to script a reliable dual-boot method (as loading the environment itself will already fail if the filesystem is corrupted). * loading the kernel uImage from bootfs and using rootfs inside an additional partition means the bootloader can only validate the kernel -- if rootfs is broken or corrupted, this can lead to a reboot loop, which is often a quite costly thing to happen in terms of hardware lifetime. * imitating MBR-boot behavior with a FAT-formatted bootfs partition (like IBM PC in the 80s and 90s) is just one of many choices on embedded targets. There are much better options with modern U-Boot (which is what we use and build from source for all targets booting off SD cards), see examples in mediatek/mt7622 and mediatek/mt7623. Hence rename the 'sdcard' feature to 'legacy-sdcard', and prefix functions with 'legacy_sdcard_' instead of 'sdcard_'. Tested-by: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: bump 5.4 to 5.4.140John Audia2021-08-143-3/+3
| | | | | | | | | | | | | | | | Removed upstreamed bcm27xx/patches-5.4: 950-0977-USB-gadget-f_hid-avoid-crashes-and-log-spam.patch 950-0980-SQUASH-USB-gadget-f_hid-remove-more-spam.patch All other patches automatically rebased. 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: bump 5.4 to 5.4.139John Audia2021-08-143-5/+5
| | | | | | | | | | | | All patches automatically rebased. 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>
* mvebu: armada-37xx: add patch to forbid cpufreq for 1.2 GHzJosef Schlehofer2021-08-081-0/+39
| | | | | | | | | | | This patch is backported from linux-arm-kernel [1] to improve situation, when it was reported that 1.2 GHz variant is unstable with DFS. It waits to be accepted upstream, however, it waits for Marvell people to respond. [1] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20210630225601.6372-1-kabel@kernel.org/ Fixes: 7b868fe04a89 ("Revert "mvebu: 5.4 fix DVFS caused random boot crashes"") Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* Revert "mvebu: 5.10 fix DVFS caused random boot crashes"Josef Schlehofer2021-08-081-107/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Based on the discussion on the mailing list [1], the patch which was reverted, it reverts only one patch without the subsequent ones. This leads to the SoC scaling issue not using a CPU parent clock, but it uses DDR clock. This is done for all variants, and it's wrong because commits (hacks) that were using the DDR clock are no longer in the mainline kernel. If someone has stability issues on 1.2 GHz, it should not affect all routers (1 GHz, 800 MHz) and it should be rather consulted with guys, who are trying to improve the situation in the kernel and not making the situation worse. There are two solutions in cases of instability: a) disable cpufreq b) underclock it up to 1 GHz This reverts commit 080a0b74e39d159eecf69c468debec42f28bf4d8. [1] https://lists.openwrt.org/pipermail/openwrt-devel/2021-June/035702.html Fixes: d37947681772 ("mvebu: armada-37xx: add patch to forbid cpufreq for 1.2 GHz") CC: Pali Rohár <pali@kernel.org> Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* mvebu: armada-37xx: add patch to forbid cpufreq for 1.2 GHzJosef Schlehofer2021-08-081-0/+39
| | | | | | | | | | This patch is backported from linux-arm-kernel [1] to improve situation, when it was reported that 1.2 GHz variant is unstable with DFS. It waits to be accepted upstream, however, it waits for Marvell people to respond. [1] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20210630225601.6372-1-kabel@kernel.org/ Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* Revert "mvebu: 5.4 fix DVFS caused random boot crashes"Josef Schlehofer2021-08-081-107/+0
| | | | | | | | | | | | | | | | | | | | | | | | Based on the discussion on the mailing list [1], the patch which was reverted, it reverts only one patch without the subsequent ones. This leads to the SoC scaling issue not using a CPU parent clock, but it uses DDR clock. This is done for all variants, and it's wrong because commits (hacks) that were using the DDR clock are no longer in the mainline kernel. If someone has stability issues on 1.2 GHz, it should not affect all routers (1 GHz, 800 MHz) and it should be rather consulted with guys, who are trying to improve the situation in the kernel and not making the situation worse. There are two solutions in cases of instability: a) disable cpufreq b) underclock it up to 1 GHz This reverts commit 080a0b74e39d159eecf69c468debec42f28bf4d8. [1] https://lists.openwrt.org/pipermail/openwrt-devel/2021-June/035702.html CC: Pali Rohár <pali@kernel.org> Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* mvebu: Turris Omnia: use SFP module, if presentKlaus Kudielka2021-08-081-1/+16
| | | | | | | | | | | | Follow the recommendations stated in the Turris Omnia DTS for eth2: "In case SFP module is present, U-Boot has to enable the sfp node above, remove phy-handle property, and add managed = "in-band-status" property." The boot script is written in a way, that it works for all U-Boot versions deployed by the vendor so far (2015.10-rc2, 2019.07). Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
* mvebu: backport Turris Omnia DTS changes to 5.4Klaus Kudielka2021-08-086-3/+249
| | | | | | | Kernel 5.4 receives a reduced set, just to make the SFP cage work. While we are at it, move the patches accepted upstream to the 0xx series. Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
* mvebu: backport Turris Omnia DTS changes to 5.10Klaus Kudielka2021-08-086-4/+410
| | | | | | | Kernel 5.10 receives the complete set of improvements from 5.11/5.12. While we are at it, move the patches accepted upstream to the 0xx series. Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
* kernel: bump 5.4 to 5.4.138John Audia2021-08-081-3/+3
| | | | | | | | | | | | All patches automatically rebased. 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>
* mvebu: switch to generic sdcard upgrade methodStijn Tintel2021-08-075-101/+10
| | | | | | | Now that we have a generic sdcard upgrade method, which was copied from the mvebu platform method, we can switch mvebu to the generic method. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: bump 5.4 to 5.4.135John Audia2021-07-313-3/+3
| | | | | | | | | | | | All patches automatically rebased. 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>
* mvebu: limit mvneta tx queue workaround to 32 bit SoCTomasz Maciej Nowak2021-07-252-4/+12
| | | | | | | | | | | | This patch has been carried since introduction throughout every kernel major bump and no one has tested if the later kernels improved the situation. The Armada 3720 SoC can only process GbE interrupts on Core 0 and this is already limited in all stable kernels, so ditch this workaround for 64 bit SoCs. Ref: https://git.kernel.org/torvalds/c/cf9bf871280d Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
* kernel: bump 5.4 to 5.4.133John Audia2021-07-257-19/+19
| | | | | | | | | | | | | | | Manually rebased: pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch All other patches automatically rebased. 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>
* mvebu: convert mtd-mac-address to nvmem implementationAnsuel Smith2021-07-191-3/+20
| | | | | | | Define nvmem-cells and convert mtd-mac-address to nvmem implementation. The conversion is done with an automated script. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* kernel: bump 5.4 to 5.4.128John Audia2021-06-266-60/+6
| | | | | | | | | | | | | | | Removed upstreamed: mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch All other patches automatically rebased. 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>
* mvebu: armada-37xx: remove ethernet alias patchTomasz Maciej Nowak2021-06-064-20/+0
| | | | | | | | | This patch has been added with initial support for ESPRESSObin board and mistakenly it affects all boards with this SoC. Drop this patch since the aliases are now in upstream dts for ESPRESSObin. If any boards are relying on this, please add the respective alias to that board dts. Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
* treewide: remove "+" sign for increment with macaddr_addAdrian Schmutzler2021-06-051-2/+2
| | | | | | | | | | | | Many people appear to use an unneeded "+" prefix for the increment when calculating a MAC address with macaddr_add. Since this is not required and used inconsistently [*], just remove it. [*] As a funny side-fact, copy-pasting has led to almost all hotplug.d files using the "+", while nearly all of the 02_network files are not using it. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>