aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ath79: Add support for Ubiquiti NanoBeam AC Gen2Nick Hainke2020-11-187-1/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CPU: Atheros AR9342 rev 3 SoC RAM: 64 MB DDR2 Flash: 16 MB NOR SPI WLAN 2.4GHz: Atheros AR9342 v3 (ath9k) WLAN 5.0GHz: QCA988X Ports: 2x GbE Flashing procedure is identical to other ubnt devices. https://openwrt.org/toh/ubiquiti/common Flashing through factory firmware 1. Ensure firmware version v8.7.0 is installed. Up/downgrade to this exact version. 2. Patch fwupdate.real binary using `hexdump -Cv /bin/ubntbox | sed 's/14 40 fe 27/00 00 00 00/g' | \ hexdump -R > /tmp/fwupdate.real` 3. Make the patched fwupdate.real binary executable using `chmod +x /tmp/fwupdate.real` 4. Copy the squashfs factory image to /tmp on the device 5. Flash OpenWrt using `/tmp/fwupdate.real -m <squashfs-factory image>` 6. Wait for the device to reboot (copied from Ubiquiti NanoBeam AC and modified) To keep it consistent, we will add the gen1 variant to the nanobeam ac gen1. Signed-off-by: Nick Hainke <vincent@systemli.org>
* ath79: fix missing ";;" in 11-ath10k-caldataAdrian Schmutzler2020-11-161-0/+1
| | | | | | | | | This adds a missing ";;" in the switch-case in 11-ath10k-caldata. Fixes: 4d36569b9cab ("ath79: fix ath10k caldata extraction on some D-Link DIR-842 C3 devices") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix ath10k caldata extraction on some D-Link DIR-842 C3 devicesPaul Fertser2020-11-161-2/+7
| | | | | | | | | | | | | | | | | | | According to forum threads [0][1] and a report on IRC by Doc-Saintly some of those boards have calibration data in a different place. Only one alternative location is known. Without proper board calibration data (board.bin having all 0xff bytes) ath10k firmware still tries to load but crashes on startup with a confusing error message. If you're applying this patch manually on your device do not forget to remove /lib/firmware/ath10k/pre-cal-pci-0000:00:00.0.bin and reboot to force caldata re-extraction. [0] https://forum.openwrt.org/t/support-for-d-link-dir842-rev-c3/41654 [1] https://forum.openwrt.org/t/d-link-dir-842-cant-access-firmware-upload-form/65454 Signed-off-by: Paul Fertser <fercerpav@gmail.com>
* kernel: remove mvsw61xx swconfig driverDENG Qingfang2020-11-164-1410/+2
| | | | | | | All targets that used mvsw61xx have switched to upstream mv88e6xxx DSA driver, so it can be removed. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* mediatek: fix mixed indent in DTS filesAdrian Schmutzler2020-11-165-141/+143
| | | | | | | | | mediatek frequently had mixed indent (tabs vs. spaces) in DTS files and DTS file kernel patches (probably due to careless copy/paste). The harmonizes these cases to tabs-only, as usual for DTS(I). Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: remove default-state off for LEDsAdrian Schmutzler2020-11-169-23/+6
| | | | | | | | | default-state = "off" is default for LEDs, no need to specify it explicitly. https://www.kernel.org/doc/Documentation/devicetree/bindings/leds/common.yaml Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: LS421DE: improve the HDD ledsDaniel González Cabanelas2020-11-161-2/+2
| | | | | | | Improve the HDD LEDs used for disk activity: - Use the trigger activity per ata channel Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* ramips: mt7621: fix Telco X1 GPIO switchesDENG Qingfang2020-11-161-1/+1
| | | | | | | The GPIO base of MT7621 GPIO 0~31 is 480 on kernel 5.4 Fix the GPIO numbering. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* bcm27xx: add bit variant to redundant RaspberryPiPaul Spooren2020-11-151-2/+14
| | | | | | | | | | Both bcm2709 and bcm2710 firmware can run on the same RaspberryPi models, varying however in 32 and 64 Bit architectures. The model name alone does not include the architecture information, which becomes problematic if looking at a overview that only contains the names. By adding a variant it is possible to tell the architecture. Signed-off-by: Paul Spooren <mail@aparcar.org>
* ipq40xx: do not remove pci@40000000 for ap.dk04.1Adrian Schmutzler2020-11-131-6/+6
| | | | | | | | | | | | | | This pci@40000000 node from upstream was dropped when the device was converted from local DTS(I) files to kernel patches in [1] to ensure that change was purely cosmetic. However, the DK04.1 has a PCI-E slot by default, so let's keep (i.e. not remove) the kernel definition now. [1] c4beac9ea2e1 ("ipq40xx: use upstream DTS files for IPQ4019/AP-DK04.1") Suggested-by: Robert Marko <robert.marko@sartura.hr> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq40xx: 5.4: update and reorder patchesRobert Marko2020-11-1333-432/+423
| | | | | | | | | | | | | | A lot of patches are outdated versions of upstreamed patches and drivers. So lets pull in the upstreamed patches and reorder remaining ones. This drops the unnecessary 721-dts-ipq4019-add-ethernet-essedma-node.patch which adds nodes for not yet in OpenWrt IPQESS driver. Signed-off-by: Robert Marko <robert.marko@sartura.hr> [do not touch 902-dts-ipq4019-ap-dk04.1.patch here] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* build: filter out more autogenerated kernel config optionsFelix Fietkau2020-11-131-0/+7
| | | | | | | Define wildcard patterns for filtering in target/linux/generic/config-filter Preparation for supporting newer kernels Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: rename mtdpart_get_master to mtd_get_masterFelix Fietkau2020-11-132-4/+4
| | | | | | Preparation for supporting newer kernels Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: ip17xx: use pr_warn instead of pr_warningFelix Fietkau2020-11-131-3/+3
| | | | | | Fixes build with newer kernels Signed-off-by: Felix Fietkau <nbd@nbd.name>
* generic: platform/mikrotik: implement multi caldataThibaut VARÈNE2020-11-121-33/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MikroTik recently changed again the way they store wlan calibration data on devices. Prior to this change, ERD calibration data for all available radios was stored within a single identifier node ("tag" in RouterBoot parlance). Recent devices have been seen with calibration (and BDF) data stored in separate identifiers within LZOR packing for each radio: this patch addresses this by: 1) ensuring that both variants are properly supported, 2) preserving backward compatibility with existing data consumers, 3) allowing for more than 2 calibration blobs to be exposed via sysfs. Specifically, before this patch, the driver would provide a single sysfs file named /sys/firmware/mikrotik/hard_config/wlan_data that contained whatever calibration data found on the device's flash. After this patch, when executed on a device that uses the old style storage, this behavior is unchanged, but when executed on a device that uses new style storage (for either traditional "ERD" packing or "LZOR" packing), the driver replaces that single file with a folder containing one or more files each containing the data encoded within individual identifiers. As far as OpenWRT is concerned, this means that for devices which are known to exist with both styles of data storage, a suitable hotplug stub could look like this for e.g. the second radio: wdata="/sys/firmware/mikrotik/hard_config/wlan_data" ( [ -f "$wdata" ] && caldata_sysfsload_from_file "$wdata" 0x8000 0x2f20 ) || \ ( [ -d "$wdata" ] && caldata_sysfsload_from_file "$wdata/data_2" 0x0 0x2f20 ) This patch has been tested with LZOR old and new style packing on ipq4019, and with old style on ath79. Tested-by: John Thomson <git@johnthomson.fastmail.com.au> Tested-by: Шебанов Алексей <admin@ublaze.ru> Tested-by: Alen Opačić <subixonfire@gmail.com> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> Tested-by: Robert Marko <robimarko@gmail.com>
* x86: generic: disable CONFIG_EFI_VARS Alberto Bursi2020-11-121-1/+1
| | | | | | | | | | | | | | | | | | | CONFIG_EFI_VARS has been disabled in 64bit x86 target in 2018 by the following commit b0a51dab8c5b8d40828a00b0c6d66450bf90f217 the same reasons apply to Generic target, so now it's disabled here too. Leaving it enabled is also blocking compile as a new symbol was added EFI_CUSTOM_SSDT_OVERLAYS that depends from CONFIG_EFI_VARS and the build system stops and waits for user input on what to do about it. The Legacy and Geode targets never had any EFI_xxx configs enabled so they don't have this issue Signed-off-by: Alberto Bursi <bobafetthotmail@gmail.com>
* rtl838x: Add switch and ethernet driver support for RTL839x SoCsBirger Koblitz2020-11-1211-457/+1218
| | | | | | | | This adds support for RTL839x SoCs in the ethernet and switch drivers of the rtl838x architecture. Reviewed-by: Andreas Oberritter <obi@saftware.de> Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
* sunxi: add support for Libre Computer ALL-H3-CC H5Roman Kuzmitskii2020-11-121-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specification: - CPU: Allwinner H5, Quad-core Cortex-A53 Up to 1GHz - DDR3 RAM: 2GB - Network: 10/100M Ethernet x 1 - IR: x1 (Receive) - USB (Host) Type-A x3 - USB (OTG) Type-A x1 - MicroSD Slot x 1 - eMMC Slot x1 - MicroUSB power input - GPIO 40pin header - UART 3pin header - Leds: - librecomputer:blue:status - librecomputer:green:pwr - Buttons: - uboot button (used to enter fel mode) - power button (can trigger power on) - Power Supply via MicroUSB or GPIO 5V/2A Installation: - Write the image to SD Card with dd - Boot from the SD Card Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com> [Fixed Signed-off-by] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ramips: add Xiaomi Mi Router 4A Gigabit explicitlyAdrian Schmutzler2020-11-125-160/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This device has previously been supported by the image for Xiaomi Mi Router 3G v2. Since this is not obvious, the 4A is marketed as a new major revision and it also seems to have a different bootloader, this will be both more tidy and more helpful for the users. Apart from that, note that there also is a 100M version of the device that uses mt7628 platform, so a specifically named image will also prevent confusion in this area. Specifications: - SoC: MediaTek MT7621 - Flash: 16 MiB NOR SPI - RAM: 128 MiB DDR3 - Ethernet: 3x 10/100/1000 Mbps (switched, 2xLAN + WAN) - WIFI0: MT7603E 2.4GHz 802.11b/g/n - WIFI1: MT7612E 5GHz 802.11ac - Antennas: 4x external (2 per radio), non-detachable - LEDs: Programmable "power" LED (two-coloured, yellow/blue) Non-programmable "internet" LED (shows WAN activity) - Buttons: Reset Installation: Bootloader won't accept any serial input unless "boot_wait" u-boot environment variable is changed to "on". Vendor firmware won't accept any serial input until "uart_en" is set to "1". Using the https://github.com/acecilia/OpenWRTInvasion exploit you can gain access to shell to enable these options: To enable uart keyboard actions - 'nvram set uart_en=1' To make uboot delay boot work - 'nvram set boot_wait=on' Set boot delay to 5 - 'nvram set bootdelay=5' Then run 'nvram commit' to make the changes permanent. Once in the shell (following the OpenWRTInvasion instructions) you can then run the following to flash OpenWrt and then reboot: 'cd /tmp; curl https://downloads.openwrt.org/...-sysupgrade.bin --output firmware.bin; mtd -e OS1 -r write firmware.bin OS1' Suggested-by: David Bentham <db260179@gmail.com> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for Qxwlan E600G v2 / E600GAC v2张鹏2020-11-129-0/+332
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | E600G v2 based on Qualcomm/Atheros QCA9531 Specification: - 650/600/200 MHz (CPU/DDR/AHB) - 128/64 MB of RAM (DDR2) - 8/16 MB of FLASH (SPI NOR) - 2T2R 2.4 GHz - 2 x 10/100 Mbps Ethernet(RJ45) - 1 x MiniPCI-e - 1 x SIM (3G/4G) - 5 x LED , 1 x Button(SW2-Reset Buttun), 1 x power input - UART(J100) header on PCB(115200 8N1) E600GAC v2 based on Qualcomm/Atheros QCA9531 + QCA9887 Specification: - 650/600/200 MHz (CPU/DDR/AHB) - 128/64 MB of RAM (DDR2) - 8/16 MB of FLASH (SPI NOR) - 2T2R 2.4 GHz - 1T1R 5 GHz - 2 x 10/100 Mbps Ethernet(RJ45) - 6 x LED (one three-color led), 2 x Button(SW2-Reset Buttun),1 x power input - UART (J100)header on PCB(115200 8N1) Flash instruction: 1.Using tftp mode with UART connection and original OpenWrt image - Configure PC with static IP 192.168.1.10 and tftp server. - Rename "openwrt-ath79-generic-xxx-squashfs-sysupgrade.bin" to "firmware.bin" and place it in tftp server directory. - Connect PC with one of LAN ports, power up the router and press key "Enter" to access U-Boot CLI. - Use the following commands to update the device to OpenWrt: run lfw - After that the device will reboot and boot to OpenWrt. - Wait until all LEDs stops flashing and use the router. 2.Using httpd mode with Web UI connection and original OpenWrt image - Configure PC with static IP 192.168.1.xxx(2-255) and tftp server. - Connect PC with one of LAN ports,press the reset button, power up the router and keep button pressed for around 6-7 seconds, until leds flashing. - Open your browser and enter 192.168.1.1,You will see the upgrade interface, select "openwrt-ath79-generic-xxx-squashfs- sysupgrade.bin" and click the upgrade button. - After that the device will reboot and boot to OpenWrt. - Wait until all LEDs stops flashing and use the router. Signed-off-by: 张鹏 <sd20@qxwlan.com> [rearrange in generic.mk, fix one case in 04_led_migration, update commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* sunxi: fix board.d/01_leds permissions and drop includePiotr Jurkiewicz2020-11-121-1/+0
| | | | | | | | | | | The file lacks executable permissions, which makes it not being applied during the first boot. While at it, drop unneeded include. Signed-off-by: Piotr Jurkiewicz <piotr.jerzy.jurkiewicz@gmail.com> [do not touch board name handling, update commit message/title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add support for D-Link DIR-2640 A1James McGuire2020-11-114-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for D-Link DIR-2640 A1. Specifications: * Board: AP-MTKH7-0002 * SoC: MediaTek MT7621AT * RAM: 256 MB (DDR3) * Flash: 128 MB (NAND) * WiFi: MediaTek MT7615N (x2) * Switch: 1 WAN, 4 LAN (Gigabit) * Ports: 1 USB 2.0, 1 USB 3.0 * Buttons: Reset, WPS * LEDs: Power (blue/orange), Internet (blue/orange), WiFi 2.4G (blue), WiFi 5G (blue), USB 3.0 (blue), USB 2.0 (blue) Notes: * WiFi 2.4G and WiFi 5G LEDs are wired directly to the wireless chips Installation: * D-Link Recovery GUI: power down the router, press and hold the reset button, then re-plug it. Keep the reset button pressed until the power LED starts flashing orange, manually assign a static IP address under the 192.168.0.xxx subnet (e.g. 192.168.0.2) and go to http://192.168.0.1 * Some modern browsers may have problems flashing via the Recovery GUI, if that occurs consider uploading the firmware through cURL: curl -v -i -F "firmware=@file.bin" 192.168.0.1 MAC addresses: lan factory 0xe000 *:a7 (label) wan factory 0xe006 *:aa 2.4 factory 0xe000 +1 *:a8 5.0 factory 0xe000 +2 *:a9 Seems like vendor didn't replace the dummy entries in the calibration data. Signed-off-by: James McGuire <jamesm51@gmail.com> [fix device definition title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* x86: upgrade: make code comment appear as log linesYousong Zhou2020-11-111-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | The comment content can be useful for readers of both the log and code Previously when dd command "records in/out" messages are not filtered like now with get_image_dd, it's not clear that these messages are for extracting boot sectors. E.g. Before == upgrade: Reading partition table from bootdisk... 37+26 records in 37+26 records out == upgrade: Reading partition table from image... After == upgrade: Reading partition table from bootdisk... == upgrade: Extract boot sector from the image 37+26 records in 37+26 records out == upgrade: Reading partition table from image... Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* x86: upgrade: use get_image_ddYousong Zhou2020-11-111-5/+5
| | | | | | | Ref: https://bugs.openwrt.org/index.php?do=details&task_id=3140 Reported-by: Philip Prindeville <philipp@redfish-solutions.com> Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com> Reviewed-By: Philip Prindeville <philipp@redfish-solutions.com>
* x86: upgrade: use v function for writting logsYousong Zhou2020-11-111-8/+8
| | | | Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* kernel: bump 5.4 to 5.4.75John Audia2020-11-1043-139/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Manually rebased patches: bcm27xx: patches-5.4/950-0267-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch bcm53xx: patches-5.4/180-usb-xhci-add-support-for-performing-fake-doorbell.patch layerscape: patches-5.4/802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch patches-5.4/808-i2c-0002-MLK-10893-i2c-imx-add-irqf_no_suspend.patch patches-5.4/820-usb-0016-MLK-16735-usb-host-add-XHCI_CDNS_HOST-flag.patch Removed since could be reverse-applied by quilt: mediatek: patches-5.4/0700-arm-dts-mt7623-add-missing-pause-for-switchport.patch All modifications made by update_kernel.sh Build system: x86_64 Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711, x86_64 Run-tested: ipq806x/R7800, x86_64 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> Tested-by: Curtis Deptuck <curtdept@me.com> [x86_64] Rebase of 802-can-0025-can-flexcan-add-LPSR-mode-support-for-i.MX7D.patch Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* rtl838x: fine tune default package setPetr Štetiar2020-11-091-1/+2
| | | | | | | | | Althought most of the switches aren't routers, they can be used as such, so let's add some of the packages from the router's DEVICE_TYPE. While at it, remove swconfig package which is not needed on DSA targets. Acked-by: John Crispin <john@phrozen.org> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* rtl838x: dts: use macros for phy and switch definitionsPetr Štetiar2020-11-095-719/+170
| | | | | | | It's quite more readable, saves some tedious copy&pasting, not so error prone etc. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* rtl838x: rtl838x.dtsi: fix missing interrupt-parent for uart0Petr Štetiar2020-11-091-0/+2
| | | | | | | | Fixes following dtc warning: Warning (interrupts_property): /uart@b8002000: Missing interrupt-parent Signed-off-by: Petr Štetiar <ynezz@true.cz>
* rtl838x: rtl838x.dtsi: remove reg property from root nodePetr Štetiar2020-11-091-1/+0
| | | | | | | | Fixes following dtc warning: ../dts/rtl838x.dtsi:38.3-145.3: Warning (reg_format): /: Root node has a "reg" property Signed-off-by: Petr Štetiar <ynezz@true.cz>
* rtl838x: add support for D-Link DGS-1210-28Petr Štetiar2020-11-092-0/+344
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware specification ---------------------- * RTL8382M SoC, 1 MIPS 4KEc core @ 500MHz * 128MB DRAM * 32MB NOR Flash (MX25L25635E) * 24 x 10/100/1000BASE-T ports - Internal PHY with 8 ports (RTL8218B) - Two external PHYs with 8 ports each (RTL8218B) * 4 x Gigabit RJ45/SFP Combo ports - External PHY with 4 SFP ports (RTL8214FC) * Power LED * Reset button on front panel * UART (115200 8N1) via unpopulated standard 0.1" pin header marked J6 UART pinout ----------- [oooo]J3 [o]ooo|J6 | ^ ||`------ GND | | |`------- RX | | `-------- TX | `---------- Vcc (3V3) | `------------------ J3 is power input connector nearby J6 UART Boot initramfs image from U-Boot -------------------------------- 1. Press Escape key during `Hit Esc key to stop autoboot` prompt 2. Press CTRL+C keys to get into real U-Boot prompt 3. Init network with `rtk network on` command 4. Load image with `tftpboot 0x8f000000 openwrt-rtl838x-generic-d-link_dgs-1210-28-initramfs-kernel.bin` command 5. Boot the image with `bootm` command To install, upload the sysupgrade image to the OEM webpage or sysupgrade from the system running from initramfs image. It has been developed and tested on device with F1 revision. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* rtl838x: d-link_dgs-1210: refactor common family bitsPetr Štetiar2020-11-094-86/+97
| | | | | | | | So the common bits can be easily shared with other boards in the family and while at it add missing SPDX license identifiers into the DTS files and fixed alphabetic sorting of the devices in the images. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* rtl838x: clean whitespace issues in rtl8382_d-link_dgs-1210-16.dtsPetr Štetiar2020-11-091-4/+3
| | | | | | So it's tidy. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* octeon: add support for Ubiquiti EdgeRouter 4Roman Kuzmitskii2020-11-059-6/+647
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ubiquiti EdgeRouter 4 is 4 port Octeon Cavium 7130 powered router. It has internal power supply and needs c13 power cord. There are three 10/100/1000 Mbps RJ45/Copper ports and one 1000 Mbps SFP port connected directly to a SoC. SoC: Octeon Cavium 7130 (Cavium 3) Clocked at 1000Mhz Memory: 1 GiB (SK hynix H5TQ4G63CFR-RDC × 2) DDR3, clocked at 533 Mhz (1066Mhz effective) Flash: - mtd: 8 MiB (Macronix MX25L6408EMI-12G) used for uboot/eeprom - emmc: 4 GiB (SanDisk SDIN7DP2-4G) used for kernel+rootfs Leds: 1x for power status (white/blue, controllable) and 4x for ethernet and sfp ports (no control over them) Buttons: 1x Reset (from SOC) Serial: 1x RJ45 port on front panel. 115200 baud, 8N1 (from SoC) USB: 1x USB3.0 on front panel (from SoC) MII: 1x QSGMII from SoC is used PHY: 1x Vitesse VSC8504 of which 4x ports is used All physical port numbers are properly mapped inside OS and named by lanX instead of ethX. There is also special purpose four(4) loopX ports available. That loopX ports are currently hardcoded by linux kernel and exact use case of them is currently unknown. We leave them to the linux kernel and octeon board defaults. All four (4) physical ports are connected to the same QSGMII. vsc8504 is used for phys and only 4, 5, 6 and 7 phys are used. Phy mapping: - Phy5 is connected to physical eth0 port - Phy6 is connected to physical eth1 port - Phy7 is connected to physical eth2 port - Phy4 is connected to physical eth3 port Why this device needs external dts: - faster boot time since need to initialize less device tree nodes. - to add actual indication with LED about boot/failure/upgrade. i.e. user could know when to enter failsafe mode or if upgrade is done - reset button support so user can reset their device in case off failure - sfp port indication in dmesg with information about sfp module it also indicates when module inserted or removed Octeon quirks: - There is no port status available before it interface brought up - SFP port can not be tied to actual phy due to octeon-ethernet state and currently we can only get reports a about SFP state in dmesg How to flash the firmware: - copy openwrt-octeon-ubnt_edgerouter-4-initramfs-kernel.bin and openwrt-octeon-ubnt_edgerouter-4-squashfs-sysupgrade.tar to USB flash drive that is formatted to vfat/fat32 - connect USB flash drive to edgerouter 4 front USB port - connect serial cable using front RJ45 port (115200 baud, 8N1) - connect power to cable to edgerouter 4 - connect terminal to the console to see uboot boot process - interrupt boot by pressing button(s) on your keyboard to log in to the uboot - detect usb connected flash drives by typing to the console: usb start - after drive is detected load initramfs+kernel to the memory by typing: fatload usb 0:1 0x20000000 openwrt-octeon-ubnt_edgerouter-4-initramfs-kernel.bin - after initramfs+kernel is loaded to the memory load it by typing: bootoctlinux 0 numcores=4 endbootargs mem=0 - boot process should finish and you will be greeted with console after pressing enter - create directory to mount usb flash drive to by typing: mkdir /tmp/sda - mount flash drive to that directory by typing: mount /dev/sda1 /tmp/sda - flash firmware to router internal storage by typing: sysupgrade /tmp/sda/openwrt-octeon-ubnt_edgerouter-4-squashfs-sysupgrade.tar - device will reboot and after it gets up you will have edgerouter 4 running openwrt Reviewed-by: Johannes Kimmel <fff@bareminimum.eu> Tested-by: Johannes Kimmel <fff@bareminimum.eu> Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
* octeon: honor disabled sgmii device tree nodesRoman Kuzmitskii2020-11-051-0/+27
| | | | | | | | | | | | adds patch to octeon ethernet driver that lets sgmii interface device tree node to be disabled and that disabled interface won't be unnecessarily initialized. It solves the problem with octeon boards that have 8 sgmii or more ports initialized but have nothing connected to them. Tested-by: Johannes Kimmel <fff@bareminimum.eu> Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
* octeon: implement interface rename by label from device treeRoman Kuzmitskii2020-11-051-0/+38
| | | | | | | | adds patch to octeon ethernet driver that to rename interface name by label from device tree Tested-by: Johannes Kimmel <fff@bareminimum.eu> Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
* generic: add support for vsc8504 phyRoman Kuzmitskii2020-11-051-0/+57
| | | | | | | | | | adds support for vsc8504 phy. patch have use on 5.4 kernel and has to be dropped after since phy is supported by CONFIG_MICROSEMI_PHY on newer LTS kernels. Tested-by: Johannes Kimmel <fff@bareminimum.eu> Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
* ath79: streamline image-generation for OCEDO boardsDavid Bauer2020-11-051-6/+0
| | | | | | | | Use the default sysupgrade generation procedure provided by the target. The previously generated images had the rootfs not aligned to an eraseblock. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: remove unused config symbolsDavid Bauer2020-11-041-2/+0
| | | | | | | | Remove MDIO and I2C bitbangig support from the kernel. These functionalities are currently not used by any board in the target. Signed-off-by: David Bauer <mail@david-bauer.net>
* rockchip: fix NanoPi R2S GMAC clock nameDavid Bauer2020-11-041-0/+27
| | | | | | | | | | This commit fixes the name for the GMAC clock to gmac_clkin, as this is the name of the clock provided by the rk3328-clk driver. Without this commit, the GMAC will not work in TX direction. Suggested-by: Tobias Waldvogel <tobias.waldvogel@gmail.com> Signed-off-by: David Bauer <mail@david-bauer.net>
* ramips: fix kernel oops in `mt7621_nfc_write_page_hwecc`Anton Ryzhov2020-11-041-4/+6
| | | | | | | | | | `mt7621_nfc_write_page_hwecc` may be called with `buf=NULL`, but `mt7621_nfc_check_empty_page` always tries to read it. That caused Oops: `Unable to handle kernel paging request at virtual address 00000000` Fixes: FS#3416 Signed-off-by: Anton Ryzhov <anton@ryzhov.me>
* ath79: remove redundant setup of wmac for ubnt WA devicesAdrian Schmutzler2020-11-033-18/+0
| | | | | | | | | | | Several Ubiquiti WA devices set up &wmac again in their DTS files, although this is already done in ar9342_ubnt_wa.dtsi. Fixes: fa3c2676ab0c ("ath79: Add support for Ubiquiti Nanostation AC") Fixes: cf5a1abe46fc ("ath79: define 2.4GHz radio for nanostation ac loco") Fixes: 09804da80a99 ("ath79: define 2.4GHz radio for litebeam ac gen2") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: create DTSI files for ubnt WA 1-/2-port devicesNick Hainke2020-11-038-176/+76
| | | | | | | | | | The ar9342 Ubiquiti WA devices appear to only have two different network setups, based on the number of ethernet ports. Create DTSI files for them to consolidate duplicate definitions. Signed-off-by: Nick Hainke <vincent@systemli.org> [rephrase commit message/title] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix nanobeam ac ethernet interfaceNick Hainke2020-11-031-3/+2
| | | | | | | | | | | | | | | | | | | | | | In 4.14 the delays were not cleared, so setting "rgmii" as phy-mode did not affect delays set by the bootloader. With 5.4 kernel the situation changed and the ethernet interface stopped working. "rgmii" requires rx and tx delays depending on the hardware circuit and wiring. The mac or the phy can add these delays. - "rgmii": delays are controlled by the mac - "rgmii-id": delays are controlled by the phy More Information in Linux Kernel Tree: Documentation/devicetree/bindings/net/ethernet-controller.yaml "rgmii" should be the preferred mode, which allows the mac layer to turn off the dealys completely if they are not needed. However, the delays are not set correctly, which causes the ethernet interface to be broken. Just taking the ethernetpart from the litebeam ac gen2 will fix the issue. Explained-by: David Bauer <mail@david-bauer.net> Signed-off-by: Nick Hainke <vincent@systemli.org>
* rtl838x: remove the swconfig setup from the board.d codeJohn Crispin2020-11-031-49/+3
| | | | | | the code currently sets up uci for swconfig which we do not use. Signed-off-by: John Crispin <john@phrozen.org>
* kernel: add disabled CONFIG_IP6_NF_TARGET_MASQUERADEAdrian Schmutzler2020-11-021-0/+1
| | | | | | | | | | | | | | | | | | | In kernel commit adf82accc5f5 ("netfilter: x_tables: merge ip and ipv6 masquerade modules") the config symbols IP_NF_TARGET_MASQUERADE and IP6_NF_TARGET_MASQUERADE have been demoted to simple backwards- compat options for NETFILTER_XT_TARGET_MASQUERADE. In netfilter.mk, this has already been updated in OpenWrt commit d1592306cc07 ("netfilter.mk: use CONFIG_NETFILTER_XT_TARGET_MASQUERADE"), having us use the new config symbol. However, enabling IP_NF_NAT or IP6_NF_NAT still makes the relevant legacy options selectable, so we need to disable them in generic config (and forget about them afterwards). Since CONFIG_IP_NF_TARGET_MASQUERADE is already present there, this just adds the missing CONFIG_IP6_NF_TARGET_MASQUERADE. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: drop obsolete symbol CONFIG_NF_NAT_IPV6Adrian Schmutzler2020-11-021-1/+0
| | | | | | | | | | | Kernel has removed the symbols CONFIG_NF_NAT_IPV4 and CONFIG_NF_NAT_IPV6 in favor of CONFIG_NF_NAT in commit 3bf195ae6037 ("netfilter: nat: merge nf_nat_ipv4,6 into nat core"). This drops the obsolete symbol CONFIG_NF_NAT_IPV6 from generic config-5.4. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: ubnt-unifi: make u-boot-env partition read-onlyLech Perczak2020-11-021-0/+1
| | | | | | | | | This partition isn't normally modified during boot process. Make it read-only to prevent accidental overwrite. If needed this can be overriden with installing kmod-mtd-rw; the same way as for installing modified U-boot. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ath79: ubnt-xm: make u-boot-env partition read-onlyLech Perczak2020-11-021-0/+1
| | | | | | | | | This partition isn't normally modified during boot process. Make it read-only to prevent accidental overwrite. If needed this can be overriden with installing kmod-mtd-rw; the same way as for installing modified U-boot. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* kernel: bump 5.4 to 5.4.74John Audia2020-11-0210-124/+18
| | | | | | | | | | | | | | | | | | | Removed upstreamed patches: mvebu/patches-5.4 409-phy-marvell-comphy-Convert-internal-SMCC-firmware-re.patch All modifications made by update_kernel.sh Build system: x86_64 Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711, x86_64 Run-tested: ipq806x/R7800, x86_64, lantiq/Easybox 904 xDSL No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> Tested-by: Curtis Deptuck <curtdept@me.com> [x86_64 build/run] [added lantiq test report] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>