aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79
Commit message (Collapse)AuthorAgeFilesLines
* ath79: Fix whitespace errors in 11-ath10k-caldataAdrian Schmutzler2019-08-271-2/+2
| | | | | Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> (cherry picked from commit 1174b94bc98db9730cec8501397cf997b6f7b35c)
* Revert "ath79: make target source-only"Jo-Philipp Wich2019-08-141-1/+1
| | | | | | | | | | | | | | This reverts commit 2b074654b0f259518aa56e0975ca8e26c0c12bc9. Due to popular demand, I've decided to revert this commit after deliberating with Petr. This means that 19.07 will ship ath79 binary images after all. We do however consider the ath79 target on Kernel 4.14 in the 19.07 branch to be beta quality at best. Acked-by: Petr Štetiar <ynezz@true.cz> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ar71xx/ath79: ag71xx: init rings with GFP_KERNELKoen Vandeputte2019-08-091-1/+1
| | | | | | | | | | | | | | | Upstream commit 246902bdf562d45ea3475fac64c93048a7a39f01 Which contains following explanation: -- There is no need to use GFP_ATOMIC here, GFP_KERNEL should be enough. The 'kcalloc()' just a few lines above, already uses GFP_KERNEL. -- Looking at the code, all other descriptors also use plain GFP_KERNEL Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx/ath79: ag71xx: fix sleep in atomicKoen Vandeputte2019-08-091-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When enabling atomic-sleep-debugging options in the kernel, following splat is seen when disabling the interface (which happens on boot): [ 10.892878] eth0: link down [ 10.896788] BUG: sleeping function called from invalid context at net/core/dev.c:5563 [ 10.904730] in_atomic(): 1, irqs_disabled(): 1, pid: 425, name: ip [ 10.911004] 2 locks held by ip/425: [ 10.914539] #0: (rtnl_mutex){....}, at: [<80377474>] rtnetlink_rcv_msg+0x2d8/0x380 [ 10.922441] #1: (&(&ag->lock)->rlock){....}, at: [<80330158>] ag71xx_hw_disable+0x24/0x94 [ 10.930976] CPU: 0 PID: 425 Comm: ip Not tainted 4.14.136 #0 [ 10.936716] Stack : 805e0000 80589228 80557404 876998ec 80610000 80610000 87cdcafc 805b5327 [ 10.945233] 80551534 000001a9 8061386c 87699ccc 87cfb180 00000001 876998a0 84f70903 [ 10.953751] 00000000 00000000 80b00000 8769979c 6a7407fa 00000000 00000007 00000000 [ 10.962270] 000000b7 16d0954a 000000b6 00000000 80000000 87cb658c 87cb65b0 00000001 [ 10.970787] 8046f97c 87699ccc 87cfb180 87ff2810 00000003 802ce724 0806e098 80610000 [ 10.979306] ... [ 10.981797] Call Trace: [ 10.984287] [<8006cb0c>] show_stack+0x58/0x100 [ 10.988814] [<800aab34>] ___might_sleep+0x100/0x120 [ 10.993774] [<8035c434>] napi_disable+0x30/0xd8 [ 10.998377] [<80330198>] ag71xx_hw_disable+0x64/0x94 [ 11.003418] [<8033069c>] ag71xx_stop+0x24/0x38 [ 11.007959] [<80359e30>] __dev_close_many+0xcc/0x104 [ 11.013009] [<80362eac>] __dev_change_flags+0xc8/0x1ac [ 11.018227] [<80362fb8>] dev_change_flags+0x28/0x70 [ 11.023182] [<80376890>] do_setlink+0x31c/0x91c [ 11.027786] [<80379360>] rtnl_newlink+0x3ec/0x7f8 [ 11.032563] [<80377498>] rtnetlink_rcv_msg+0x2fc/0x380 [ 11.037799] [<8039a734>] netlink_rcv_skb+0xd4/0x178 [ 11.042754] [<80399d10>] netlink_unicast+0x168/0x250 [ 11.047796] [<8039a2d4>] netlink_sendmsg+0x3d8/0x434 [ 11.052841] [<8033f0e4>] ___sys_sendmsg+0x1dc/0x290 [ 11.057794] [<80340140>] __sys_sendmsg+0x54/0x84 [ 11.062495] [<8007212c>] syscall_common+0x34/0x58 This is caused by calling napi_disable() while holding the spinlock. Fix it by omitting the spinlock, which is not required here Extensively tested on GL-MiFi, RB-912 and RB-922 hardware Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath79: make target source-onlyPetr Štetiar2019-07-291-1/+1
| | | | | | | In order to prevent build of images for this release as ath79 is going to deprecate ar71xx in the next release. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: add support for devolo WiFi pro 1750xDavid Bauer2019-07-214-1/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- CPU: Qualcomm Atheros QCA9558 RAM: 128M DDR2 FLASH: 16MiB ETH: 1x Atheros AR8035 (PoE in) WiFi2: QCA9558 3T3R WiFi5: QCA9880 3T3R BTN: 1x Reset LED: 1x LED Power (non-controllable) 1x LED Status (internal) 1x LED LAN (controlled by PHY) 1x LED WLAN BEEP: 1x GPIO attached piezo beeper UART: 3.3V GND TX RX (115200-N-8) (3.3V is square pad) Header is located next to external-LED header. Installation ------------ Make sure you set a password for the root user as prompted on first setup! 1. Upload OpenWRT sysupgrade image via SSH to the device. Use /tmp as the destination folder on the device. User is root, password the one set in the web interface. 2. Install OpenWRT with > sysupgrade -n -F /tmp/<openwrt-image-name> Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit cb3cd526948af3f69da1af18e035177a0a8f58e3)
* ath79: Use -v1 suffix for TP-Link WDR3600/4300Adrian Schmutzler2019-07-175-14/+14
| | | | | | | | | | | | | | | In ath79, identifiers tplink_tl-wdr3600 and tplink_tl-wdr4300 have been used while most other TP-Link devices include the revision. Although there actually is only one major revision of these devices, they bear the revision on their bottom (v1.x). TP-Link also refers to the devices as V1 on its web page. This patch thus adds -v1 to both so it is more consistent with other devices and with what you would expect from reading the on-device sticker and the support pages. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: ar9330: add missing watchdog nodePetr Štetiar2019-07-171-0/+10
| | | | | | | | | It was reported in FS#2385, that Carambola2 doesn't currently have working watchdog so fix it by adding watchdog node. Ref: FS#2385 Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 0893f28e19afbd9d4081f59df10631d6ef02e0d7)
* ath79: Add SUPPORTED_DEVICES for Archer C7 v1/v2Adrian Schmutzler2019-06-201-0/+2
| | | | | | | | The identifier for both devices is "archer-c7" on ar71xx, set here: https://github.com/openwrt/openwrt/blob/master/target/linux/ar71xx/base-files/lib/ar71xx.sh#L348 https://github.com/openwrt/openwrt/blob/master/target/linux/ar71xx/base-files/lib/ar71xx.sh#L511 Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 4.14 to 4.14.127Koen Vandeputte2019-06-183-4/+4
| | | | | | | | | | | | | | | Refreshed all patches. Fixes: - CVE-2019-11479 - CVE-2019-11478 - CVE-2019-11477 Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.125 (FS#2305 FS#2297)Koen Vandeputte2019-06-122-3/+3
| | | | | | | | | | | | | | | | Refreshed all patches. This bump contains upstream commits which seem to avoid (not properly fix) the errors as seen in FS#2305 and FS#2297 Altered patches: - 403-net-mvneta-convert-to-phylink.patch - 410-sfp-hack-allow-marvell-10G-phy-support-to-use-SFP.patch Compile-tested on: ar71xx, cns3xxx, imx6, mvebu, x86_64 Runtime-tested on: ar71xx, cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: drop everything not on kernel version 4.14Daniel Golle2019-06-1240-6825/+0
| | | | | | | | | | * Remove testing patches for kernel version 4.19 * remove targets ar7, ixp4xx, orion Those targets are still on kernel 4.9, patches for 4.14 were not ready in time. They may be readded once people prepare and test patches for kernel 4.14. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: Add support for TP-Link Archer C25 v1Adrian Schmutzler2019-06-106-9/+231
| | | | | | | | | | | | | | | | | The TP-Link Archer C25 is a low-cost dual-band router. Specification: - CPU: Atheros QCA9561 775 MHz - RAM: 64 MB - Flash: 8 MB - Wifi: 3x3 2.4 GHz (integrated), 1x1 5 GHz QCA9887 - NET: 5x 10/100 Mbps Ethernet Some LEDs are controlled by an additional 74HC595 chip, but not all of them as e.g. for the C59. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: Reorder some TP-Link Archer devices in 01_ledsAdrian Schmutzler2019-06-101-8/+8
| | | | Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: migrate Archer C7 5GHz radio device pathsDavid Santamaría Rogado2019-06-101-6/+20
| | | | | | | | | | | | | | | | | | When upgrading a TP-Link Archer C7 v2 from ar71xx to ath79, the 5ghz radio stops working because the device path changed. Some people subtitute the unsupported QCA9880v1 in the Archer v1 with supported QCA9880v2 radio. Since the stock radio doesn't work, so it's safe to apply the change also for the Archer v1 images as well. Also this patch renames the migration file and variables from wmac to wifi. Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [removed comment, added return 0 (not that it matters since uci is clever, see 00-wmac-migration thread), reworded commit message]
* ath79: Consistently label art partition with lower caseAdrian Schmutzler2019-06-1019-36/+33
| | | | | | | | This patch harmonizes the label and alias for art partitions across ath79. Since lower case seems to be more frequent, use that consistently. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: Read MAC addresses from flash in 11-ath10k-caldataAdrian Schmutzler2019-06-101-14/+23
| | | | | | | | | | In commit c3a8518 eth0 and eth1 have been swapped for some devices, but 11-ath10k-caldata has not been updated. Instead of fixing this by swapping eth0/eth1, this patch will read addresses from flash (as done for several devices already) so adjustments due to eth order become obsolete. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: Consistently label info partitionAdrian Schmutzler2019-06-107-15/+9
| | | | | | | | | | | | | | | | The info/product-info partition, which frequently contains MAC adresses, is typically assigned the 'info' alias in DTS, but then labelled with 'info', 'product-info' or 'config'. This leads to different aliases if used for setting MAC adresses in DTS compared to when using e.g. mtd_get_mac_binary. Occationally, also multiple switch-case entries are used just because of different labelling. This patch relabels those partitions in ath79 to consistently use 'info'. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for 8devices Carambola2 development boardRytis Zigmantavičius2019-06-053-0/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifications: - Atheros AR9331 (400 MHz) - 64 MB of RAM (DDR2) - 16 MB of Flash (SPI) - 1T1R 2.4 Wlan (AR9331) - 2x 10/100 Mbps Ethernet - 3x LEDs, 1x gpio button - 1x USB 2.0, 5V - UART over usb, 115200n8 Upgrading from ar71xx target: - Put image into board: scp openwrt-ath79-generic-8dev_carambola2-squashfs-sysupgrade.bin \ root@192.168.1.1/tmp/ - Run sysupgrade sysupgrade /tmp/sysupgrade.bin Upgrading from u-boot: - Set up tftp server with sysupgrade.bin image - Go to u-boot (reboot and press ESC when prompted) - Set TFTP server IP setenv serverip 192.168.1.254 - Set device ip from same subnet setenv ipaddr 192.168.1.1 - Copy new firmware to board tftpboot 0x81000000 sysupgrade.bin - erase flash erase 0x9f050000 +${filesize} - flash firmware cp.b 0x81000000 0x9f050000 ${filesize} - Reset board reset Signed-off-by: Rytis Zigmantavičius <rytis.z@8devices.com> [wrapped long line in commit description, whitespace and art address fix in DTS, keep default lan/wan setup, removed -n in sysupgrade] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: Add support for ZBT-WD323Kristian Evensen2019-06-055-0/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ZBT-WD323 is a dual-LTE router based on AR9344. The detailed specifications are: * AR9344 560MHz/450MHz/225MHz (CPU/DDR/AHN). * 128 MB RAM * 16MB of flash(SPI-NOR, 22MHz) * 1x 2.4GHz wifi (Atheros AR9340) * 3x 10/100Mbos Ethernet (AR8229) * 1x USB2.0 port * 2x miniPCIe-slots (USB2.0 only) * 2x SIM slots (standard size) * 4x LEDs (1 gpio controlled) * 1x reset button * 1x 10 pin terminal block (RS232, RS485, 4x GPIO) * 2x CP210x UART bridge controllers (used for RS232 and RS485) * 1x 2 pin 5mm industrial interface (input voltage 12V~36V) * 1x DC jack * 1x RTC (PCF8563) Tested: - Ethernet switch - Wifi - USB port - MiniPCIe-slots (+ SIM slots) - Sysupgrade - Reset button - RS232 Intallation and recovery: The board ships with OpenWRT, but sysupgrade does not work as a different firmware format than what is expected is generated. The easiest way to install (and recover) the router, is to use the web-interface provided by the bootloader (Breed). While the interface is in Chinese, it is easy to use. First, in order to access the interface, you need to hold down the reset button for around five seconds. Then, go to 192.168.1.1 in your browser. Click on the second item in the list on the left to access the recovery page. The second item on the next page is where you select the firmware. Select the menu item containing "Atheros SDK" and "16MB" in the dropdown close to the buttom, and click on the button at the bottom to start installation/recovery. Notes: * RS232 is available on /dev/ttyUSB0 and RS485 on /dev/ttyUSB1 Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com> [removed unused poll-interval from gpio-keys, i2c-gpio 4.19 compat] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: fix default config for devices with eth0/eth1 swappedChuanhong Guo2019-06-052-70/+56
| | | | | | | | | | | | | | | | also fix the following problems in this commit: glinet,gl-ar150: This router uses an uncommon order of setting up gmacs in ar71xx. gmac0 is preferred to be wan port because of the additional link status info available. So this router will have eth0/eth1 swapped comparing to ar71xx. tplink,tl-wr710n-v1: same as gl-ar150 embeddedwireless,dorin: eth0 is used as switch port, which was incorrect. It's correct now, so keep this one untouched. tplink,tl-wr842n-v1: we don't swap PHYs on ar7241 so the original port order is incorrect. reorder archer-a7-v5 entry. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: dts: drop "simple-mfd" for gmacs in SoC dtsiChuanhong Guo2019-06-057-10/+10
| | | | | | | | | | | | With a proper probe deferring for ag71xx we don't need to explicitly probe mdio1 before gmac0. Drop all "simple-mfd" in SoC dtsi so that gmac orders can be the same as ar71xx. This makes eth0/eth1 order the same as those in ar71xx, which means we don't need a migration script for this anymore and we can merge incorrectly split gmac/mdio driver back together. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: defer probe if of_phy_connect failedChuanhong Guo2019-06-051-2/+2
| | | | | | | | | gmac0 may need a phy on builtin switch, which can be unavailable if gmac0 is probed before builtin switch. Return -EPROBE_DEFER in this case so that gmac0 can be probed later. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: rework LED configurations for tplink,archer-d50-v1Chuanhong Guo2019-06-051-3/+3
| | | | | | | | | | | | The original one has the following problem: 1. Port mask of lan led includes wan port. 2. By using netdev trigger with vlan port, the link led is always on. This commits fixes the above problems by correcting port mask for lan led and use swconfig trigger for wan leds. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: update ethtool supportPetr Štetiar2019-06-051-26/+14
| | | | | | | | | | | | ethtool doesn't work currently as phy_ethtool_ioctl expects user space pointer, but it's being passed kernel one. Fixing it doesn't make sense as {s,g}et_settings were deprecated anyway. So let's rather remove phy_ethtool_ioctl and use new {s,g}et_link_ksettings instead. While at it, update nway_reset as well. Cc: John Crispin <john@phrozen.org> Ref: https://bugs.openwrt.org/index.php?do=details&task_id=1982 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: ag71xx: remove unused SIOCETHTOOL ioctl handlingPetr Štetiar2019-06-051-10/+1
| | | | | | | | | | | | | This ioctl is currently routed through generic interface code: dev_ioctl dev_ethtool __ethtool_get_link_ksettings phy_ethtool_ioctl Cc: John Crispin <john@phrozen.org> Cc: Chuanhong Guo <gch981213@gmail.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: fix QCA955x GMAC register sizeDavid Bauer2019-06-021-1/+1
| | | | | | | | The register size of the QCA955x currently matches the size stated in the datasheet. However, there are more hidden GMAC registers which are needed for the SGMII workaround to work. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add leds migrations for archer-c7-v2 and v4David Santamaría Rogado2019-05-311-0/+6
| | | | | | | | | | | | In ar71xx v2 has blue color defined because the same mach-*.c is also used for TL-WDR4900 model with blue leds. ath79 v2 dts defines them as green. For v4 the situation is the same as v5 so the conversion is identical only v4 instead v5. So now upgrading from ar71xx to ath79 should be also smoother for v2 and v4. Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
* ath79: ecb1750: additional dts fixesPetr Štetiar2019-05-271-0/+2
| | | | | | | | | | | This patch fixes following missing bits: - add missing 'compatible' property on firmware partition - set vendor partition 'userconfig' read-only Fixes: 30dcbc741d84 ("ath79: add support for EnGenius ECB1750") Signed-off-by: Sven Friedmann <sf.openwrt@okay.ms> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: add support for WD My Net N750Ryan Mounce2019-05-275-7/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SoC: AR9344 RAM: 128MB Flash: 16MiB Winbond 25Q128BVFG SPI NOR 5GHz WiFi: AR9380 PCIe 3x3:3 802.11n 2.4GHz WiFi: AR9344 (SoC) AHB 2x2:2 802.11n 5x Gigabit ethernet via AR8327N switch (green + amber LEDs) 2x USB 2.0 via GL850G hub 4x front LEDs from SoC GPIO 1x front WPS button from SoC GPIO 1x bottom reset button from SoC GPIO Known issues: AR8327N LEDs only have default functionality, not presented in sysfs. This is a regression from ar71xx. UART header JP1, 115200 no parity 1 stop TX GND VCC (N/P) RX See https://openwrt.org/toh/wd/n750 for flashing detail. Procedures unchanged from ar71xx. Tested sysupgrade + factory flash from WD Emergency Recovery Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* kernel: bump 4.19 to 4.19.44Koen Vandeputte2019-05-211-1/+1
| | | | | | | | | | | | Refreshed all patches. Remove upstreamed: - 103-MIPS-perf-ath79-Fix-perfcount-IRQ-assignment.patch Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath79: glinet_gl-ar750s: Add USB power & microSDAlexander Wördekemper2019-05-202-8/+23
| | | | | | | | | The GL.iNet AR750S USB and microSD port is currently not working out of the box. GPIO 7 is used to control the power of the USB port. Add GPIO 7 as a fixed-regulator for the port. Also add &usb1 to DTS to get the microSD port to work. Signed-off-by: Alexander Wördekemper <alexwoerde@web.de>
* ath79: add leds migrations for archer-c7-v5Petr Štetiar2019-05-201-0/+3
| | | | | | | | | ar71xx uses `archer-c7-v5` for led prefix, but ath79 sticks to more generic `tplink` as the DTS is reused by more boards, so we need to perform migrations of the LED names during upgrade. Cc: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: set mib-poll-interval on mdio0 attached ar83xx switchPetr Štetiar2019-05-206-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit "generic: ar8216: add mib_poll_interval switch attribute" sets mib-poll-interval as disabled by default (was set to 2s), so it makes switch LEDs trigger disfunctional on devices which don't have mib-poll-interval set. So this patch sets mib-poll-interval to 500ms on devices which have ar83xx switch connected to mdio0 bus, as the same value was set for built in switches in 443fc9ac35 ("ath79: use ar8216 for builtin switch"). Some measurements performed on TP-Link Archer C7-v5: mib-type=0, mib-poll-interval=500ms (10s pidstat) Average: %usr %system %guest %wait %CPU CPU Command Average: 0.00 1.93 0.00 0.00 1.93 - kworker/0:2 iperf3 (30s): 334 Mbits/sec mib-type=0, mib-poll-interval=2s (10s pidstat) Average: %usr %system %guest %wait %CPU CPU Command Average: 0.00 1.14 0.00 0.00 1.14 - kworker/0:2 iperf3 (30s): 334 Mbits/sec So it seems like we get 4x faster LED refresh rate for additional 0.8% CPU load. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: convert WD MyNet Range Extender to gpio-keysChristian Lamparter2019-05-181-5/+1
| | | | | | | This patch converts the Range Extender to use the interrupt-driven gpio-keys driver over the polled variant. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: convert Netgear WNDR3700 series to gpio-keysChristian Lamparter2019-05-181-2/+1
| | | | | | | This patch converts the WNDR3700 to use the interrupt-driven gpio-keys driver over the polled variant. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: use the qca,qca9563 chip compatible for the WR818Christian Lamparter2019-05-181-1/+1
| | | | | | | | | | | | | | | | | | | | All other QCA9563 devices already use this identifier for the exact SoC. Not that this matters much since as upstream states in Documentation/devicetree/usage-model.txt: "First and foremost, the kernel will use data in the DT to identify the specific machine. In a perfect world, the specific platform shouldn't matter to the kernel because all platform details would be described perfectly by the device tree in a consistent and reliable manner. [...] In the majority of cases, the machine identity is irrelevant, and the kernel will instead select setup code based on the machine's core CPU or SoC." Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: add support for TP-Link Archer D50 V1Davide Fioravanti2019-05-185-0/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link Archer D50 v1 is a dual-band AC1200 router + modem. The router section is based on Qualcomm/Atheros QCA9531 + QCA9882. The "DSL" section is based on BCM6318 but it's currently not supported. Internally eth0 is connected to the Broadcom CPU. Router section - Specification: CPU: QCA9531 650/600/200 MHz (CPU/DDR/AHB) RAM: 64 MB (DDR2) Flash: 8 MB (SPI NOR) Wifi 2.4GHz: QCA9531 2T2R Wifi 5GHz: QCA9982 2T2R 4x 10/100 Mbps Ethernet 8x LED, 3x button UART header on PCB Known issues: DSL not working (eth0) (WIP) UART connection --------------- J2 HEADER (Qualcomm CPU) . TX . RX . GND O VCC J16 HEADER (Broadcom CPU) O VCC . GND . RX . TX The following instructions require a connection to the J2 UART header. Flash instruction under U-Boot, using UART ------------------------------------------ 1. Press any key to stop autobooting and obtain U-Boot CLI access. 2. Setup ip addresses for U-Boot and your tftp server. 3. Issue below commands: tftpboot 0x81000000 openwrt-ath79-generic-tplink_archer-d50-v1-squashfs-sysupgrade.bin erase 0x9f020000 +$filesize cp.b 0x81000000 0x9f020000 $filesize reset Initramfs instruction under U-Boot for testing, using UART ---------------------------------------------------------- 1. Press any key to stop autobooting and obtain U-Boot CLI access. 2. Setup ip addresses for U-Boot and your tftp server. 3. Issue below commands: tftpboot 0x81000000 openwrt-ath79-generic-tplink_archer-d50-v1-initramfs-kernel.bin bootm 0x81000000 Restore the original firmware ----------------------------- 0. Backup every partition using the OpenWrt web interface 1. Download the OEM firmware from the TP-Link website 2. Extract the bin file in a folder (eg. Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin) 3. Remove the U-Boot and the Broadcom image part from the file. Issue the following command: dd if="Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin" of="Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin.mod" skip=257 bs=512 count=15616 4. Double check the .mod file size. It must be 7995392 bytes. 5. Flash it using the OpenWrt web interface. Force the update if needed. WARNING: Remember to NOT keep settings. 5b. (Alternative to 5.) Flash it using the U-Boot and UART connection. Issue below commands in the U-Boot: tftpboot 0x81000000 Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin.mod erase 0x9f020000 +$filesize cp.b 0x81000000 0x9f020000 $filesize reset Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [removed default-state = "off", it's already the default, added pcie node, fixed typo]
* ath79: add support for Aruba AP-105Chris Blake2019-05-183-0/+199
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SoC: Atheros AR7161-8C1A @ 680 MHz RAM: 128MB - 2x Etron Technology EM6AB160TSA-5G NOR: 16MB - 1x MXIC MX25L12845EMI-10G (SPI-NOR) WI1: Atheros AR9223-AC1A 802.11bgn WI2: Atheros AR9220-AC1A 802.11an ETH: Atheros AR8021-BL1E + PoE LED: Dual-Color Power/Status, Ethernet, WLAN2G and WLAN5G BTN: 1 x Reset I2C: AT97SC4303s TPM (needs driver!) CON: RS232-level 8P8C/RJ45 Console Port - 9600 Baud Factory installation: - Needs a u-boot replacement. See Wiki for information on how to do a in-circut flash with a SPI-Flasher like a CH314A or flashrom. Wiki page can be found at https://openwrt.org/toh/aruba/aruba_ap-105 - Be careful when dis- and reassembling the device to not squish any of the antenna cables in the process! - Be sure to make a full 16 MiB backup of your device before flashing the new u-boot! This is needed if you ever have interest in reverting back to stock firmware. Not working: - TPM (needs a driver) Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
* ath79: Add support for TP-Link TL-WR1043N v5Adrian Schmutzler2019-05-184-3/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifications: - QCA9563 at 775 MHz - 64 MB RAM Zentel A3R12E40CBF-8E - 16 MB flash Winbond W25Q128FVSG - 3 (non-detachable) Antennas / 450 Mbit - 1x/4x WAN/LAN Gbps Ethernet (QCA8337) - reset and Wi-Fi buttons TP-Link TL-WR1043N v5 appears to be identical to the TL-WR1043ND v4, except that the USB port has been removed and there is no longer a removable antenna option. It also has different partitioning scheme. The software is more in line with the Archer series in that it uses a nested bootloader scheme. (This has been adapted from the OpenWrt Wiki page) <https://openwrt.org/toh/tp-link/tl-wr1043nd> Installation on HW rev.5: Factory firmware can be installed via the WEB interface. Alternatively, it is also possible to use a TFTP server for recovery purposes: - Rename OpenWRT or original firmware to WR1043v5_tp_recovery.bin - Set static IP of your PC to *192.168.0.66* - Router will obtain IP 192.168.0.86 for a few seconds while loading, when reset button pressed at power On. And finally, there's always u-boot access through the UART. For information visit the wiki. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworked commit message]
* ath79: Move TL-WR1043ND v1 definition to companionsAdrian Schmutzler2019-05-181-10/+10
| | | | Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: Move settings specific for TP-Link TL-WR1043ND v4 to DTSAdrian Schmutzler2019-05-182-73/+70
| | | | | | This prepares for support of v5. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for EnGenius ECB1750sven friedmann2019-05-186-0/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specification: - Qualcomm Atheros SoC QCA9558 - 720/600/200 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 1x 10/100/1000 Mbps Ethernet - 3T3R 2.4 GHz (QCA9558 WMAC) - 3T3R 5.8 Ghz (QCA9880-BR4A, Senao PCE4553AH) https://fccid.io/A8J-ECB1750 Tested and working: - lan, wireless, leds, sysupgrade (tftp) Flash instructions: 1.) tftp recovery - use a 1GbE switch or direct attached 1GbE link - setup client ip address 192.168.1.10 and start tftpd - save "openwrt-ath79-generic-engenius_ecb1750-initramfs-kernel.bin" as "ap.bin" in tfpd root directory - plugin powercord and hold reset button 10secs.. "ap.bin" will be downloaded and executed - afterwards login via ssh and do a sysuprade 2.) oem webinterface factory install (not tested) Use normal webinterface upgrade page und select "openwrt-ath79-generic-engenius_ecb1750-squashfs-factory.bin". 3.) oem webinterface command injection OEM Firmware already running OpenWrt (Attitude Adjustment 12.09). Use OEM webinterface and command injection. See wiki for details. https://openwrt.org/toh/engenius/engenius_ecb1750_1 Signed-off-by: sven friedmann <sf.openwrt@okay.ms> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [use interrupt-driven "gpio-keys" binding]
* ath79: drop unused/incomplete dtsChuanhong Guo2019-05-173-230/+0
| | | | | | | | These dts itself are incomplete (e.g. missing mtd partitions) and its deivce support is never added to ath79 target. Drop these unused dts for now. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar9330: fix switch_led_disable_pins reg valuePetr Štetiar2019-05-171-1/+1
| | | | | | | | | | | | | | In commit e9652e1696d9 ("ath79: fix pinmux for ar933x devices") I've wrongly changed desired register value to 0xf8 although it should've been set to 0x0. 0xf8 value sets bits 3-7 (ETH_SWITCH_LEDx_EN) to 1 which actually enables ethernet switch LEDs, so 0x0 is correct value in order to use the pins as GPIO. Fixes: e9652e1696d9 ("ath79: fix pinmux for ar933x devices") Reported-by: Chuanhong Guo <gch981213@gmail.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: archer-x7-v5: sync ar8327 initial reg values with ar71xxPetr Štetiar2019-05-171-2/+5
| | | | | | | | | Simply dumped content of this regs in ar71xx and wrote them to DTS, as a result port 6 on the switch will appear disconnected as on Archer C7v4. [AS: testing and PORT6_STATUS fix] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: Add missing reset button for TP-Link CPE210 v2 and v3Adrian Schmutzler2019-05-151-0/+10
| | | | | | | | Reset button support seems to be missing in ath79. Run-tested on CPE210 v2. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix pinmux for ar933x devicesPaul Wassi2019-05-155-3/+9
| | | | | | | | | | | | | Properly disable the SoC's internal Switch LEDs on the pinmux. Devices that previously called ath79_gpio_function_disable for the switch LEDs, just need to reference switch_led_pins in the pinctrl-0 property of the gpio-leds node. Signed-off-by: Paul Wassi <p.wassi@gmx.at> [changed desired pinctrl register value from 0x1f to proper 0xf8] Signed-off-by: Chuanhong Guo <gch981213@gmail.com> [renamed pinmux name to switch_led_disable_pins to make purpose more clear] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath79: archer-x7-v5: remove confusing ar8327 initvals for LEDsPetr Štetiar2019-05-151-4/+0
| | | | | | | | This devices have LEDs connected to the SoC's GPIOs, so it makes no sense to fiddle with ar8327 LED regs. Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 4.19 to 4.19.42Koen Vandeputte2019-05-131-1/+1
| | | | | | | | | | | | | Refreshed all patches. Remove upstreamed: - 060-v5.1-serial-ar933x_uart-Fix-build-failure-with-disabled-c.patch - 400-v5.2-leds-trigger-netdev-fix-refcnt-leak-on-interface-ren.patch Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>