aboutsummaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
* kernel: set WATCHDOG_CORE dependency in kmod-hwmon-sch5627Adrian Schmutzler2020-08-249-9/+0
| | | | | | | | | | | | | | | | | | For many target we have added CONFIG_WATCHDOG_CORE=y to the target config due to the following error: Package kmod-hwmon-sch5627 is missing dependencies for the following libraries: watchdog.ko However, actually the proper way appears to be setting the dependency for the kmod-hwmon-sch5627 package, as the error message demands. Do this in this patch and remove the target config entries added due to this issue. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: replace pci patchset with upstream versionAnsuel Smith2020-08-2430-580/+628
| | | | | | | | | | | | | | | | | | | | | Changes: - Update patches - Update dts with new binding Tx term offset dropped and replaced with a new compatible Removed: - 0071-5-PCI-qcom-Programming-the-PCIE-iATU-for-IPQ806x Pci init does the same exact thing (was needed in older kernel version) - 0071-7-pcie-Set-PCIE-MRRS-and-MPS-to-256B Rejected upstream, can't find any reason to have this. No regression with testing it on R7800. Tested on R7800 (ipq8065), R7500 v2 ("ipq8064-v2") Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Tested-by: Paul Blazejowski <paulb@blazebox.homeip.net> [R7800] [rebase and refresh] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: mt7621: use lzma-loader for ZBT-WG3526Rustam Gaptulin2020-08-241-0/+2
| | | | | | | | | | | | The wg3526 fails to boot if the kernel is large. Enabling lzma-loader resolves the issue on both the wg3526-16m and wg3526-32m. Fixes: FS#3143 Signed-off-by: Rustam Gaptulin <rascal6@gmail.com> [commit message facelift] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* build: SDK/IB reproducible and faster compressionPaul Spooren2020-08-232-2/+6
| | | | | | | | | | Both IB and SDK now use the same logic for packing. This commit add reproducible multithread compression to the SDK and corrects the file mtime for both. Previously all files where just copied over from the build system, generating random mtimes. Signed-off-by: Paul Spooren <mail@aparcar.org>
* ath79: fix/improve LED control for TL-WPA8630 v1/v2Joe Mullally2020-08-222-10/+11
| | | | | | | | | | | | | | | | | | | | | The TL-WPA8630 v1 and v2 have the same LED Control GPIO configuration according to the TP-Link GPL sources. Set the GPIO to output to make it work and set to Active Low. It defaults to LEDs on at bootup. To turn all LEDs off: echo 0 > /sys/class/gpio/tp-link\:led\:control/value To turn all LEDs on: echo 1 > /sys/class/gpio/tp-link\:led\:control/value Change the "LED" button from BTN_0 to KEY_LIGHTS_TOGGLE to match other devices and the button guide, and to reduce the number of unintuitive "BTN_X" inputs. Fixes: ab74def0db93 ("ath79: add support for TP-Link TL-WPA8630P v2") Signed-off-by: Joe Mullally <jwmullally@gmail.com> [shorten commit title, minor commit message adjustments] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: create shared DTSI for EA7500 v1 and EA8500Adrian Schmutzler2020-08-223-392/+226
| | | | | | | Most of the definitions for the two devices are shared, so put them in a shared DTSI. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: add patch that adds support for running threaded NAPI poll functionsFelix Fietkau2020-08-226-15/+1036
| | | | | | | This is helps on workloads with CPU intensive poll functions (e.g. 802.11) on multicore systems Signed-off-by: Felix Fietkau <nbd@nbd.name>
* uml: update to linux 5.4Felix Fietkau2020-08-226-155/+91
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: backport a fix for a regression that broke IRQ affinity on ARMFelix Fietkau2020-08-211-0/+129
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: remove legacy ethernet driver components for mt7621Adrian Schmutzler2020-08-218-1433/+6
| | | | | | | | | | | | | | | | The mt7621 subtarget has been switched to DSA quite a while ago and seems to run sufficiently fine. Build with older kernels than 5.4 has been disabled directly during the kernel bump, so our local ethernet driver is unused in master since then. Therefore, let's remove the mt7621-specific parts of "our" ethernet driver, so we don't have to maintain them and it's obvious to everybody that they are not used anymore. This also drops the offloading components as this was specifically implemented to depend on mt7621. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* pistachio: use generic diag.shAdrian Schmutzler2020-08-212-30/+27
| | | | | | | Remove local diag.sh in favor of generic one and add the required led-* aliases to DTS. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* pistachio: use vendor_model scheme for device/image nameAdrian Schmutzler2020-08-211-2/+2
| | | | | | | This uses the vendor_model scheme for the device/image name in order to make this consistent to most other targets. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* pistachio: Add kmod-ca8210 wpan-tools by defaultHauke Mehrtens2020-08-211-1/+1
| | | | | | A ca8210 chip is soldered onto the board, add the driver by default. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* pistachio: Add SC16IS7XX device driverHauke Mehrtens2020-08-211-0/+6
| | | | | | This device is used to control extra UARTs and LEDs on the board. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* pistachio: Add extra devices to dts fileHauke Mehrtens2020-08-215-35/+166
| | | | | | This adds some extra devices to the DTS file. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* pistachio: Add mtd device name from dtsHauke Mehrtens2020-08-211-0/+20
| | | | | | Parse the "linux,mtd-name" property also for SPI NAND flashes. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* pistachio: Fix Null pointer access in pwm-img.cHauke Mehrtens2020-08-211-0/+42
| | | | | | This fixes a crash when booting the board. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* pistachio: Make patches and configuration apply on to of 5.4Hauke Mehrtens2020-08-2118-1459/+89
| | | | | | | | | This refreshes the patches, removes patches already applied upstream and removes the SPI NAND framework to use the upstream version. In addition it also refreshes the kernel configuration. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* pistachio: Copy kernel 4.14 to 5.4Hauke Mehrtens2020-08-2117-0/+2435
| | | | | | | This only copies the patches and configuration without doing any modification to the files. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Add GigaDevice GD5F4GQ4xC SPI NAND flashHauke Mehrtens2020-08-213-0/+193
| | | | | | This flash was found on the Imagination Technologies Creator Ci40 (Marduk). Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath79: add support for TP-Link TL-WR710N v2.1Adrian Schmutzler2020-08-215-117/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the TP-Link TL-WR710N v2.1. It is basically a re-issue of the v1.2. Specifications: SoC: Atheros AR9331 CPU: 400 MHz Flash: 8 MiB RAM: 32 MiB WiFi: 2.4 GHz b/g/n Ethernet: 2x 100M ports USB: 1x 2.0 The only difference from the v1 is the TP-Link hardware ID/revision. Attention: The TL-WR710N v2.0 (!) has only 4 MB flash and cannot be flashed with this image. It has a different TPLINK_HWREV, so accidental flashing of the factory image should be impossible without additional measures. Unfortunately, the v2.0 in ar71xx has the same board name, so sysupgrade from ar71xx v2.0 into ath79 v1/v2.1 will not be prevented, but will brick the device. Flashing instruction: Upload the factory image via the OEM firmware GUI upgrade mechanism. Further notes: To make implementation easier if somebody desires to port the 4M v2.0, this already creates two DTSI files. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Tested-by: Fabian Eppig <fabian@eppig.de>
* lantiq: remove vmmc node from FritzBox 7412 dtsAleksander Jan Bajkowski2020-08-201-4/+0
| | | | | | | | | | | | As described in commit commit 891a7007598d ("lantiq: enable second VPE on Fritz!Box 7412"): The AVM Fritz!Box 7412 does not use the VMMC part of the Lantiq chip but rather a proprietary solution based on the DECT chip for the FXS ports. We can remove last traces of vmmc in dts. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* kernel: bump 5.4 to 5.4.59Adrian Schmutzler2020-08-2023-112/+51
| | | | | | | | | | | | | | | | | | | | | | Removed since added upstream: bcm27xx: 950-0428-staging-vchiq_arm-Add-a-matching-unregister-call.patch lantiq: 0800-spi-lantiq-ssc-Fix-warning-by-using-WQ_MEM_RECLAI.patch Manually adjusted patches: layerscape: 801-audio-0005-Revert-ASoC-fsl_sai-Add-support-for-SAI-new-version.patch Build-tested: ath79/generic, ramips, lantiq/xrx200, lantiq/xway, mvebu/cortexa9, sunxi/a53 Run-tested: ipq806x (R7800), layerscape (LS1012A-FRDM, LS1046A-RDB) Building on layerscape is only possible with workaround from PR #3179. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Tested-By: John Audia <graysky@archlinux.us> [ipq806x] Tested-by: Pawel Dembicki <paweldembicki@gmail.com> [layerscape]
* layerscape: remove useless pairs of kernel patchesAdrian Schmutzler2020-08-2047-44576/+24
| | | | | | | | | | | | | | The layerscape kernel patches appears to be just some uncleaned local development tree, where patches are sometimes directly followed by their revert. While this does not seem a problem in the first place, it becomes incredibly unpleasant when the upstream kernel changes in the relevant areas and requires rebase. This removes all these patch-revert pairs and refreshs the rest. It removes about 44000 lines of entirely useless code. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: use wpad-basic-wolfssl as defaultPetr Štetiar2020-08-2060-130/+130
| | | | | | | | | | | | | | | In order to support SAE/WPA3-Personal in default images. Replace almost all occurencies of wpad-basic and wpad-mini with wpad-basic-wolfssl for consistency. Keep out ar71xx from the list as it won't be in the next release and would only make backports harder. Build-tested (build-bot settings): ath79: generic, ramips: mt7620/mt76x8/rt305x, lantiq: xrx200/xway, sunxi: a53 Signed-off-by: Petr Štetiar <ynezz@true.cz> [rebase, extend commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm27xx: remove no-op patch pairAdrian Schmutzler2020-08-204-62/+6
| | | | | | | | | | | Patch 1 introduces a change, and patch 2 reverts it again. Remove both patches and achieve the same outcome. Refreshed patches for the target as well. Cc: Álvaro Fernández Rojas <noltari@gmail.com> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: bump 5.4 to 5.4.58John Audia2020-08-1864-584/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR is a blend of several kernel bumps authored by ldir taken from his staging tree w/ some further adjustments made by me and update_kernel.sh Summary: Deleted upstreamed patches: generic: 742-v5.5-net-sfp-add-support-for-module-quirks.patch 743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch bcm63xx: 022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch 024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch mediatek: 0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch Deleted patches applied differently upstream: generic: 641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch Manually merged patches: generic: 395-v5.8-net-sch_cake-Take-advantage-of-skb-hash-where-appropriate.patch bcm27xx: 950-0132-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch layerscape: 701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch Build system: x86_64 Build-tested: ath79/generic, bcm27xx/bcm2708, bcm27xx/bcm2711, imx6, mvebu/cortexa9, sunxi/a53 Run-tested: Netgear R7800 (ipq806x) No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> Tested-By: Lucian Cristian <Lucian.cristian@gmail.com> [mvebu] Tested-By: Curtis Deptuck <curtdept@me.com> [x86/64] [do not remove 395-v5.8-net-sch_cake-Take-advantage-... patch, adjust and refresh patches, adjust commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Tested-By: John Audia <graysky@archlinux.us> [ipq806x]
* ath79: mikrotik: erase firmware on SPI NOR before installThibaut VARÈNE2020-08-181-0/+3
| | | | | | | | | | | | | | On Mikrotik SPI NOR devices, the firmware partition must be erased when flashing from stock firmware, otherwise leftover bits (in particular a kernel signature) can trigger a boot loop. When booted from initramfs (the only way to install OpenWRT on these devices), this patch unconditionally erases the firmware partition in the do_upgrade() stage for all supported SPI NOR devices. This is forward-ported from ed49d0876 and 20452a8db Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* generic: platform/mikrotik: fix incorrect testThibaut VARÈNE2020-08-181-1/+1
| | | | | | The test is meant to check the result of the preceding kmalloc() Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* Revert "bcm53xx: remove useless echo in 02_network"Adrian Schmutzler2020-08-181-2/+3
| | | | | | | | | | | | This reverts commit b1f6a5d9dffd8da30800e9e66ea772554bbba778. In this particular case, the echo command was _not_ useless, but converted the newlines back to spaces. Add a comment into the code to make that obvious for the next one looking at it like me. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm53xx: remove useless echo in 02_networkAdrian Schmutzler2020-08-171-2/+2
| | | | | | | The output is already produced in the inner $() brackets, no need to catch and echo it again. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rockchip: remove useless echo in 40-net-smp-affinityAdrian Schmutzler2020-08-171-1/+1
| | | | | | The command in the $() brackets will already provide the same output. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* apm821xx: tidy up 10-fix-wifi-macAdrian Schmutzler2020-08-171-3/+3
| | | | | | | | | This applies some cosmetic style fixes: - remove useless echo - remove double equal sign (specific to bash) - add quotes for -n check Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix syntax error in ar7240_tplink_tl-wa.dtsiAdrian Schmutzler2020-08-171-1/+1
| | | | | | | | | The node needs to be terminated by a semicolon. Fixes: 8484a764df20 ("ath79: ar724x: make sure builtin-switch is enabled in DT") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: change WPS to Wifi button on TL-WPA8630P v2Adrian Schmutzler2020-08-173-19/+8
| | | | | | | | | | | | | | | | | | | Both TL-WPA8630(P) v1 and v2 feature a button labelled "WiFi". While this is implemented as KEY_RFKILL for v1 in ar71xx and ath79, the v2 sets it up as WPS button. According to the manual, the behavior in OEM firmware is: "Press and hold the button for 1 second to copy wireless settings from the main router to the extender. Go to Wi-Fi Clone for more information. Press and hold the button for at least 5 seconds to turn the wireless function on or off." Consequently, and since this is historic behavior on v1 in OpenWrt, we set this button to KEY_RFKILL on both revisions. Fixes: ab74def0db93 ("ath79: add support for TP-Link TL-WPA8630P v2") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: move further common nodes to the DTSI filesAdrian Schmutzler2020-08-1715-252/+53
| | | | | | | | | The moves a few additional common nodes to the common DTSI files for qcom-ipq8064-v2.0 and qcom-ipq8065 devices. Remove a few redundant definitions on the way. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: ar724x: make sure builtin-switch is enabled in DTAdrian Schmutzler2020-08-1713-22/+10
| | | | | | | | | | | | | | | | | | | On ar7240/ar7241 the mdioX node with the builtin-switch is enabled in the DTSI files, but the parent ethX node is left disabled. It only gets enabled per device or device family, and has not been enabled at all yet for the TP-Link WA devices with ar7240, making the switch unavailable there. This patch makes sure &eth0/&eth1 nodes are enabled together with the &mdio0/&mdio1 nodes containing the builtin-switch. For ar7240_tplink_tl-wa.dtsi, &eth0 is properly hidden again via compatible = "syscon", "simple-mfd"; This partially fixes FS#2887, however it seems dmesg still does not show cable (dis)connect in dmesg for ar7240 TP-Link WA devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: fix LED labels for Asus RT-AC65PAdrian Schmutzler2020-08-174-27/+59
| | | | | | | | | | | | | The leds block was copied over from the RT-AC85P DTS to the common DTSI while keeping the device-specific model name in the label. This moves the LEDs back to the DTS files and adjusts the names to properly resemble the model name of the devices used at, just like it is handled on most other devices. Fixes: 7c5f712e4fec ("ramips: add support for Asus RT-AC65P") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* at91: drop obsolete empty MakefilesAdrian Schmutzler2020-08-172-0/+0
| | | | | | | | | This files have been emptied during subtarget consolidation, but not removed. Remove them now. Fixes: aff084adf339 ("at91: Merge SAMA5 subtargets") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* octeon: add support for Itus Shield RouterDonald Hoskins2020-08-166-10/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Itus Networks Shield - 1Ghz dual-core mips64 / Cavium Octeon 3 SoC, 1Gb RAM, 4Gb eMMC,3 GbE 10/100/1000 ports Information regarding device can be found: https://deviwiki.com/wiki/Itus_Networks_Shield_Pro Installing OpenWrt on Itus Networks Shield: 1) Boot Shield 2) On device: mount /dev/mmcblk1p1 /mnt 3) scp openwrt-octeon-itus,shield-router-initramfs-kernel.bin to /mnt/ItusrouterImage 3a) Optionally: scp openwrt-octeon-itus,shield-router-initramfs-kernel.bin to /mnt/ItusgatewayImage to allow you to have an emergency recovery boot in the GATEWAY slot - this slot will have no permament storage and is used for emergency recovery only when booted in the (G)ateway position 4) On device: umount /mnt 5) reboot Once booted, run the sysupgrade via cli or luCi on the openwrt-octeon-itus,shield-router-squashfs-sysupgrade.tar file the mode you are running. Once rebooted, the system installation is complete. Your storage partition for the mode is inialized and set. Signed-off-by: Donald Hoskins <grommish@gmail.com> [cut out sysupgrade-* changes, move a few lines, drop case CVMX_BOARD_TYPE_ITUS_SHIELD] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* octeon: determine sysupgrade-* directory for upgrade automaticallyDonald Hoskins2020-08-161-5/+13
| | | | | | | | | | | | | | | | | | So far, the sysupgrade-* folder used during upgrade in octeon was hardcoded to contain the board name. Therefore, changing board name or BOARD_NAME variable in image/Makefile might have broken upgrade. Improve this by adding a step to determine the folder name via a wildcard, as it is done for generic nand_upgrade_tar() in lib/upgrade/nand.sh. While this still does not remove the problem for existing devices (which still have the old script), it will entirely remove the issue on newly added devices on this platform. Signed-off-by: Donald Hoskins <grommish@gmail.com> [split into separate patch, add commit message, add return values] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: reorganize board patchesAdrian Schmutzler2020-08-1669-245/+245
| | | | | | | | | | This renames board patches to make finding devices easier and reorders them based on their board. The devices are grouped based on the board/cpu_id. New device patches should be numbered based on their group. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for ALLNET ALL-WAP02860ACTomasz Maciej Nowak2020-08-154-4/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ALLNET ALL-WAP02860AC is a dual-band wireless access point. Specification SoC: Qualcomm Atheros QCA9558 RAM: 128 MB DDR2 Flash: 16 MB SPI NOR WIFI: 2.4 GHz 3T3R integrated 5 GHz 3T3R QCA9880 Mini PCIe card Ethernet: 1x 10/100/1000 Mbps AR8035-A, PoE capable (802.3at) LEDS: 5x, which four are GPIO controlled Buttons: 1x GPIO controlled UART: 4 pin header near Mini PCIe card, starting count from white triangle on PCB 1. VCC 3.3V, 2. GND, 3. TX, 4. RX baud: 115200, parity: none, flow control: none MAC addresses Calibration data does not contain valid MAC addresses. The calculated MAC addresses are chosen in accordance with OEM firmware. Because of: a) constrained environment (SNMP) when connecting through Telnet or SSH, b) hard-coded kernel and rootfs sizes, c) checksum verification of kerenel and rootfs images in bootloder, creating factory image accepted by OEM web interface is difficult, therefore, to install OpenWrt on this device UART connection is needed. The teardown is simple, unscrew four screws to disassemble the casing, plus two screws to separate mainboard from the casing. Before flashing, be sure to have a copy of factory firmware, in case You wish to revert to original firmware. Installation 1. Prepare TFTP server with OpenWrt initramfs-kernel image. 2. Connect to LAN port. 3. Connect to UART port. 4. Power on the device and when prompted to stop autoboot, hit any key. 5. Alter U-Boot environment with following commands: setenv failsafe_boot bootm 0x9f0a0000 saveenv 6. Adjust "ipaddr" and "serverip" addresses in U-Boot environment, use 'setenv' to do that, then run following commands: tftpboot 0x81000000 <openwrt_initramfs-kernel_image_name> bootm 0x81000000 7. Wait about 1 minute for OpenWrt to boot. 8. Transfer OpenWrt sysupgrade image to /tmp directory and flash it with: sysupgrade -n /tmp/<openwrt_sysupgrade_image_name> 9. After flashing, the access point will reboot to OpenWrt. Wait few minutes, until the Power LED stops blinking, then it's ready for configuration. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl> [add MAC address comment to commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: mips: fix init crash/bootloop on 64-bit systemsTony Ambardar2020-08-151-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The malta subtargets for mips64 and mips64el fail to start the init process at boot, resulting in a boot loop. The issue was raised and analyzed within FS#3277. Investigation suggested code near the [vdso] memory area of the process was long jumping into a region inaccessible to the process, e.g. init: - preinit - init: Launched preinit instance, pid=522 do_page_fault(): sending SIGSEGV to init for invalid read access from 0000000000000360 epc = 0000000000000360 in init[aaab42b000+4000] ra = 000000fffee385e0 in Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b Rebooting in 1 seconds.. Note the low-memory read access and epc are the same. Upstream kernel 5.6 included a relevant patch and discussion: * d3f703c4359f ("mips: vdso: fix 'jalr t9' crash in vdso code") Disassembly of the failing kernel's vdso.so confirmed presence of the telltale long jumps, e.g.: 00000000000007c0 <__vdso_clock_getres@@LINUX_2.6>: [...] 7dc: 0320f809 jalr t9 [...] Restore booting mips64/mips64el malta by backporting the above commit: * 310-v5.6-mips-vdso-fix-jalr-t9-crash-in-vdso-code.patch Fixes: 54310a3aa02f ("malta: add kernel 5.4 config") Fixes: FS#3277 Ref: https://bugs.openwrt.org/index.php?do=details&task_id=3277 Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* ath79: add support for TP-Link TL-WPA8630 v1Adrian Schmutzler2020-08-138-131/+226
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This ports the TP-Link TL-WPA8630 v1 from ar71xx to ath79. Specifications: SoC: QCA9563 CPU: 750 MHz Flash/RAM: 8 / 128 MiB Ethernet: 3x 1G ports (QCA8337 switch) WLAN: 2.4 GHz b/g/n, 5 GHz a/n/ac (ath10k) Buttons, LEDs and network setup appear to be almost identical to the v2 revision. Powerline interface is connected to switch port 5 (Label LAN4). Installation: No "fresh" device was available for testing the factory image. It is not known whether flashing via OEM firmware GUI is possible or not. A discussion from 2018 [1] about that indicates a few adjustments are necessary, but it is not clear whether those are already implemented with the TPLINK_HEADER_VERSION = 2 or not. Note that for the TL-WPA8630P v1, the TPLINK_HWID needs to be changed to 0x86310001 to allow factory flashing. [1] https://forum.openwrt.org/t/solved-tl-wpa8630p-lede-does-not-install/8161/27 Recovery: Recovery is only possible via serial. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mpc85xx: tidy up 10-fix-wifi-macAdrian Schmutzler2020-08-131-9/+5
| | | | | | | This applies some cosmetic style fixes, mostly by removing useless echo commands. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79/mikrotik: add function for loading ath9k caldataAdrian Schmutzler2020-08-131-8/+13
| | | | | | | | | | | | | The commands to read ath9k caldata on mikrotik subtarget are mostly repetitive, so let's put them into a function to make writing and reading them easier. This function will only be required when patching the MAC address. For cases where it is put correctly into the calibration data by the vendor, caldata_sysfsload_from_file can be used directly as done for ath10k at the moment. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add support for MikroTik RouterBOARD 760iGS (hEX S)John Thomson2020-08-138-70/+161
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the MikroTik RouterBOARD 760iGS router. It is similar to the already supported RouterBOARD 750Gr3. The 760iGS device features an added SFP cage, and passive PoE out on port 5 compared to the RB750Gr3. https://mikrotik.com/product/hex_s Specifications: - SoC: MediaTek MT7621A - CPU: 880MHz - Flash: 16 MB - RAM: 256 MB - Ethernet: 5x 10/100/1000 Mbps - SFP cage - USB port - microSD slot Unsupported: - Beeper (requires PWM driver) - ZT2046Q (ADS7846 compatible) on SPI as slave 1 (CS1) The linux driver requires an interrupt, and pendown GPIO These are unknown, and not needed with the touchscreen only used for temperature and voltage monitoring. ads7846 hwmon: temp0 is degrees Celsius temp1 is voltage * 32 GPIOs: - 07: input passive PoE out (lan5) compatible (Mikrotik) device connected - 17: output passive PoE out (lan5) switch Installation through RouterBoot follows the usual MikroTik method https://openwrt.org/toh/mikrotik/common To boot to intramfs image in RAM: 1. Setup TFTP server to serve intramfs image. 2. Plug Ethernet cable into WAN port. 3. Unplug power, hold reset button and plug power in. Wait (~25 seconds) for beep and then release reset button. The SFP LED will be lit in RouterBoot, but will not be lit in OpenWRT. 4. Wait for a minute. Router should be running OpenWrt, check by plugging in to port 2-5 and going to 192.168.1.1. To install OpenWrt to flash: 1. Follow steps above to boot intramfs image in RAM. 2. Flash the sysupgrade.bin image with web interface or sysupgrade. 3. Once the router reboots you will be running OpenWrt from flash. OEM firmware differences: - RouterOS assigns a different MAC address for each port - The first address (E01 on the sticker) is used for wan (ether1 in OEM). - The next address is used for lan2. - The last address (E06 on the sticker) is used for sfp. [Initial port work, shared dtsi] Signed-off-by: Vince Grassia <vincenzo.grassia@zionark.com> [SFP support and GPIO identification] Signed-off-by: Luka Logar <luka.logar@iname.com> [Misc. fixes and submission] Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au> [rebase, drop uart3 from state_default on 750gr3, minor commit title/message facelift] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips/mt7621: create common DTSI for Mikrotik devicesAdrian Schmutzler2020-08-134-214/+93
| | | | | | | | | This moves some common definitions for Mikrotik devices, mainly routerboot partitions and reset key, to a common DTSI file. While at it, remove unused hard_config DT label. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: use gpio-export for Mikrotik RouterBOARD 750Gr3 beeperJohn Thomson2020-08-132-6/+8
| | | | | | | | | | | | | This beeper hardware requires a PWM driver for frequency selection. Since the GPIO driver does not provide that, revert the beeper support to a simple gpio-export. This effectively reverts the corresponding changes from 6ba58b7b020c ("ramips: cleanup the RB750Gr3 support") Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au> [commit title/message facelift] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>