aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79
Commit message (Collapse)AuthorAgeFilesLines
* ath79: add syscon compatible property to ar7100 ethernet nodesMatt Merhar2018-09-062-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | This adds "syscon" to the compatible properties for the eth0/eth1 nodes in ar7100.dtsi. Without this, a kernel panic is encountered on boot with some ar7100 boards. This for some reason wasn't an issue for the WNDR3800, which uses a Realtek switch chipset, but the panic was encountered on the RouterStation Pro (using an AR8216 switch) and some other boards that haven't yet been merged. The panic message mentions an unaligned access and happens in ag71xx_mdio_probe in drivers/net/ethernet/atheros/ag71xx/ag71xx_mdio.c. Even if the unaligned access is fixed, the ag71xx_mdio probe still fails without the "syscon" property. This was already being worked around in ar7161_ubnt_routerstation-pro.dts by overriding the compatible property, so this commit removes that as well. All of the other ath79 .dtsi already have this property, so no changes are needed elsewhere. Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
* kernel: bump 4.14 to 4.14.67Koen Vandeputte2018-08-284-15/+11
| | | | | | | | | | | | Refreshed all patches. Removed upstreamed patches: - 037-v4.18-0008-ARM-dts-BCM5301x-Fix-i2c-controller-interrupt-type.patch Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath79: fix remove irq code from pci driver patchJohn Crispin2018-08-281-0/+141
| | | | | | This patch got mangled in the void while rebasing it. Signed-off-by: John Crispin <john@phrozen.org>
* ath79: fix ar7100 PCI IRQ handlingDmitry Tunin2018-08-282-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently all PCI devices get the same IRQ that affects performance badly. This commit adresses this problem and cleans the code. ar7100 has a special PCI interrupt controller@18060018 that works exactly the same way as misc interrupt controller. This patch does the following: 1. Defines pci-intc interrupt controller@18060018 in dtsi. 2. Removes interrupt-controller property from PCI node. 3. Sets a correct interrupt mask for PCI devices. 4. Removes all IRQ handling code from the PCI driver. "qca,ar7100-misc-intc" should be used as the compatible property, becuase on ar7100 the controlled status register is read-only and the ack method used in "qca,ar7240-misc-intc" won't work properly. There are two very minor downsides of this patch that don't affect perormance: 1. We allocate an IRQ domain of 32 IRQ, whan we need only 5. But ar7100 aren't tiny un terms of RAM and that is not very important and can be tuned if we implement "nr-interrupts" property". 2. It reuses the same irg chip name "MISC" for both controllers. Run tested on DIR-825 B1. Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
* ath79: ag71xx: apply interface mode to MII0/1_CTRL on ar71xx/ar913xChuanhong Guo2018-08-284-0/+73
| | | | | | | | | | | | | We currently don't have any code configuring interface mode in ath79, meaning that we relies on bootloader to set the correct interface mode. This patch added code to set interface correctly so that everything works even if bootloader configures it wrong.(e.g. on WNDR3800 u-boot set the second GMAC mode to RMII but it should be RGMII.) Introduced "qca,mac-idx" for the difference in MII_CTRL register value. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: replace patchesJohn Crispin2018-08-2835-1322/+1332
| | | | | | | replace our downstream version of the patches with the ones that were sent upstream. Signed-off-by: John Crispin <john@phrozen.org>
* ath79: initial support for Ubiquiti RouterStation and RouterStation ProMatt Merhar2018-08-277-0/+223
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a shared ar7161_ubnt_routerstation.dtsi as well as two other .dts files that utilize it, ar7161_ubnt_routerstation.dts and ar7161_ubnt_routerstation-pro.dts. The modifications to generic-ubnt.mk, config-default, and base-files necessary for image generation, parsing RedBoot FIS partitions, network configuration, and sysupgrade are also included. This reintroduces vital bits from platform_do_upgrade_combined() and its supporting functions to /lib/upgrade/platform.sh, which were previously removed from ath79 in 3e9d9f62258f80298710441e0db557e59e152dcf "ath79: sysupgrade: drop unused platform checks". The new function is called "routerstation_do_upgrade" and will *only* work for the RouterStation series of boards. It does however retain the ability to downgrade (e.g. from master -> 17.01.x using sysupgrade -F). All hardware is functional including the AR8216 switch (for the Pro), wireless via ath5k/ath9k using the miniPCI slots, flash, USB, button, and LED. Switch and LAN/WAN configuration is the same as it is with the equivalent ar71xx targets. MAC addresses are assigned based upon the content stored in the RedBoot config partition. Flashing via both sysupgrade and TFTP has been confirmed to work. Also, the initramfs images are now raw .bin files instead of being wrapped in a uImage (as they currently are in ar71xx), which makes them bootable with RedBoot. One notable difference to ar71xx is the inclusion of the RedBoot "fconfig" utility (analogous to U-Boot’s fw_printenv/fw_setenv) in DEVICE_PACKAGES. The FIS partitions are probed using the RedBoot MTD parser’s DT binding, whose proper usage is mutually exclusive to defining a separate fixed-partitions node for "RedBoot config". This config partition contains the board's base MAC address. The lack of a hard-coded flash location means that the mtd-mac-address property cannot be used in the .dts, so instead fconfig is used to read the MAC addresses from flash in userspace during first boot. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl> Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
* treewide: fix some cosmetic glitches in dts filesPaul Wassi2018-08-279-14/+1
| | | | | | | | | | | - fix single spaces hidden by a tab - replace indentation with spaces by tabs - make empty lines empty - drop trailing whitespace - drop unnecessary blank lines Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: Paul Wassi <p.wassi@gmx.at>
* ath79: fix mac address increment for embedded wireless DorinFelix Fietkau2018-08-251-0/+1
| | | | | | Use mtd-mac-address-increment-byte to match ar71xx behavior Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath79: ubnt-xm: create mapping for RSSI LEDsLech Perczak2018-08-231-0/+7
| | | | | | | | | | Ubiquiti XM series boards contain a set of RSSI LEDs. Create an UCI mapping for them, so visual feedback on RSSI is available, when using userspace RSSI monitor daemon. Runtime tested using rssileds. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ath79: ubnt-xm: hijack LED4 as booting/failsafeLech Perczak2018-08-231-1/+6
| | | | | | | | | | Create aliases for led-booting and led-failsafe pointing at ubnt:green:link4 LED, forUbiquiti XM series, so visual feedback on device status becomes available, in order to enter failsafe mode via button. led-running and led-upgrade aliases are omitted to avoid conflicting with RSSI LEDs when in normal operation. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ath79: ubnt-xm: disable WAN on (rocket|bullet)-mLech Perczak2018-08-231-0/+2
| | | | | | | | | | | ubnt,bullet-m and ubnt,rocket-m targets support only single Ethernet port, therefore disable creation of WAN zone and interfaces for them, as their intended purpose is a wireless bridge. This aligns the configuration with one found in ar71xx target. ubnt,nano-m target is kept as is, being a two-port device. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ath79: ubnt-xm: support ath9k firmware loadingLech Perczak2018-08-231-0/+5
| | | | | | | | Enable ath9k EEPROM extraction on boot for Ubiquiti XM-series boards. This is required for wireless interface to function. Runtime tested on Nanobridge M5. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* ath79: add support for I-O DATA ETG3-RINAGAKI Hiroshi2018-08-233-0/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I-O DATA ETG3-R is a wired router, based on Atheros AR9342. Specification: - Atheros AR9342 - 64 MB of RAM - 8 MB of Flash - 5x 10/100/1000 Ethernet - AR8327N - 2x LEDs, 1x key - UART header on PCB - Vcc, GND, TX, RX from ethernet port side - 115200n8 Flash instruction using initramfs image: 1. Connect serial cable to UART header on ETG3-R 2. Rename OpenWrt initramfs image to "1500A8C0.img" and place it in the TFTP directory 3. Set IP address of the computer to 192.168.0.10, connect to the LAN port of ETG3-R, and start the TFTP server on the computer 4. Connect power cable to ETG3-R and turn on the router 5. Press "Enter" key when the "Hit any key to stop autoboot:" message is displayed on the console and enter the u-boot cli 6. execute following commands to change kernel address for u-boot setenv bootsf 1 setenv mtd_kernel1 "bootm 0x9f050000" saveenv 7. execute "tftpboot; bootm" command to download the initramfs image from TFTP server and boot with it 8. On the initramfs image, execute "mtd erase firmware" to erase stock firmware and execute sysupgrade with sysupgrade image for ETG3-R 9. Wait ~150 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ath79: fix TL-MR3020 image metadataDavid Bauer2018-08-191-1/+1
| | | | | | | | | | Sysupgrading to ath79 from ar71xx currently fails because of mismatching supported_devices. ar71xx is expecting "tl-mr3020" which is missing in the ath79 image. Upgrading from ath79 is unaffected, as the image contains the old string for ar71xx and the new one coming from the device-tree. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: cleanup PISEN WMM003N image metadataChuanhong Guo2018-08-191-1/+0
| | | | | | | PISEN WMM003N is never supported by ar71xx, this commit also removed SUPPORTED_DEVICES for it because it's completely useless. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: add support for Fritz!Box 4020David Bauer2018-08-195-0/+205
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the AVM Fritz!Box 4020 WiFi-router. SoC: Qualcomm Atheros QCA9561 (Dragonfly) 750MHz RAM: Winbond W971GG6KB-25 FLASH: Macronix MX25L12835F WiFi: QCA9561 b/g/n 3x3 450Mbit/s USB: 1x USB 2.0 IN: WPS button, WiFi button OUT: Power LED green, Internet LED green, WLAN LED green, LAN LED green, INFO LED green, INFO LED red UART: Header Next to Black metal shield Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V) The Serial setting is 115200-8-N-1. Tested and working: - Ethernet (LAN + WAN) - WiFi (correct MAC) - Installation via EVA bootloader - OpenWRT sysupgrade - Buttons - LEDs The USB port doesn't work. Both Root Hubs are detected as having 0 Ports: [ 3.670807] kmodloader: loading kernel modules from /etc/modules-boot.d/* [ 3.723267] usbcore: registered new interface driver usbfs [ 3.729058] usbcore: registered new interface driver hub [ 3.734616] usbcore: registered new device driver usb [ 3.744181] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 3.758357] SCSI subsystem initialized [ 3.766026] ehci-platform: EHCI generic platform driver [ 3.771548] ehci-platform ehci-platform.0: EHCI Host Controller [ 3.777708] ehci-platform ehci-platform.0: new USB bus registered, assigned bus number 1 [ 3.788169] ehci-platform ehci-platform.0: irq 48, io mem 0x1b000000 [ 3.816647] ehci-platform ehci-platform.0: USB 2.0 started, EHCI 0.00 [ 3.824001] hub 1-0:1.0: USB hub found [ 3.828219] hub 1-0:1.0: config failed, hub doesn't have any ports! (err -19) [ 3.835825] ehci-platform ehci-platform.1: EHCI Host Controller [ 3.842009] ehci-platform ehci-platform.1: new USB bus registered, assigned bus number 2 [ 3.852481] ehci-platform ehci-platform.1: irq 49, io mem 0x1b400000 [ 3.886631] ehci-platform ehci-platform.1: USB 2.0 started, EHCI 0.00 [ 3.894011] hub 2-0:1.0: USB hub found [ 3.898190] hub 2-0:1.0: config failed, hub doesn't have any ports! (err -19) [ 3.908928] usbcore: registered new interface driver usb-storage [ 3.915634] kmodloader: done loading kernel modules from /etc/modules-boot.d/* A few words about the shift-register: AVM used a trick to control the shift-register for the LEDs with only 2 pins, SERCLK and MOSI. Q7S, normally used for daisy-chaining multiple shift-registers, pulls the latch, moving the shift register-state to the storage register. It also pulls down MR (normally pulled up) to clear the storage register, so the latch gets released and will not be pulled by the remaining bits in the shift-register. Shift register is all-zero after this. For that we need to make sure output 7 is set to high on driver probe. We accomplish this by using gpio-hogging. Installation via EVA: In the first seconds after Power is connected, the bootloader will listen for FTP connections on 169.254.157.1 (Might also be 192.168.178.1). Firmware can be uploaded like following: ftp> quote USER adam2 ftp> quote PASS adam2 ftp> binary ftp> debug ftp> passive ftp> quote MEDIA FLSH ftp> put openwrt-sysupgrade.bin mtd1 Note that this procedure might take up to two minutes. After transfer is complete you need to powercycle the device to boot OpenWRT. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add support for TP-Link Archer C7 v1Christian Lamparter2018-08-193-0/+56
| | | | | | | | | | | | | | | | | | | | TP-Link Archer C7 v1 is a dual band router based on Qualcomm/Atheros QCA9558 + QCA9880. Specification: - 720 MHz CPU - 128 MB of RAM (Various chips) - 8 MB of FLASH (Various chips) - SoC QCA9558 integrated 3T3R 2.4 GHz Wi-Fi - minipcie slot with 3T3R 5 GHz QCA9880-AR1A (unsupported by ath10k!) - 5x 10/100/1000 Mbps Ethernet (AR8327N Switch) - 10x LEDs, 2x software buttons For further informwation on the device, visit the wiki: <https://openwrt.org/toh/tp-link/archer-c7-1750> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: add support for I-O DATA WN-AC1167DGRINAGAKI Hiroshi2018-08-167-208/+245
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I-O DATA WN-AC1167DGR is a 2.4/5 GHz band 11ac router, based on Qualcomm Atheros QCA9557. Specification: - Qualcomm Atheros QCA9557 - 128 MB of RAM (DDR2) - 16 MB of Flash (SPI) - 2T2R 2.4/5 GHz wifi - 2.4 GHz: SoC internal - 5 GHz: QCA988x - 5x 10/100/1000 Mbps Ethernet - 6x LEDs, 6x keys (4x buttons, 1x slide switch) - UART header on PCB - Vcc, GND, TX, RX from ethernet port side - 115200n8 Flash instruction using factory image: 1. Connect the computer to the LAN port of WN-AC1167DGR 2. Connect power cable to WN-AC1167DGR and turn on it 3. Access to "http://192.168.0.1/" and open firmware update page ("ファームウェア") 4. Select the OpenWrt factory image and click update ("更新") button 5. Wait ~150 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ath79: fix leds and network for TP-Link TL-WR841 v9/v11Johann Neuhauser2018-08-162-7/+5
| | | | | | | | | Adding tl-wr841-v11 and the rename of tl-wr841n-v9 to tl-wr841-v9 in 01_leds and 02_network script files are missing in commits cc35c91 and 8db6522. Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de> [merged with identical case in 02_network] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: don't use the pcs,cr5000 wps led as usb ledMathias Kresin2018-08-162-5/+1
| | | | | | | If it isn't a usb led, it shouldn't be used as one by default. It is up to the user to add such a (mis)configuration for the board. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: add support for TP-Link MR-3040 v2Dmitry Tunin2018-08-164-1/+178
| | | | | | Add support for the ar71xx supported TP-Link MR-3040 v2. Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
* ath79: add support for Buffalo WHR-G301NINAGAKI Hiroshi2018-08-165-4/+236
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Buffalo WHR-G301N is a 2.4 GHz 11n router, based on Atheros AR7240. Ported from ar71xx target. Specification: - Atheros AR7240 - 32 MB of RAM - 4 MB of Flash - 2.4 GHz 2T2R wifi - 5x 10/100 Mbps Ethernet - 9x LEDs, 4x keys - LED: 8x gpio-leds, 1x ath9k-leds - key: 2x buttons, 1x slide switch - UART header on PCB - Vcc, GND, TX, RX from LEDs side - 115200n8 Flash instruction using factory image: 1. Connect the computer to the LAN port of WHR-G301N 2. Connect power cable to WHR-G301N and turn on it 3. Access to "http://192.168.11.1/" and open firmware update page ("ファーム更新") 4. Select the OpenWrt factory image and click execute ("実行") button 5. Wait ~150 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com> [fix the SUPPORTED_DEVICES to be compatible with the ar71xx image] Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: drop unused get_status_led functionsMathias Kresin2018-08-161-4/+0
| | | | | | | The function isn't used for targets getting the status leds from the devicetree. Signed-off-by: Mathias Kresin <dev@kresin.me>
* treewide: fix upgrade led handlingMathias Kresin2018-08-161-2/+4
| | | | | | | | | | | | The upgrade led is only used if a running led is defined. If no running led is defined, the upgrade led is ignored and upgrade isn't indicated at all. Instead, turn off the running led prior to turning the upgrade led on. In most cases there isn't any visual change, but it allows to use an independent led for upgrade indication. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: use both WNDR3x00 power leds for boot status indicationDmitry Tunin2018-08-151-5/+5
| | | | | | | | | | | Use the orange led by default to match the bootloader/stock firmware behaviour. Turn on the green power led after boot to indicate a finished boot and the orange one off. Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com> [reword commit message, keep orange power led enabled during early kernel boot] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: use both DIR-825 B1 power leds for boot status indicationDmitry Tunin2018-08-151-2/+3
| | | | | | | | | | | Use the orange led by default to match the bootloader/stock firmware behaviour. Turn on the blue power led after boot to indicate a finished boot and the orange one off. Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com> [reword commit message, keep orange power led enabled during early kernel boot] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: add support for indicating the boot state using multiple ledsDmitry Tunin2018-08-1533-37/+157
| | | | | | | | | | | Use diag.sh version used for apm821xx, ipq40xx and ipq806x, which supports different leds for the different boot states. The existing led sequences should be the same as before. Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com> [reword commit message] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: add support for TP-Link TL-WR941N/ND v2/v3Chuanhong Guo2018-08-144-0/+184
| | | | | | | | | | | | | Specification: - SoC: Atheros AR9132 - Flash: 4 MB - RAM: 32 MB - Ethernet: Marvell 88E6060 with 5 FE ports. Flash instruction: Upload the generated factory firmware on web interface. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: add support for TP-Link WR841N/ND v11Johann Neuhauser2018-08-143-1/+42
| | | | | | | | | | | | | | Specification: - SoC: Atheros AR9533 - Flash: 4 MB - RAM: 32 MB - Ethernet: 4x LAN (100M) / 1x WAN (100M) - WiFi: 2.4G 300M Flash instruction: Flash factory image from stock WebUI. Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
* ath79: move TP-Link WR841v9 aliases node from dtsi to dtsJohann Neuhauser2018-08-142-5/+5
| | | | | | | | Move the alias node of the TP-Link WR841v9 and rename the phandle of the qss led to qss_led in preparation for adding the very similar TP-Link WR841v11. Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
* ath79: fix sysupgrade TP-Link WR841v9Johann Neuhauser2018-08-142-2/+1
| | | | | | | Remove SUPPORTED_DEVICES from wr841-v9 because it´s not needed and for consistency rename everything to tl-wr841-v9. Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
* ath79: Add wifi to WNDR3700, WNDR3700v2 and WNDR3800Hannu Nyman2018-08-144-1/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add ath9k wifi capabilities to WNDR3700 family. * use kmod-owl-loader to load firmware from "art" * add wifi to DTS * add wifi LEDs Avoid using the same MAC for eth0 LAN and wlan0 by toggling the eth0 MAC into a locally administered MAC. That is currently done by in user-space by adding a uci config item into /etc/config/network (More elegant solution might be setting it already in preinit phase.) Known issues: * wifi firmware file may not get created on the first boot after flashing on time to bring wifi normally up. Likely the overlay jffs2 is not yet ready for creating the firmware file. "wifi up" may still bring wifi up. Wifi will work normally at subsequent boots. * phy0 and phy1 may get assigned mixed, so that phy0 may be the 5GHz radio instead of the normal 2.4GHz, and vice versa for phy1. Does not happen always, but may happen. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi> [fix the wifi unit address in the dts] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: add support for Pisen WMM003N (Cloud Easy Power)Icenowy Zheng2018-08-143-0/+136
| | | | | | | | | | | | | | | | | | | | | Pisen WMM003N (sold under the name of Cloud Easy Power) is an AR9331-based router and power bank combo device. The device uses a stock firmware modified from OpenWRT for TP-Link TL-WR703N; however some GPIO definition is different on this device with TL-WR703N. An AXP202 PMIC (connected to a 5000mAh battery) and a SD slot are also added, and the stock Flash/RAM configuration is 8MiB/64MiB. The stock firmware is an old and heavily modified OpenWRT-based firmware, which has telnetd defaultly open, and the root password is "ifconfig" (quotation marks not included). The factory image format is not known yet, however the stock firmware ships the OpenWRT's sysupgrade command, and it can be used to install a newer firmware. Due to the lack of the access to the STM8 embedded controller, the SD slot is currently not usable (because it's muxed with the on-board USB port) and the AXP PMIC cannot be monitored. Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
* ath79: drop tl prefix for TP-Link RE450 v2Peter Lundkvist2018-08-132-2/+2
| | | | | | | | This router is called RE450 and the tl prefix was used to identify it as a TP-Link device. Drop the tl prefix since we now have tplink in dts and device name. Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
* ath79: gmac: add parsers for rxd(v)- and tx(d|en)-delay for AR9344Christian Lamparter2018-08-132-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some AR9344 boards do very poorly with the default settings and need custom rxdv-delay, rxd-delay, txd-delay, txen-delay flags to perform reasonably. In this case the WD My Net Wi-Fi Range Extender can not even manage 10Mbps on a 1Gbit link: root@AR9344:~# iperf3 -s ----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- Accepted connection from client [...] [ 5] local [...] connected to client [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 1.09 MBytes 9.16 Mbits/sec [ 5] 1.00-2.00 sec 895 KBytes 7.33 Mbits/sec [ 5] 2.00-3.00 sec 762 KBytes 6.25 Mbits/sec [...] [ 5] 10.00-10.03 sec 17.0 KBytes 4.74 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 5] 0.00-10.03 sec 9.00 MBytes 7.52 Mbits/sec with but with the correct settings in place, it does much better: root@AR9344:~# iperf3 -s ----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- Accepted connection from client [...] [ 5] local [...] connected to client [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 23.1 MBytes 193 Mbits/sec [ 5] 1.00-2.00 sec 23.1 MBytes 194 Mbits/sec [ 5] 2.00-3.00 sec 23.2 MBytes 195 Mbits/sec [...] [ 5] 10.00-10.04 sec 710 KBytes 180 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 5] 0.00-10.04 sec 237 MBytes 198 Mbits/sec The tx data and enable delay bits definitions are taken from Atheros' AR9344 Data Sheet Section "8.6.1 Ethernet Configuration (ETH_CFG)" on page 153. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: add QCA956x GMAC configDavid Bauer2018-08-132-0/+18
| | | | | | This commit adds the ability to configure the GMAC of the QCA956x. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: ar913x: fix eth pll registerChuanhong Guo2018-08-131-1/+1
| | | | | | | PLL for eth0 internal clock on ar913x is at 0x18050014 and AR913X_ETH0_PLL_SHIFT is 20 instead of 17 Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: fix speed applied to MII0/1_CTRL on ar71xx/ar913xChuanhong Guo2018-08-131-2/+2
| | | | | | Currently speed value is applied to interface mode field. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: add WNDR3700 and WNDR3700v2Hannu Nyman2018-08-134-0/+93
| | | | | | | | | | | | Add support for WNDR3700 and WNDR3700v2. They share most things with WNDR3800. Only device IDs and partition structure needs to be set. Note: WNDR3700 (v1) has no NETGEAR_HW_ID, but has also the NA version of the factory image. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* ath79: create WNDR3700 series .dtsi and adjust WNDR3800Hannu Nyman2018-08-133-200/+212
| | | | | | | | | | | | | | | | | Prepare for addition of WNDR3700 and WNDR3700v2 by separating the common parts into wndr3700.dtsi and leaving just the device-specific things into wndr3800.dts The three routers are identical except * device IDs * WNDR3700 (v1) has only 8 MB flash, while others have 16 MB. Partition structure needs to be defined for each device. * (WNDR3800 has 128 MB RAM, but RAM size is not in DTS) Also separate the common parts of the image recipe. (Drop also the initramfs recipe.) Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* ath79: fix eth pll for ar913xChuanhong Guo2018-08-111-1/+1
| | | | | | PLL node is missing syscon in compatible string. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: add support for I-O DATA WN-AC1600DGR2INAGAKI Hiroshi2018-08-115-4/+252
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I-O DATA WN-AC1600DGR2 is a 2.4/5 GHz band 11ac router, based on Qualcomm Atheros QCA9557. Specification: - Qualcomm Atheros QCA9557 - 128 MB of RAM - 16 MB of Flash - 2.4/5 GHz wifi - 2.4 GHz: 2T2R (SoC internal) - 5 GHz: 3T3R (QCA9880) - 5x 10/100/1000 Mbps Ethernet - 6x LEDs, 6x keys (4x buttons, 1x slide switch) - UART header on PCB - Vcc, GND, TX, RX from ethernet port side - 115200n8 Flash instruction using factory image: 1. Connect the computer to the LAN port of WN-AC1600DGR2 2. Connect power cable to WN-AC1600DGR2 and turn on it 3. Access to "http://192.168.0.1/" and open firmware update page ("ファームウェア") 4. Select the OpenWrt factory image and click update ("更新") button 5. Wait ~150 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ath79: add support of D-Link DIR-825 B1Dmitry Tunin2018-08-114-0/+288
| | | | | | Add support for the ar71xx supported D-Link DIR-825 B1 to ath79. Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
* ath79: add ath9k calibration data MAC addresses patchingChristian Lamparter2018-08-111-0/+50
| | | | | | | | | | | | | | | | | | This patch copies over the MAC patching helper functions from lantiq's target/linux/lantiq/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom file. Not all vendors bothered to write the correct MAC addresses for the ath9k wifi into the calibration data. And while ath9k does have some special dt-properties to extract the addresses from a fixed position, there are still devices that require userspace to edit or modify the caldata. In my case, the MAC address for the Wi-Fi device is stored in an unsorted key-value based "nvram" database and there's an existing userspace tool to extract the data. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: add support for TP-Link TL-WDR4900 v2Chuanhong Guo2018-08-114-2/+245
| | | | | | | | | | | | | | Specification: - SoC: Qualcomm Atheros QCA9558 - Flash: 8 MB - RAM: 128 MB - Ethernet: AR8327N with 5 GE ports. - Wireless radio: QCA9558 for 2.4G and AR9580 for 5G. Flash instruction: Upload the generated factory firmware on web interface. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: add support for OCEDO KoalaDavid Bauer2018-08-094-0/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the OCEDO Koala SOC: Qualcomm QCA9558 (Scorpion) RAM: 128MB FLASH: 16MiB WLAN1: QCA9558 2.4 GHz 802.11bgn 3x3 WLAN2: QCA9880 5 GHz 802.11nac 3x3 INPUT: RESET button LED: Power, LAN, WiFi 2.4, WiFi 5, SYS Serial: Header Next to Black metal shield Pinout is 3.3V - GND - TX - RX (Arrow Pad is 3.3V) The Serial setting is 115200-8-N-1. Tested and working: - Ethernet - 2.4 GHz WiFi - 5 GHz WiFi - TFTP boot from ramdisk image - Installation via ramdisk image - OpenWRT sysupgrade - Buttons - LEDs Installation seems to be possible only through booting an OpenWRT ramdisk image. Hold down the reset button while powering on the device. It will load a ramdisk image named 'koala-uImage-initramfs-lzma.bin' from 192.168.100.8. Note: depending on the present software, the device might also try to pull a file called 'koala-uimage-factory'. Only the name differs, it is still used as a ramdisk image. Wait for the ramdisk image to boot. OpenWRT can be written to the flash via sysupgrade or mtd. Due to the flip-flop bootloader which we not (yet) support, you need to set the partition the bootloader is selecting. It is possible from the initramfs image with > fw_setenv bootcmd run bootcmd_1 Afterwards you can reboot the device. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: ag71xx: remove PHY resetChuanhong Guo2018-08-096-22/+6
| | | | | | | | | | | | Bit 8/12 of reset controller which is marked as PHY_RESET/SWITCH_RESET in datasheets will trigger either a reset for builtin switch or assert an external ETH0_RESET_L/ETH1_RESET_L pin, which are usually connected to external PHY/switch. None of them should be triggered every time an interface is brought up in ethernet driver. Remove PHY reset support from ag71xx and definition for them in dtsi. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: add support for Buffalo BHR-4GRV2INAGAKI Hiroshi2018-08-095-0/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Buffalo BHR-4GRV2 is a wired router, based on Qualcomm Atheros QCA9558. Ported from ar71xx target. Specification: - Qualcomm Atheros QCA9558 - 64 MB of RAM - 16 MB of Flash - 5x 10/100/1000 Ethernet - QCA8337N - 4x LEDs, 2x keys - UART header on PCB - Vcc, TX, RX, GND from LED side - 115200n8 Flash instruction using factory image: 1. Connect the computer to the LAN port of BHR-4GRV2 2. Connect power cable to BHR-4GRV2 and turn on it 3. Access to "http://192.168.12.1/" and open firmware update page ("ファームウェア更新") 4. Select the OpenWrt factory image and click update ("更新実行") button 5. Wait ~120 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ath79: fix PLL settings for QCA955xDavid Bauer2018-08-093-2/+10
| | | | | | | | | | | | | | This adds PLL settings for the ethernet ports of the TP-Link TL-WR1043 v2/v3 and the Openmesh OM5P-AC-v2. We also change the PLL-settings in the qca9557.dtsi to match the ones used as default on the ar71xx target. As of 4b9680f138 those devices have broken ethernet ports as the default PLL settings defined in the QCA9557.dtsi are applied which are off for those devices. Signed-off-by: David Bauer <mail@david-bauer.net>