aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* rpcd: update to the latest masterRafał Miłecki2020-09-181-3/+3
| | | | | | 3fea655 rc: support init.d scripts with START=0 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* uhttpd: update to the latest masterRafał Miłecki2020-09-181-3/+3
| | | | | | 47c34bd ubus: add ACL support for "subscribe" request Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ath79/mikrotik: fix soft_config location for SXT 5nRoger Pueyo Centelles2020-09-171-4/+4
| | | | | | | | | | | | | The soft_config partition for these devices lays between 0xe000 and 0xf000 (as correctly detected by the RouterBoard platform driver), before the bootloader2 partition which starts at 0x10000. This commit correctly sorts the partitions, fixing the parsing error. Fixes: FS#3314 Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net> Reviewed-by: Thibaut VARÈNE <hacks@slashdirt.org>
* lantiq: use uniform "u-boot-env" mtd labelMartin Schiller2020-09-1781-85/+85
| | | | | | | | | | | This is the most popular choice in the linux kernel tree. Within OpenWrt, this change will establish consistency with ath79 and ramips targets. Signed-off-by: Martin Schiller <ms@dev.tdt.de> [extend commit message, include netgear_dm200, update base-files] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: image: add check for fdt_add_r and kernel_addr_r variablesVladimir Vid2020-09-171-0/+8
| | | | | | | | | | | fdt_addr and kernel_addr variables are getting obsolete in the mainline u-boot in favor of fdt_addr_r and kernel_addr_r. By checking if the new variables exist, we can make sure that devices with newer version of u-boot will work while not breaking support for the existing ones. Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr> Acked-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* mediatek: fix hardware flow offloadFelix Fietkau2020-09-172-1/+95
| | | | | | Add support for dealing with DSA ports Signed-off-by: Felix Fietkau <nbd@nbd.name>
* usbutils: update USB IDs to the latest versionDavid Bauer2020-09-171-3/+3
| | | | | | Update from 0.321 to 0.339 Signed-off-by: David Bauer <mail@david-bauer.net>
* libjson-c: update to 0.15David Bauer2020-09-174-184/+22
| | | | | | | | | | | | Drop patches as they've been upstreamed: * 001-Fix-CVE-2020-12762.patch Refresh patches: * 000-libm.patch Add patch to avoid build failure due to missing docs in tarball. Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq40xx: enable FRITZRepeater 3000 ports on switchDavid Bauer2020-09-172-3/+11
| | | | | | | | | | | | The ethernet ports on the AVM FRITZRepeater 3000 are not separated between LAN and WAN in the stock firmware. OpenWrt currently abstracts port 4 as eth0 and port 5 as eth1, bridging them in the kernel. This patch adjusts the GMAC port bitmasks and default bitmask for ar40xx to bridge them on the switch, avoiding traffic on both ports to pass thru the CPU. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add support for Ubiquiti UniFi AP ProDavid Bauer2020-09-174-0/+188
| | | | | | | | | | | | | | | | | | | | | | | This adds support for the Ubiquiti UniFi AP Pro to the ath79 target. The device was previously supported on the now removed ar71xx target. SoC Atheros AR9344 WiFi Atheros AR9344 & Atheros AR9280 ETH Atheros AR8327 RAM 128M DDR2 FLASH 16M SPI-NOR Installation ------------ Follow the Ubiquiti TFTP recovery procedure for this device. 1. Hold down the reset button while connecting power for 10 seconds. 2. Transfer the factory image via TFTP to the AP (192.168.1.20) 3. Wait 2 minutes for the AP to write the firmware to flash. The device will automatically reboot to OpenWrt. Signed-off-by: David Bauer <mail@david-bauer.net>
* mac80211: do not allow bigger VHT MPDUs than the hardware supportsFelix Fietkau2020-09-171-0/+34
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ipq806x: sort entries in lib/upgrade/platform.shAdrian Schmutzler2020-09-171-3/+3
| | | | | | Apply alphabetic sorting like in the other files. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: remove empty default casesAdrian Schmutzler2020-09-179-18/+1
| | | | | | There is no apparent reason to have an empty default case. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: sort entries in 02_networkAdrian Schmutzler2020-09-171-5/+5
| | | | | | Apply alphabetic sorting like in the other files. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* zram-swap: default to lzo instead of lzo-rle compressionRui Salvaterra2020-09-171-2/+3
| | | | | | | | | | | | | | | | | | | On devices with small amounts of RAM, zram-swap fails to initialise due to the default compression algorithm (lzo-rle). Startup example on an AirGrid M2, with 32 MiB of RAM: root@airgrid:/etc/config# /etc/init.d/zram start zram_start: activating '/dev/zram0' for swapping (13 MegaBytes) zram_reset: enforcing defaults via /sys/block/zram0/reset sh: write error: Out of memory mkswap: image is too small swapon: /dev/zram0: Invalid argument root@airgrid:/etc/config# Fix this by defaulting to traditional lzo, which works fine and is always available. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* ipq40xx: add Edgecore OAP-100 supportJohn Crispin2020-09-1710-1/+529
| | | | | | | | | | | | | | | | flashing the unit * first update to latest edcore FW as per the PDF instructions * boot the initramfs - tftpboot 0x88000000 openwrt-ipq40xx-generic-edgecore_oap100-initramfs-fit-uImage.itb; bootm * inside the initramfs call the following commiands - ubiattach -p /dev/mtd0 - ubirmvol /dev/ubi0 -n0 - ubirmvol /dev/ubi0 -n1 - ubirmvol /dev/ubi0 -n2 * scp the sysupgrade image to the board and call - sysupgrade -n openwrt-ipq40xx-generic-edgecore_oap100-squashfs-nand-sysupgrade.bin Signed-off-by: John Crispin <john@phrozen.org>
* ipq40xx: add Edgecore ECW5211 supportRobert Marko2020-09-1710-3/+351
| | | | | | | | | | | | | | | | | This patch adds support for the Edgecore ECW5211 indoor AP. Specification: - SoC: Qualcomm Atheros IPQ4018 ARMv7-A 4x Cortex A-7 - RAM: 256MB DDR3 - NOR Flash: 16MB SPI NOR - NAND Flash: 128MB MX35LFxGE4AB SPI-NAND - Ethernet: 2 x 1G via Q8075 PHY connected to ethernet adapter via PSGMII (802.3af POE IN on eth0) - USB: 1 x USB 3.0 SuperSpeed - WLAN: Built-in IPQ4018 (2x2 802.11bng, 2x2 802.11 acn) - CC2540 BLE connected to USB 2.0 port - Atmel AT97SC3205T I2C TPM Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ipq806x: add Edgecore ECW5410 supportRobert Marko2020-09-1711-1/+452
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the Edgecore ECW5410 indoor AP. Specification: - SoC: Qualcomm Atheros IPQ8068 ARMv7 2x Cortex A-15 - RAM: 256MB(225 usable) DDR3 - NOR Flash: 16MB SPI NOR - NAND Flash: 128MB S34MS01G2 Parallel NAND - Ethernet: 2 x 1G via 2x AR8033 PHY-s connected directly to GMAC2 and GMAC3 via SGMII (802.3af POE IN on eth0) - USB: 1 x USB 3.0 SuperSpeed - WLAN: 2x QCA9994 AC Wawe 2 (1x 2GHz bgn, 1x 5GHz acn) - CC2540 BLE - UART console on RJ45 next to ethernet ports exposed. Its Cisco pin compatible, 115200 8n1 baud. Installation instructions: Through stock firmware or initramfs. 1.Connect to console 2. Login with root account, if password is unknown then interrupt the boot with f and reset it in failsafe. 3. Transfer factory image 4. Flash the image with ubiformat /dev/mtd1 -y -f <your factory image path> This will replace the rootfs2 with OpenWrt, if you are currently running from rootfs2 then simply change /dev/mtd1 to /dev/mtd0 Note Initramfs: 1. Connect to console 2. Transfer the image from TFTP server with tftpboot, or by using DHCP advertised image with dhcp command. 3. bootm 4. Run ubiformat /dev/mtd1 You need to interrupt the bootloader after rebooting and run: run altbootcmd This will switch your active rootfs partition to one you wrote to and boot from it. So if rootfs1 is active, then it will change it to rootfs2. This will format the rootfs2 partition, if your active partition is 2 then simply change /dev/mtd1 with /dev/mtd0 If you dont format the partition you will be writing too, then sysupgrade will find existing UBI rootfs and kernel volumes and update those. This will result in wrong ordering and OpenWrt will panic on boot. 5. Transfer sysupgrade image 6. Flash with sysupgrade -n. Note that sysupgrade will write the image to rootfs partition that is not currently in use. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ipq806x: import bootargs-append from IPQ40xxRobert Marko2020-09-171-0/+14
| | | | | | | | | | | | | This imports the patch that adds bootargs-append support from IPQ40xx. This way we can append additional boot arguments from DTS instead of only being able to overwrite them. This way dual firmware devices can use the rootfs number that bootloader passes to decide from what to boot. But we still need to append console info and ubi root info. This is used by Edgecore ECW5410. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ipq806x: add GSBI1 node to DTSIRobert Marko2020-09-171-0/+46
| | | | | | | | IPQ806x series also has a GSBI1 with UART and I2C peripherals, so lets add the node for it. Its needed for Edgecore ECW5410 which uses the UART from GSBI1 as second UART for Bluetooth. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ipq806x: 5.4: enable AT803X driverRobert Marko2020-09-171-0/+1
| | | | | | | Its needed for Edgecore ECW5410 which does not use QCA8337 switch, but rather 2x AR8033 PHY-s directly connected to GMAC-s. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* firmware: ipq-wifi: enable use on IPQ806xRobert Marko2020-09-171-1/+1
| | | | | | | | | This enables the ipq-wifi package to be used on IPQ806x target. Its needed for boards using a different BDF than one shipped in the upstream board-2.bin. Currently needed for Edgecore ECW5410. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* lantiq: remove trailing whitespaces in dtsAleksander Jan Bajkowski2020-09-173-10/+10
| | | | | | Remove trailing whitespaces in dts files. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limitedFelix Fietkau2020-09-161-0/+26
| | | | | | Improves tx throughput when connecting to some APs (e.g. Asus RT-AC88U) Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath79: fix button types for WZR-HP-AG300H and WZR-600DHPAdrian Schmutzler2020-09-161-0/+3
| | | | | | | | | | Router and Movie "keys" are actually switches for both devices according to the manual. This has been properly implemented in ar71xx, but overlooked when porting to ath79. Fixes: 480bf2827392 ("ath79: add support for Buffalo WZR-HP-AG300H") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for Buffalo WZR-600DHPAdrian Schmutzler2020-09-166-267/+294
| | | | | | | | | | | | | | | | | | | | | The hardware of this device seems to be identical to WZR-HP-AG300H. It was already implemented as a clone in ar71xx. Specification: - 680 MHz CPU (Qualcomm Atheros AR7161) - 128 MiB RAM - 32 MiB Flash - WiFi 5 GHz a/n - WiFi 2.4 GHz b/g/n - 5x 1000Base-T Ethernet - 1x USB 2.0 Installation of OpenWRT from vendor firmware: - Connect to the Web-interface at http://192.168.11.1 - Go to “Administration” → “Firmware Upgrade” - Upload the OpenWrt factory image Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: use common device definition for Buffalo devicesAdrian Schmutzler2020-09-163-36/+27
| | | | | | | | | | The Buffalo devices in ath79 share their image generation code, so let's create a shared Device definition for them. Since most of them use BUFFALO_HWVER := 3, this is moved as default to the shared definition as well. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: consistently use "info" label for default-mac partitionAdrian Schmutzler2020-09-1619-56/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The tp-link safeloader devices typically contain a partition "default-mac" which stores the MAC addresses. It is followed by other partitions containing device info, like {"default-mac", 0x610000, 0x00020}, {"pin", 0x610100, 0x00020}, {"product-info", 0x611100, 0x01000}, In DTS, we typically assign a 0x10000 sized partition for these, which is mostly labelled "mac" or "info". In rarer cases, the partitions have been enclosed in a larger "tplink" or "config" partition. However, when comparing different devices, the implementation appears relatively arbitrary at the moment. Thus, this PR aims at harmonizing these partitions by always using the name "info" for the DTS partition containing "default-mac". "info" is preferred over "mac" as we never just have "default-mac" alone, but always some other device-info partitions as well. While at it, this also establishes a similar partitioning for the few devices where the "info" partitions are part of a bigger unspecific "config" partition or similar. Besides the harmonization itself, this also allows to merge a few cases in 11-ath10k-caldata. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* base-files: drop default setup for vconfigAdrian Schmutzler2020-09-162-2/+1
| | | | | | | | | | | | | | | | | vconfig has been disabled by default since 2015 [1] and there are no remaining uses in entire OpenWrt trunk. However, we still set up a specific name_type for it during boot. While this setup is properly implemented to be only triggered when vconfig is present, it still seems anachronistic and unnecessary to set up a standard for a tool that is not used anymore. Therefore, this removes the set_name_type initialization and leaves it for those people actually using the tool to configure it as needed. [1] 899a23227e55 ("busybox: improve applets & deprecate ifconfig, route") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rtl838x: fix incorrect assignment from kstrtoul in serial.cAdrian Schmutzler2020-09-161-1/+1
| | | | | | | | Assign return value of kstrtoul to error variable instead of conversion value. Suggested-by: Birger Koblitz <git@birger-koblitz.de> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rtl838x: refresh configAdrian Schmutzler2020-09-161-11/+15
| | | | | | Use "make kernel_oldconfig" to update and sort target config. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* rtl838x: remove some debug output in rtl838x-nor.cAdrian Schmutzler2020-09-161-4/+0
| | | | | | Seems like leftovers from development, remove them. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* uhttpd: update to the latest masterRafał Miłecki2020-09-151-3/+3
| | | | | | | | 1172357 ubus: add new RESTful API fe1888f ubus: fix blob_buf initialization Fixes: 3d167ed805a9 ("uhttpd: update to the latest master") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* rtl838x: remove and add some empty linesAdrian Schmutzler2020-09-155-1/+4
| | | | | | | Do some minor empty lines cleanup, i.e. remove those at EOF and add some for cosmetic reasons/consistency. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* Revert "build: create tmp/userids file"Jo-Philipp Wich2020-09-141-1/+0
| | | | | | | | | | This reverts commit 34cc2c9a99f6542f009aa660790061f169aa96b3. The reverted shell code is a very poor reimplementation of the existing package-metadata.pl usergroup subcommand and the resulting file is not used anymore, so drop this code. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* scripts: ipkg-build: simplify uid/gid resolvingJo-Philipp Wich2020-09-141-36/+29
| | | | | | | | | | | Use the prepared .packageusergroup file to lookup user and group names when processing the passed file mode. Also replace the various subshell/cut invocations with a sequence of standard variable interpolations which fixes paths with embedded colons as a side-effect. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: dump effective user/group id mapping to fileJo-Philipp Wich2020-09-141-0/+1
| | | | | | | This file can be subsequently used to resolve symbolic user or group names to their numeric IDs when packing ipk archives. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: add user/group ID resolve functionPaul Spooren2020-09-141-2/+40
| | | | | | | | With the introduction of `./tmp/userids` the `ipkg-build` script can now resolve values of "PKG_FILE_MODES", allowing users to set names rather than numeric values. Signed-off-by: Paul Spooren <mail@aparcar.org>
* build: create tmp/userids filePaul Spooren2020-09-141-0/+1
| | | | | | | | | | | | | | | | | | | Multiple packages contain a USERID variable defining required user and group for the package to run. With the recent addition of "PKG_FILE_MODES" it is possible to define user and group of specific files, replacing (possibly insecure) post-inst scripts. These modes are set during build time and put directly into the packages. To allow user and group names rather than the numeric values, a mapping like `/etc/passwd` is required by the `ipkg-build` script, mapping names defined in "PKG_FILE_MODES" to a numeric value, as the build system does not create any users during build. This commit adds a single line to the `prepare-tmpinfo` target, so that everytime the feeds are updated the *passwd like* content of `./tmp/userids` is updated. Signed-off-by: Paul Spooren <mail@aparcar.org>
* rtl838x: add new architectureBirger Koblitz2020-09-1439-0/+8828
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the RTL838x Architecture. SoCs of this type are used in managed and un-managed Switches and Routers with 8-28 ports. Drivers are provided for SoC initialization, GPIOs, Flash, Ethernet including a DSA switch driver and internal and external PHYs used with these switches. Supported SoCs: RTL8380M RTL8381M RTL8382M The kernel will also boot on the following RTL839x SoCs, however driver support apart from spi-nor is missing: RTL8390 RTL8391 RTL8393 The following PHYs are supported: RTL8214FC (Quad QSGMII multiplexing GMAC and SFP port) RTL8218B internal: internal PHY of the RTL838x chips RTL8318b external (QSGMII 8-port GMAC phy) RTL8382M SerDes for 2 SFP ports Initialization sequences for the PHYs are provided in the form of firmware files. Flash driver supports 3 / 4 byte access DSA switch driver supports VLANs, port isolation, STP and port mirroring. The ALLNET ALL-SG8208M is supported as Proof of Concept: RTL8382M SoC 1 MIPS 4KEc core @ 500MHz 8 Internal PHYs (RTL8218B) 128MB DRAM (Nanya NT5TU128MB) 16MB NOR Flash (MXIC 25L128) 8 GBEthernet ports with one green status LED each (SoC controlled) 1 Power LED (not configurable) 1 SYS LED (configurable) 1 On-Off switch (not configurable) 1 Reset button at the right behind right air-vent (not configurable) 1 Reset button on front panel (configurable) 12V 1A barrel connector 1 serial header with populated standard pin connector and with markings GND TX RX Vcc(3.3V), connection properties: 115200 8N1 To install, upload the sysupgrade image to the OEM webpage. Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
* kernel: add support for ALLNET devices in mtdsplitBirger Koblitz2020-09-141-0/+50
| | | | | | | Add support for uimage headers from ALLNET and provide support for the SG8208M and SG8310PM devices' magic bytes. Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
* cns3xxx: drop targetAdrian Schmutzler2020-09-1446-5947/+1
| | | | | | | | | | | | | | | | | | | | | | | | This target has not been updated to 5.4 yet, and the only person trying it (Koen) decided to retreat based on the following reasons: - The target is not DT-aware at all - The huge amount of effort required - The SoC itself reached EoL at Cavium for some time now - Upstream removed some important parts as it's also slowly getting EoL over there - The commercial product that used this will fade out shortly - The amount of download for this binary suggest that the target is not that popular Since nobody has picked up the work since then, and this is the last remaining 4.19-only target, finally drop it now. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* uboot-envtools: mvebu: update uci defaults for Turris OmniaKlaus Kudielka2020-09-132-2/+6
| | | | | | | | | | | | On the Turris Omnia 2019, u-boot environment is located at 0xF0000, instead of 0xC0000. The switch happened with u-boot-omnia package version 2019-04-2 (May 10, 2019). Check the installed u-boot release, and set the default accordingly. Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com> [bump PKG_RELEASE, use lower case for hex offset] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: mt7621: pbr-m1: fix firmware sizeChuanhong Guo2020-09-132-2/+2
| | | | | | | This board is equipped with Winbond W25Q256FV 32M SPI-NOR. Fix partition size for that. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: mt7621: pbr-m1: increase SPI clock to 50MHzChuanhong Guo2020-09-131-1/+2
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: mt7621: pbr-m1: add pcie reset for asm1061Chuanhong Guo2020-09-131-0/+12
| | | | | | | | this board has a pcie to sata bridge connected to pcie2 with a separated pcie reset on gpio7. add reset-gpios and corresponding pinctrl nodes into dts. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips/mediatek: improve GRO performance, fix PPE packet parsingFelix Fietkau2020-09-1311-59/+223
| | | | | | | | Backport upstream changes to initialize GDM settings and reset PPE Allow GMAC to recognize the special tag to fix PPE packet parsing Improve GRO performance by passing PPE L4 hash as skb hash Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: bump 5.4 to 5.4.65John Audia2020-09-125-15/+15
| | | | | | | | | | | All modifications made by update_kernel.sh/no manual intervention needed Build-tested: x86_64 Run-tested: ipq806x (R7800) No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
* netifd: update to latest git HEADHans Dedecker2020-09-121-3/+3
| | | | | | | | | 55a7b6b netifd: vxlan: add aging and maxaddress options 11223f5 netifd: vxlan: add most missing boolean options 226566b netifd: vxlan: refactor mapping of boolean attrs a3c033e netifd: vxlan: handle srcport range Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* ath79: support for TP-Link EAP225-Wall v2Sander Vanheule2020-09-125-1/+197
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link EAP225-Wall v2 is an AC1200 (802.11ac Wave-2) wall plate access point. UART access and debricking require fine soldering. The device was kindly provided for porting by Stijn Segers. Device specifications: * SoC: QCA9561 @ 775MHz * RAM: 128MiB DDR2 * Flash: 16MiB SPI-NOR (GD25Q127CSIG) * Wireless 2.4GHz (SoC): b/g/n, 2x2 * Wireless 5Ghz (QCA9886): a/n/ac, 2x2 MU-MIMO * Ethernet (SoC): 4× 100Mbps * Eth0 (back): 802.3af/at PoE in * Eth1, Eth2 (bottom) * Eth3 (bottom): PoE out (can be toggled by GPIO) * One status LED * Two buttons (both work as failsafe) * LED button, implemented as KEY_BRIGHTNESS_TOGGLE * Reset button Flashing instructions, requires recent firmware (tested on 1.20.0): * ssh into target device and run `cliclientd stopcs` * Upgrade with factory image via web interface Debricking: * Serial port can be soldered on PCB J4 (1: TXD, 2: RXD, 3: GND, 4: VCC) * Bridge unpopulated resistors R162 (TXD) and R165 (RXD) Do NOT bridge R164 * Use 3.3V, 115200 baud, 8n1 * Interrupt bootloader by holding CTRL+B during boot * tftp initramfs to flash via sysupgrade or LuCI web interface MAC addresses: MAC address (as on device label) is stored in device info partition at an offset of 8 bytes. ath9k device has same address as ethernet, ath10k uses address incremented by 1. From OEM ifconfig: br0 Link encap:Ethernet HWaddr 50:...:04 eth0 Link encap:Ethernet HWaddr 50:...:04 wifi0 Link encap:UNSPEC HWaddr 50-...-04-... wifi1 Link encap:UNSPEC HWaddr 50-...-05-... Signed-off-by: Sander Vanheule <sander@svanheule.net> [fix IMAGE_SIZE] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>