aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79
Commit message (Collapse)AuthorAgeFilesLines
* ath79: Add switch reset definition in dtsChuanhong Guo2018-07-307-0/+14
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: assert a switch reset if defined in dts.Chuanhong Guo2018-07-301-0/+9
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar724x: Fix reset definition for gmac0/gmac1Chuanhong Guo2018-07-303-12/+12
| | | | | | reset bit 8 is for builtin switch and bit 12 is marked 'reserved' on datasheet. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar7240: Update dts for current ag71xx driverChuanhong Guo2018-07-303-26/+20
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: Explicitly register mdio bus after ag71xx_hw_init() for ar7240Chuanhong Guo2018-07-301-0/+8
| | | | | | | | | | mdio bus isn't a standalone device on ar7240. (and maybe older SoCs?) Use simple-mfd for ar7241 and later SoCs to get mdio1 ready before gmac0 For ar7240 and older chips, manually create platform device after ag71xx_hw_init() in ag71xx_probe()to get mdio0 ready between ag71xx_hw_init() and ag71xx_phy_connect(). Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: Rework mdio clock settingsChuanhong Guo2018-07-302-26/+63
| | | | | | | Allow specifying desired mdio clock frequency in dts. Use default frequency around 5MHz for builtin switch and 2MHz for other mdio bus. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar7242: Update dts for current ag71xx driverChuanhong Guo2018-07-301-2/+16
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar7241: Update dts for current ag71xx driverChuanhong Guo2018-07-306-44/+23
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: Fix support for TP-LINK Archer C7 v2Chuanhong Guo2018-07-303-46/+41
| | | | | | | | | | | | | | | | Remove mdio1 and phy1 handle. AR8327N is controlled through mdio0. Add gmac-config for Archer C7. Remove ucidef_set_interfaces_lan_wan. They can be determined by config_generate automatically. The following are for adding support for WDR4900 v2/Archer C7 v1 and other devices that shared the same machine file in ar71xx: Move mtd partitions to archer-c7-v2.dts. Only Archer C7 v2 has 16M flash. Flash on Archer C7 v1/TL-WDR4900 v2 is 8M. Add label for wlan leds. The default trigger for archer c7/wdr4900 is different. Move wlan5g led to archer-c7-v2.dts. 5G led on WDR4900 is connected to ar9380. Move rfkill definition to archer-c7-v2.dts. There is no such a button on wdr4900 v2. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: qca955x: Update dts for current ag71xx driverChuanhong Guo2018-07-301-2/+2
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: qca956x: Update dts for current ag71xx driverChuanhong Guo2018-07-302-4/+31
| | | | | | | | enable mdio1 by default because mdio1 node is a subnode of eth1 and eth1 node is a "simple-mfd", which makes mdio1 disabled when eth1 isn't enabled. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: qca953x: Add chosen node and specify console in bootargsChuanhong Guo2018-07-301-0/+4
| | | | | | | Most qca devices use 115200n8 as it's default uart baudrate. Add 'chosen' node for qca953x like other SoCs in ath79 target. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: qca953x: Update dts for current ag71xx driverChuanhong Guo2018-07-302-30/+36
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: update qca9533 to new irq driverLucian Cristian2018-07-302-24/+28
| | | | | | | | | | | | | | | | Commit c7efc93 renamed controller name to qca,ar9340-intc and added some functions but qca9533.dtsi was overlooked. Correct the dtsi and adust it to the new format Add gmac and correct reset for cascaded irq and build-in switch Also add the reference clock to soc dtsi so we don't have to have it in every dts Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com> Remove switch reset definition Fix gmac compatible string (We only need SW_PHY_SWAP and SW_PHY_ADDR_SWAP on qca953x so use ar9330-gmac instead of ar9340-gmac.) Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar933x: Update dts for current ag71xx driverChuanhong Guo2018-07-307-81/+42
| | | | | | | | gmac0 is always connected to switch phy4 and mdio1 is always needed. So add phy handle for eth0 and enable mdio1 by default. Move fixed-link for gmac1 from device dts to ar9331.dtsi because gmac1 is always connected to builtin switch. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ar934x: Update dts for current ag71xx driverChuanhong Guo2018-07-303-4/+42
| | | | | | | | | Enable mdio1 by default because mdio1 is needed when eth1 is enabled. PS: If a ar9341 device has only one port and you only want to use gmac0, change compatible of gmac1 to "syscon", "simple-mfd" in dts. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: Make builtin switch driver a separated moduleChuanhong Guo2018-07-302-68/+84
| | | | | | | | | This patch did several things: 1. Probe the builtin switch as a separated mdio device. 2. Register a separated mdio bus for builtin switch. 3. Use generic mdio read/write function instead of calling ag71xx_mdio_mii_read/write directly. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: Split mdio driver into an independent platform device.Chuanhong Guo2018-07-304-84/+78
| | | | | | | We need to have mdio1 belonging to gmac1 initialized before gmac0. Split it into a separated mdio device to get both mdios ready before probing gmac. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: Remove ar7240_set_addr and ag71xx_ar7240_startChuanhong Guo2018-07-303-29/+1
| | | | | | | | The builtin switch has it's initial valid mac address(00:00:01:00:00:00). Since the builtin switch is an independent device, setting mac address of gmac1 to builtin switch isn't a good idea and this makes it impossilbe to split builtin switch apart as an independent platform device. Remove these functions and apply default VLAN during initialization as a preparation for further driver splitting. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: ag71xx: Split gmac config into separated file and add support for ↵Chuanhong Guo2018-07-305-58/+121
| | | | | | ar934x/qca955x. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: Fix mac reset and gmac compatible in ar934x.dtsiChuanhong Guo2018-07-301-5/+11
| | | | | | | Also add phy-mode and fixed-link as gmac1 is always connected to the builtin switch. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: Port PowerCloud Systems CAP324 supportDaniel F. Dickinson2018-07-305-0/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CAP324 was an AP for a NaaS offering that is now defunct. While previously supported in the ar71xx arch, there were some errata (to be fixed shortly). Notable differences from ar71xx support: 1) The method of getting the ath9k firmware for the PCIe 2ghz wifi has changed (due to changes in how the arch handles this), since this device doesn't use the EEPROM except to get the MAC address of the wifi. 2) /etc/config/wireless will need to be regenerated as the path(s) to the wireless device(s) have changed. 3) ath79 OpenWrt firmware no longer supports build an image that allows reverting to stock firmware (as the cloud service no longer exists, the stock firmware is useless), instead using all of the flash for image and overlay (less u-boot/env and art). 4) Initial network config treats the ethernet port as a Lan port with the standard default address (192.168.1.1 unless changed in .config --e.g. via menuconfig) instead of using DHCP (this was the default for the stock firmware, however for openwrt use this is rather confusion and counter-productive as the user has a harder time finding the device on the network. Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
* ath79: Port PowerCloud Systems CR5000 supportDaniel F. Dickinson2018-07-304-0/+246
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add ath79 arch support for PowerCloud Systems CR5000. Previously supported under ar71xx (however there are some errors in that support; to be fixed shortly). Info: * This board is based on the Atheros DB120 reference design, but doesn't use the on-board switch. Instead it attachs GMAC0 to an AR8327 switch. * It only uses GMAC0 and the WAN is simply a VLAN in the stock firmware. * It has 64MB RAM and 8MB flash. * In the dts version we get rid of using 'open-drain' for the AR8327 LED controls. * As with the platform data version we disable JTAG as this conflicts with one of the pair of GPIO's required for the power/status LED (GPIO2 and GPIO4 are used for this LED). * The pcie card wifi has an EEPROM but gets it's MAC address from the ART partition. * The SoC wifi (2.4 GHz) is all from the ART. * The USB is support comes from the SoC. NB. This is actually an AR9342 rather than AR9344 but we use the 9344 definitions because there are no relevant differences for this board. NB: Building only images that don't support reverting to the old cloud-based firmware as the Skydog cloud service for the CR5000 no longer exists. Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
* ath79: fix OCEDO RaccoonDavid Bauer2018-07-252-0/+5
| | | | | | | | | | | The OCEDO Raccoon only has one ethernet port, but currently uci sections for WAN and LAN are created. Additionally, newer versions of the devices U-Boot (units with SteelWRT) set the kernel-cmdline and therefore overwrite the partition-layout. We fix this by overwriting the cmdline supplied by the bootloader. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: fix TP-Link Archer C7 v2 wlan1 MAC addressAleksandr V. Piskunov2018-07-181-0/+1
| | | | | | | | | | | | The mac address for the 2.4 wireless need to be decremented by one. Correct MAC adress increments for this board are: wlan0 (5GHz) : -2 wlan1 (2.4GHz) : -1 eth1 (LAN) : 0 eth0 (WAN) : 1 Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com>
* kernel: only optimized for size if small_flashMathias Kresin2018-07-121-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | Add a new config option to allow to select the default compile optimization level for the kernel. Select the optimization for size by default if the small_flash feature is set. Otherwise "Optimize for performance" is set. Add the small_flash feature flag to all (sub)targets which had the optimization for size in their default kernel config. Remove CC_OPTIMIZE_FOR_* symbols from all kernel configs to apply the new setting. Exceptions to the above are: - lantiq, where the optimization for size is only required for the xway_legacy subtarget but was set for the whole target - mediatek, ramips/mt7620 & ramips/mt76x8 where boards should have plenty of space and an optimization for size doesn't make much sense - rb532, which has 128MByte flash Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: add support for OCEDO RaccoonDavid Bauer2018-07-083-0/+186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the OCEDO Raccoon SOC: Atheros AR9344 RAM: 128MB FLASH: 16MiB WLAN1: AR9344 2.4 GHz 802.11bgn 2x2 WLAN2: AR9382 5 GHz 802.11an 2x2 INPUT: RESET button LED: Power, LAN, WiFi 2.4, WiFi 5 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. NOTE: The U-Boot won't boot with the serial attached. Boot the device without serial attached and attach it after 3 seconds. 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 'raccoon-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 'raccoon-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: disable unused drivers for tiny targetLucian Cristian2018-07-072-8/+8
| | | | | | | | | | | Shrink the tiny kernel by moving all switch and ethernet phy drivers to the generic kernel config instead of the target kernel config. All boards in the tiny and nand target are either ar7240 or ar9331 based, which don't support external xMII and therefore no external ethernet phy can be connected. None of the boards uses a realtek switch either. Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* ath79: optimize ath79 tiny target for sizeLucian Cristian2018-07-071-0/+2
| | | | | | the speed impact on tiny target is minimal and worth the size gained Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* ath79: add support for UniFi AC-Mesh ProChristoph Krapp2018-07-076-23/+44
| | | | | | | | | The Unifi AC-Mesh Pro has identical hardware to the Unifi AC-Pro except USB support. Furthermore for setting parameters like antenna gain it is helpful to know the exact device variant. Signed-off-by: Christoph Krapp <achterin@googlemail.com>
* ath79: remove bs-partition ro-flag for UniFi AC devicesChristoph Krapp2018-07-041-1/+0
| | | | | | | | | | | | This removes the read-only flag from the bs (bootselect) partition on UniFi AC devices. This allows to correct the indicator from which partition the device is booting its kernel from. See also: - freifunk-gluon/gluon#1301 - https://bugs.lede-project.org/index.php?do=details&task_id=662 Signed-off-by: Christoph Krapp <achterin@googlemail.com>
* ath79: swap TP-Link Archer C7 v2 USB port LED and GPIO namesAleksandr V. Piskunov2018-07-041-6/+6
| | | | | | | | | TP-Link Archer C7 v2 USB port LED and GPIO names are in incorrect order, i.e. in order to match actual user visible labels, usb1 should be usb2, and vice versa. This patch swaps LED and GPIO power control node names. Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com>
* ath79: drop mv88e6063 switch driverMathias Kresin2018-07-041-289/+0
| | | | | | | | Due do a missing KCONFIG isn't selectable nor enabled in the target kernel config. Drop it for now and enable/add the driver at the time it is required. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: add support for TP-Link RE450 v2Peter Lundkvist2018-07-026-1/+223
| | | | | | | | | | | | | | | | | | | | | | | | TP-Link RE450 v2 is a dual band router/range-extender based on Qualcomm/Atheros QCA9563 + QCA9880. Specification: - 775 MHz CPU - 64 MB of RAM (DDR2) - 8 MB of FLASH (SPI NOR) - 3T3R 2.4 GHz - 3T3R 5 GHz - 1x 10/100/1000 Mbps Ethernet (AR8033 PHY) - 7x LED, 4x button - UART header on PCB (needs unmounted R64 & R69 0201 resistors/jumpers) Flash instruction: Apply factory image in OEM firmware web-gui. U-Boot does not seem to have any recovery functions, so debricking requires connection via UART. Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
* ath79: port TP-Link TL-WR741ND v4 and TL-WR740ND v4Rocco Folino2018-07-026-0/+224
| | | | | | | | | | This patch ports the TP-Link TL-WR741ND v4 and TL-WR740ND v4 to the ath79 target. Because the two devices share the same hw layout, this patch adds a common .dtsi which is included by the two .dts. Signed-off-by: Rocco Folino <rocco@folino.io>
* ath79: add pinmux to ar9330Rocco Folino2018-07-021-0/+18
| | | | | | | This patch adds the pinmux support to the ar9330 used to disable the JTAG or to enable switch LEDs Signed-off-by: Rocco Folino <rocco@folino.io>
* ath79: add support for Unifi AC MeshAdrian Schmutzler2018-06-286-19/+40
| | | | | | | | | The Unifi AC Mesh is equivalent to the Unifi AC Lite. However, for setting certain parameters with the flashed device it is helpful that the devices know their variant (e.g. automatically setting antenna gain for the different antennas in Lite and Mesh). Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for more AR7241 TP-Link boardsDmytro Smyrnov2018-06-288-0/+266
| | | | | | | | | | | Its common AP99(AR7241) platform with following devices: TP-Link TL-WR841N/ND v7 (SoC AR7241 / Wifi AR9287 / without USB) TP-Link TL-MR3220 v1 (SoC AR7241 / Wifi AR9285 / USB support) TP-Link TL-MR3420 v1 (SoC AR7241 / Wifi AR9287 / USB support) Signed-off-by: Dmytro Smyrnov <dioptimizer@hotmail.com> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath79: small wr1043nd-v4 fixesLucian Cristian2018-06-284-23/+36
| | | | | | | | | | | | | | | - fix sysupgrade check - move usb to v4 dts because v5 doesn't have it - make wan mac address behave like ar71xx target - add orange wan led support, it can be userspace activated like: on: echo default-on > /sys/class/leds/tp-link\:orange\:wan/trigger off: echo none > /sys/class/leds/tp-link\:orange\:wan/trigger Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* ath79: add support for Ubiquiti UniFi AC-ProLucian Cristian2018-06-286-126/+178
| | | | | | | | rework the dts to a common unifi-ac dtsi pro network is connected via phy0 and has usb ports lite network is connected via phy4 without usb ports Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* ath79: sync naming of Ubiquiti devicesAdrian Schmutzler2018-06-284-7/+8
| | | | | | | Use a Unifi AC Lite board-/image name consistent with other Ubiquiti devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: Remove all memory nodes defined in dtsChuanhong Guo2018-06-2824-120/+0
| | | | | | | This target can automatically detect the correct memory size and we've been using it for long in ar71xx. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* treewide: gpio-export: add error handlingMathias Kresin2018-06-281-1/+3
| | | | | | | | Check if the GPIO is valid (or set at all). If no GPIO is set in the devicetree, a gpiolib related kernel warning + stacktrace is shown during boot and gpio-export reports GPIOs as exported albeit none really is. Signed-off-by: Mathias Kresin <dev@kresin.me>
* firmware-utils: tplink-safeloader: switch tl-wr1043nd-v4 to dynamic partitionsLucian Cristian2018-06-271-1/+1
| | | | | | | Use the new dynamic partition split in tplink-safeloader so we no longer have to worry about kernel size increases. Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* ath79: add support for TP-Link Archer c7 v2Sibren Vasse2018-06-266-1/+278
| | | | Signed-off-by: Sibren Vasse <github@sibrenvasse.nl>
* ath79: add tl-wr2543-v1 supportLucian Cristian2018-06-265-0/+205
| | | | | | to switch between wlan leds we need a userspace implementation Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* ath79: add support for ON Networks N150RZoltan HERPAI2018-06-265-2/+32
| | | | | | | | | | | | This is a rebranded Netgear WNR612v2, specs are the same. - Atheros AR7240 (Python) @400MHz - flash 4MB - ram 32MB - ethernet 10/100: 1xwan + 2xlan (only two) - radio AR9285 Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* ath79: add Netgear WNR612 v2Zoltan HERPAI2018-06-267-0/+189
| | | | | | | | | | | | | | | Netgear WNR612 v2: - cpu Atheros AR7240 (Python) @400MHz - flash 4MB - ram 32MB - ethernet 10/100: 1xwan + 2xlan (only two) - radio AR9285 As there is a rebranded WNR612v2 called ON Networks N150R, add a dtsi which includes all device support, and add a separate dts for the device only (with a separate one for the subsequent N150R). Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* ath79: ar934x: use irq-ath79-intc driver and enable wmacJohann Neuhauser2018-06-204-9/+66
| | | | Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
* ath79: qca95xx: add new intc2, correct intc3 and add second pcie on qca9557Johann Neuhauser2018-06-203-9/+49
| | | | Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>