aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/dts
Commit message (Collapse)AuthorAgeFilesLines
* ramips: add support for Asus RT-N11P / RT-N12+ / RT-N12E b1Zoltan HERPAI2017-12-061-0/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | This is a variant of the MT7620N-based Asus routers. Specifications: - MT7620N (580 MHz) - 32 MB RAM - 8 MB Flash - 5x 10/100Mbps Ethernet (built-in switch) - 2.4 GHz WLAN - 2x external, non-detachable antennas - UART (J2) header on PCB (115200 8n1) Flash instructions: 1. Configure PC with static IP 192.168.1.75/24 2. Connect PC with one of LAN ports, press the reset button, power up the router and keep button pressed for around 6-7 seconds. All 4 LEDs will start to blink, which is when the router will accept firmware files via TFTP. No known limitations on firmware filenames, just send it with a TFTP client to 192.168.1.1. 3. Router will download file from server, write it to flash and reboot. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* ramips: add missing reset button for Nexx WT1520INAGAKI Hiroshi2017-11-281-9/+15
| | | | | | | | | | | | | This commit adds missing the GPIO key used as reset button. Nexx WT1520 has a GPIO key for factory reset, but it's not defined in WT1520.dtsi and cannot use it. Drop the UART (full) from the device tree source file, it was never used for this board. Adjust the kernel bootargs accordingly. Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com> [add note about dropped UART (full) to the commit message] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: use pinmux nodes from dtsiMathias Kresin2017-11-2215-132/+32
| | | | | | | Use the pinmux nodes from the included dtsi file instead of adding duplicate nodes. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add missing pinmuxes to SoC dtsiMathias Kresin2017-11-225-2/+58
| | | | | | | Add pinmuxes defined by some board which are including the dtsi files to the dtsi files itself. Allows to reduce duplication. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: backport MT7628 pinmux fixesMathias Kresin2017-11-223-3/+3
| | | | | | | | | | | | According to the datasheet the REFCLK pin is shared with GPIO#37 and the PERST pin is shared with GPIO#36. While at it fix a typo inside the pinmux setup code. The function is called refclk and not reclk. Update device tree source files accordingly. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: fix DCH-M225 supportMathias Kresin2017-11-221-1/+6
| | | | | | | | | | | | | | Setting the pins of the UARTF group to GPIO+I2S at the time the I2C driver loads is to late for the wps GPIO button. The gpio-keys driver fails to load since the pin used by the wps button is not yet set to GPIO. The wps button with the rfkill keycode is essential for this wireless only board. Add the missing sound and I2C kernel modules corresponding to the device nodes. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for ZBT WE3526Felix Fietkau2017-11-161-0/+117
| | | | | | | | | | | | | | | | | This is a variant of the ZBT WG3526 with a few minor modifications. The wifi chips are swapped, and there is no GPIO controllable status LED. There is also no SATA port. Specifications: - MT7621AT (880 MHz) - 512 MB RAM - 16 MB Flash (SPI NOR) - 5x 1Gbps Ethernet (built-in switch) - MT7612E 802.11ac 5 GHz WLAN - MT7603E 802.11n 2.4 GHz WLAN Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: add support for UniElec U7628-01Piotr Dymacz2017-11-142-0/+215
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | UniElec U7628-01 is a router platform board based on MediaTek MT7628AN. The device has the following specifications: - MT7628AN (580MHz) - 64/128/256 MB of RAM (DDR2) - 8/16 MB of flash (SPI NOR) - 5x 10/100 Mbps Ethernet (MT7628 built-in switch) - 1x 2T2R 2.4 GHz Wi-Fi (MT7628) - 1x miniPCIe slot (with PCIe and USB 2.0 buses) - 1x miniSIM slot - 1x microSD slot - 1x USB 2.0 port - 7x single-color LEDs (GPIO-controlled) - 1x bi-color LED (green GPIO-controlled, red -> LED_WLAN# in miniPCIe) - 1x reset button - 1x UART header (4-pins) - 1x SDXC/GPIO header (10-pins, connected with microSD slot) - 1x DC jack for main power (12 V) The following has been tested and is working: - Ethernet switch - miniPCIe slot (tested with modem and Wi-Fi card) - miniSIM slot - sysupgrade - reset button - USB 2.0 port* Due to a missing driver (MMC over GPIO) this is not supported: - microSD card reader * Warning: USB buses in miniPCIe and regular A-type socket are connected together, without any proper analog switch or USB HUB. Installation: This board might come with a different firmware versions (MediaTek SDK, PandoraBox, Padavan, etc.). If your board comes with PandoraBox, you can install LEDE using sysupgrade. Just SSH to the router and perform forced sysupgrade (due to a board name mismatch). The default IP of this board should be: 192.168.1.1 and username/password: root/admin. In case of a different firmware, you can use web based recovery described below. Use the following command to perform the sysupgrade (for the 128MB RAM/16MB flash version): sysupgrade -n -F lede-ramips-mt76x8-u7628-01-128M-16M-squashfs-sysupgrade.bin Recovery: This board contains a Chinese, closed-source bootloader called Breed (Boot and Recovery Environment for Embedded Devices). Breed supports web recovery and to enter it, you keep the reset button pressed for around 5 seconds during boot. Your machine will be assigned an IP through DHCP and the router will use IP address 192.168.1.1. The recovery website is in Chinese, but is easy to use. Click on the second item in the list to access the recovery page, then the second item on the next page is where you select the firmware. In order to start the recovery, you click the button at the bottom. SDXC/GPIO header (J3): 1. SDXC_D3 / I2C_SCLK 2. SDXC_D2 / I2C_SD 3. SDXC_D1 / I2S_DI 4. SDXC_D0 / I2S_WS 5. SDXC_CMD / I2S_CLK 6. SDXC_CLK / GPIO0 7. SDXC_CD / UART_RXD1 8. UART_TXD1 9. 3V3 10. GND Other notes: 1. The board is available with different amounts of RAM and flash. We have only added support for the 128/16 MB configuration, as that seems to be the default. However, all the required infrastructure is in place for making support for the other configurations easy. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com> Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
* ramips: add support for UniElec U7621-06Piotr Dymacz2017-11-142-0/+203
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | UniElec U7621-06 is a router platform board based on MediaTek MT7621AT. The device has the following specifications: - MT7621AT (880 MHz) - 256/512 MB of RAM (DDR3) - 8/16/32/64 MB of FLASH (SPI NOR) - 5x 1 Gbps Ethernet (MT7621 built-in switch) - 1x ASMedia ASM1061 (for mSATA and SATA) - 2x miniPCIe slots (PCIe bus only) - 1x mSATA slot (with USB 2.0 bus for modem) - 1x SATA - 1x miniSIM slot - 1x microSD slot - 1x USB 3.0 - 12x LEDs (3 GPIO-controlled) - 1x reset button - 1x UART header (4-pins) - 1x GPIO header (30-pins) - 1x FPC connector for LEDs (20-pin, 0.5 mm pitch) - 1x DC jack for main power (12 V) The following has been tested and is working: - Ethernet switch - miniPCIe slots (tested with Wi-Fi cards) - mSATA slot (tested with modem and mSATA drive) - miniSIM slot - sysupgrade - reset button - microSD slot Installation: This board might come with a different firmware versions (MediaTek SDK, PandoraBox, Padavan, etc.). If your board comes with PandoraBox, you can install LEDE using sysupgrade. Just SSH to the router and perform forced sysupgrade (due to a board name mismatch). The default IP of this board should be: 192.168.1.1 and username/password: root/admin. In case of a different firmware, you can use web based recovery described below. Use the following command to perform the sysupgrade (for the 256MB RAM/16MB flash version): sysupgrade -n -F lede-ramips-mt7621-u7621-06-256M-16M-squashfs-sysupgrade.bin Recovery: This board contains a Chinese, closed-source bootloader called Breed (Boot and Recovery Environment for Embedded Devices). Breed supports web recovery and to enter it, you keep the reset button pressed for around 5 seconds during boot. Your machine will be assigned an IP through DHCP and the router will use IP address 192.168.1.1. The recovery website is in Chinese, but is easy to use. Click on the second item in the list to access the recovery page, then the second item on the next page is where you select the firmware. In order to start the recovery, you click the button at the bottom. LEDs list (top row, left to right): - LED_WWAN# (connected with pin 42 in LTE/mSATA slot) - Power (connected directly to 3V3) - CTS2_N (GPIO10, configured as "status" LED) - TXD2 (GPIO11, configured as "led4", without default trigger) - RXD2 (GPIO12, configured as "led5", without default trigger) - LED_WLAN# (connected with pin 44 in wifi0 slot) LEDs list (bottom row, left to right): - ESW_P0_LED_0 - ESW_P1_LED_0 - ESW_P2_LED_0 - ESW_P3_LED_0 - ESW_P4_LED_0 - LED_WLAN# (connected with pin 44 in wifi1 slot) Other notes: 1. The board is available with different amounts of RAM and flash. We have only added support for the 256/16 MB configuration, as that seems to be the default. However, all the required infrastructure is in place for making support for the other configurations easy. 2. The manufacturer offers five different wireless cards with MediaTek chipsets, based on MT76x2, MT7603 and MT7615. Images of the board all show that the miniPCIe slots are dedicated to specific Wi-Fi cards. However, the slots are generic. 3. All boards we got access to had the same EEPROM content. The default firmware reads the Ethernet MAC from offset 0xe000 in factory partition. This offset only contains 0xffs, so a random MAC will be generated on every boot of the router. There is a valid MAC stored at offset 0xe006 and this MAC is shown as the WAN MAC in the bootloader. However, it is the same on all boards we have checked. Based on information provided by the vendor, all boards sold in small quantities are considered more as samples for development purposes. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com> Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
* ramips: add support for TP-Link TL-WR840N v5Robert Marko2017-11-081-0/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link TL-WR840N v5 is simple N300 router with 5-port FE switch and non-detachable antennas, based on MediaTek MT7628NN (aka MT7628N) WiSoC. Specification: - MT7628N/N (580 MHz) - 64 MB of RAM (DDR2) - 4 MB of FLASH - 2T2R 2.4 GHz - 5x 10/100 Mbps Ethernet - 2x external, non-detachable antennas - UART (J1) header on PCB (115200 8n1) - 1x LED (GPIO-controlled), 1x button * LED in TL-WR840N v5 is a dual-color, dual-leads type which isn't (fully) supported by gpio-leds driver. This type of LED requires both GPIOs state change at the same time to select color or turn it off. For now, we support/use only the green part of the LED. Orange LED is registered so you can later use it for your own purposes. Flash instruction: Unlike TL-WR840N v4 flashing through WEB UI works in v5. 1. Download lede-ramips-mt76x8-tl-wr840n-v5-squashfs-sysupgrade.bin image. 2. Go to 192.168.0.1 3. Flash the sysupgrade image through Firmware upgrade section of WEB UI. 4. Wait until green LED stops flashing and use the router. Notes: TFTP recovery is broken since TP-Link reused bootloader code for v4 and that does not take into account only 4 MB of flash and bricks the device. So do not use TFTP Recovery or you will have to rewrite SPI flash. They fixed it in later GPL code,but it is unknown which version of bootloader you have. After manually compiling and flashing bootloader from GPL sources TFTP recovery works properly. Signed-off-by: Robert Marko <robimarko@gmail.com>
* ramips: fix Youku-YK1 supportEdmunt Pienkowsky2017-10-271-2/+1
| | | | | | | | | | | | | | | | | | | | | | Remove the ephy-pins from the ethernet device tree node. The ephy-pins are useed to controll the ePHY LEDs and this board doesn't have these. Instead one of the ePHY pins is used in GPIO mode to control the WAN LED. Use the switch LED trigger to control the WAN LED. Move the power LED handling to diag.sh to show the boot status via this LED. Add the missing kernel packages for USB and microSD card reader to the default package selection. Fix the maximum image size value. The board has a 32MByte flash chip. Fixes: FS#1055 Signed-off-by: Edmunt Pienkowsky <roed@onet.eu> [make the commit message more verbose, remove GPIO pinmux for pins not used as GPIOs] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: remove erroneous "wdt rst" DTS entriesKevin Darbyshire-Bryant2017-10-253-3/+3
| | | | | | | | | | | | Remove reference to pinmux group "wdt rst" on EW1200, ZBT-WG2626 and ZBT-WG3526 devices. "wdt rst" is a pinmux function and not a pinmux group. Fixes the following error message during boot: rt2880-pinmux pinctrl: invalid group "wdt rst" for function "gpio" Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ramips: don't enable usb for the WT3020-4MMathias Kresin2017-10-252-9/+8
| | | | | | | | | That device does not have a USB port. It as the same board as the WT3020-8M, but without soldered USB port port. Also the case lacks the opening for the port. Reported-by: Alberto Bursi <alberto.bursi@outlook.it> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for Kimax U25AWF-H1Daniel Kucera2017-10-141-0/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Kimax U-25AWF-H1 is is a 2,5" HDD Enclosure with Wi-Fi/Eth conection and battery, based on MediaTek MT7620A. Patch rewritten from: https://forum.openwrt.org/viewtopic.php?pid=305643 Specification: - MT7620A CPU - 64 MB of RAM - 16 MB of FLASH - 802.11bgn WiFi - 1x 10/100 Mbps Ethernet - USB 2.0 Host - UART for serial console Flash instruction: 1. Download lede-ramips-mt7620-u25awf-h1-squashfs-sysupgrade.bin 2. Open webinterface a upgrade 3. After boot connect via ethernet to ip 192.168.1.1 Signed-off-by: Daniel Kucera <daniel.kucera@gmail.com> [fix reset button gpio, don't add a lan/wan vlan config for single port board, add -H1 suffix do make sure that this revision of the board is supported/tested] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: keep Archer C20 Power LED On during bootSergey Ryazanov2017-10-041-0/+1
| | | | | | | | Keep Archer C20 Power LED in the same state as it was configured by bootloader (keep it hightlighed) to avoid unexpectable LED turning off during kernel boot. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* ramips: improve Xiaomi Mi Router 3G supportKevin Darbyshire-Bryant2017-09-281-21/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit improves support for the Xiaomi Mi Router 3G originally added in commit 6e283cdc0da25928f8148805ebef7f8f2b769ee8 Improvements: - Remove software watchdog as hardware watchdog now working as per commit 3fbf3ab44f5cebb22e30a4c8681b13341feed6a6 for all mt7621 devices. - Reset button polarity corrected - length of press determines reboot (short press) vs. reset to defaults (long press) behaviour. - Enable GPIO amber switch port LEDs on board rear - lit indicates 1Gbit link and blink on activity. Green LEDs driven directly by switch indicating any link speed and tx activity. - USB port power on/off GPIO exposed as 'usbpower' - Add access to uboot environment settings for checking/setting uboot boot order preference from user space. Changes: - Front LED indicator is physically made of independent Yellow/Amber, Red & Blue LEDs combined via a plastic 'lightpipe' to a front panel indicator, hence the colour behaviour is similar to an RGB LED. RGB LEDs are not supported at this time because they produce colour results that do not then match colour labels, e.g. enabling 'mir3g:red' and 'mir3g:blue' would result in a purple indicator and we have no such label for purple. The yellow, red & blue LEDs have been split out as individual yellow, red & blue status LEDs, with yellow being the default status LED as before and with red's WAN and blue's USB default associations removed. - Swapped order of vlan interfaces (eth0.1 & eth0.2) to match stock vlan layout. eth0.1 is LAN, eth0.2 is WAN - Add 'lwlll' vlan layout to mt7530 switch driver to prevent packet leakage between kernel switch init and uci swconfig uboot behaviour & system 'recovery' uboot expects to find bootable kernels at nand addresses 0x200000 & 0x600000 known by uboot as "system 1" and "system 2" respectively. uboot chooses which system to hand control to based on 3 environment variables: flag_last_success, flag_try_sys1_failed & flag_try_sys2_failed last_success represents a preference for a particular system and is set to 0 for system 1, set to 1 for system 2. last_success is considered *if* and only if both try_sys'n'_failed flags are 0 (ie. unset) If *either* failed flags are set then uboot will attempt to hand control to the non failed system. If both failed flags are set then uboot will check the uImage CRC of system 1 and hand control to it if ok. If the uImage CRC of system is not ok, uboot will hand control to system 2 irrespective of system 2's uImage CRC. NOTE: uboot only ever sets failed flags, it *never* clears them. uboot sets a system's failed flag if that system's was selected for boot but the uImage CRC is incorrect. Fortunately with serial console access, uboot provides the ability to boot an initramfs image transferred via tftp, similarly an image may be flashed to nand however it will flash to *both* kernels so a backup of stock kernel image is suggested. Note that the suggested install procedure below set's system 1's failed flag (stock) thus uboot ignores the last_success preference and boots LEDE located in system 2. Considerable thought has gone into whether LEDE should replace both kernels, only one (and which one) etc. LEDE kernels do not include a minimal rootfs and thus unlike the stock kernel cannot include a method of controlling uboot environment variables in the event of rootfs mount failure. Similarly uboot fails to provide an external mechanism for indicating boot system failure. Installation - from stock. Installation through telnet/ssh: - copy lede-ramips-mt7621-mir3g-squashfs-kernel1.bin and lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin to usb disk or wget it from LEDE download site to /tmp - switch to /extdisks/sda1/ (if copied to USB drive) or to /tmp if wgetted from LEDE download site - run: mtd write lede-ramips-mt7621-mir3g-squashfs-kernel1.bin kernel1 - run: mtd write lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin rootfs0 - run: nvram set flag_try_sys1_failed=1 - run: nvram commit - run: reboot Recovery - to stock. Assuming you used the above installation instructions you will have a stock kernel image in system 1. If it can be booted then it may be used to perform a stock firmware recovery, thus erasing LEDE completely. From a 'working' LEDE state (even failsafe) Failsafe only: - run: mount_root - run: sh /etc/uci-defaults/30_uboot-envtools Then do the steps for 'All' All: - run: fw_setenv flag_try_sys2_failed 1 - run: reboot The board will reboot into system 1 (stock basic kernel) and wait with system red light slowly blinking for a FAT formatted usb stick with a recovery image to be inserted. Press and hold the reset button for around 1 second. Status LED will turn yellow during recovery and blue when recovery complete. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ramips: RT5350F-OLINUXINO: enable ttyS1Zoltan Gyarmati2017-09-281-1/+16
| | | | | | | | | The RT5350F's second UART pins are available on the base module and on the EVB as well, so enable it in the device tree. In order to keep the origian serial port numbering (ttyS0 is the serial console), aliases added for the UART devices. Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
* ramips: RT5350F-OLINUXINO: enable i2cZoltan Gyarmati2017-09-281-0/+4
| | | | | | | The RT5350F i2c pins is available on the base module and on the EVB as well, so enable it in the dts. Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
* ramips: RT5350F-OLINUXINO: invert WiFi LED polarityZoltan Gyarmati2017-09-281-0/+1
| | | | | | | The polarity of WLAN_ACT LED on the base module needs to inverted in order to be 'on' when the WiFi interface is active Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
* ramips: introduce RT5350F-OLINUXINO.dtsiZoltan Gyarmati2017-09-283-140/+76
| | | | | | | | | | The RT5350F-OLINUXINO(-EVB).dts files' content are nearly the same, so to avoid code duplication this patch creates RT5350F-OLINUXINO.dtsi file which covers the base board's features. The corresponding RT5350F-OLINUXINO.dts just includes the new .dtsi and the RT5350F-OLINUXINO-EVB.dts adds the EVB specific GPIO config. Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
* ramips: fix missing mediatek wdtKevin Darbyshire-Bryant2017-09-222-2/+2
| | | | | | | | | | | | | | | mediatek MT7621 soc watchdog DTS id was renamed from "mtk,mt7621-wdt" to "mediatek,mt7621-wdt" when driver upstreamed to kernel 4.5 Update mt7621.dtsi & mt7628an.dtsi definitions to match upstreamed kernel. Restores hardward watchdog functionality on mt7621 devices under linux 4.9 Tested on: MIR3G Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ramips: fix used MAC addresses for Phicomm K2PJiawei Wang2017-09-151-1/+1
| | | | | | | | | | | | | | | The factory partition of the Phicomm K2P contains two MAC addresses. The lower MAC address is at offset 0xe006 and the higher one is at offset 0xe000. Use the lower MAC address as base mac-address which the switch driver increments by one for the second (wan) vlan. The MAC addresses are still inverted in contrast to the stock firmware where the lower MAC address is used for wan. But at least the use of a MAC address not intended/reserved for this particular board is fixed. Signed-off-by: Jiawei Wang <me@jwang.link>
* ramips: fix D240 mini-PCIe power control GPIOsKristian Evensen2017-09-131-3/+14
| | | | | | | | | | | | | | | | In commit b11c51916cb9 ("ramips: Improve Sanlinking D240 config") I made a mistake with regards GPIO numbering. And in addition to specifying the wrong GPIO for controling the power of one of the mini-PCIe, I recently discovered that the power of both slots can be controlled. This patch specifies the correct GPIO for the left-most mini-PCIe slot of the D240 (labeled power_mpcie2 since the slot is attached to SIM2), and adds a GPIO that can be used to control the power of the other mini-PCIe slot (labeled power_mpcie1). Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com> [do not use the gpio active macros for the gpio-export value] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for TP-Link Archer C20 v1Maxim Anisimov2017-09-131-0/+189
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link Archer C20 v1 is a router with 5-port FE switch and non-detachable antennas. It's very similiar to TP-Link Archer C50. Also it's based on MediaTek MT7620A+MT7610EN. Specification: - MediaTek MT7620A (580 Mhz) - 64 MB of RAM - 8 MB of FLASH - 2T2R 2.4 GHz and 1T1R 5 GHz - 5x 10/100 Mbps Ethernet - 2x external, non-detachable antennas - UART (J1) header on PCB (115200 8n1) - 8x LED (GPIO-controlled*), 2x button, power input switch - 1 x USB 2.0 port * WAN LED in this devices is a dual-color, dual-leads type which isn't (fully) supported by gpio-leds driver. This type of LED requires both GPIOs state change at the same time to select color or turn it off. For now, we support/use only the blue part of the LED. * MT7610EN ac chip isn't not supported by LEDE. Therefore 5Ghz won't work. Factory image notes: These devices use version 3 of TP-Link header, fortunately without RSA signature (at least in case of devices sold in Europe). The difference lays in the requirement for a non-zero value in "Additional Hardware Version" field. Ideally, it should match the value stored in vendor firmware header on device. We are able to prepare factory firwmare file which is accepted and (almost) correctly flashed from the vendor GUI. As it turned out, it accepts files without U-Boot image with second header at the beginning but due to some kind of bug in upgrade routine, flashed image gets corrupted before it's written to flash. So, to flash this device we must to prepare image using original firmware from tp-link site with uboot. Flash instruction: Until (if at all) TP-Link fixes described problem, the only way to flash LEDE image in these devices is to use tftp recovery mode in U-Boot. There are two ways to flash the device to LEDE: 1) Using tftp mode with UART connection and original LEDE image - Place lede-ramips-mt7620-ArcherC20-squashfs-factory.bin in tftp server directory - Configure PC with static IP 192.168.0.66/24 and tftp server. - Connect PC with one of LAN ports, power up the router and press key "4" to access U-Boot CLI. - Use the following commands to update the device to LEDE: setenv serverip 192.168.0.66 tftp 0x80060000 lede-ramips-mt7620-ArcherC20-squashfs-factory.bin erase tplink 0x20000 0x7a0000 cp.b 0x80060000 0x20000 0x7a0000 reset - After that the device will reboot and boot to LEDE 2) Using tftp mode without UART connection but require some manipulations with target image - Download and unpack TP-Link Archer C20 v1 firmware from original web site - Split uboot.bin from original firmware by this command (example): dd if=Archer_C20v1_0.9.1_4.0_up_boot(160427)_2016-04-27_13.53.59.bin of=uboot.bin bs=512 count=256 skip=1 - Create ArcherC20V1_tp_recovery.bin using this command: cat uboot.bin lede-ramips-mt7620-ArcherC20-squashfs-factory.bin > ArcherC20V1_tp_recovery.bin - Place ArcherC20V1_tp_recovery.bin in tftp server directory. - Configure PC with static IP 192.168.0.66/24 and tftp server. - Connect PC with one of LAN ports, press the reset button, power up the router and keep button pressed for around 6-7 seconds, until device starts downloading the file. - Router will download file from server, write it to flash and reboot. Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
* ramips: Add support for ZBT WE1026-5GKristian Evensen2017-09-112-0/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ZBT WE1026-5G (http://www.zbtlink.com/products/router/WE1026-5G.html) is the follow-up to the ZBT WE1026 and is based on MT7620. For the previous WE1026, the ZBT WE826 image could be used. However, as the name implies, the -5G comes equipped with a 5GHz wifi radio. As the WE826 only has a 2.4GHz radio, the addition of 5GHz means that a separate image is needed for the WE1026-5G. I suspect that this image will also work on the previous WE1026, but I don't have a device to test with. The WE1026-5G has following specifications: * CPU: MT7620A * 1x 10/100Mbps Ethernet. * 16 MB Flash. * 64 MB RAM. * 1x USB 2.0 port. * 1x mini-PCIe slots. * 1x SIM slots. * 1x 2.4Ghz WIFI. * 1x 5GHz wifi (MT7612) * 1x button. * 3x controllable LEDs. Works: * Wifi. * Switch. * mini-PCIe slot. Only tested with a USB device (a modem). * SIM slot. * Sysupgrade. * Button (reset). Not working: * The 5GHz WIFI LED is completely dead. I suspect the issue is the same as on other devices with Mediatek 5Ghz wifi-cards/chips. The LED is controlled by the driver, and mt76 (currently) does not support this. Not tested: * SD card reader. Notes: * The modem (labeled 3G/4G) and power LEDs are controlled by the hardware. * There is a 32MB version of this device available, but I do not have access to it. I have therefor only added support for the 16MB version, but added all the required infrastructure to make adding support for the 32MB version easy. Installation: The router comes pre-installed with OpenWRT, including a variant of Luci. The initial firmware install can be done through this UI, following normal procedure. I.e., access the UI and update the firmware using the sysupgrade-image. Remember to select that you do not want to keep existing settings. Recovery: If you brick the device, the WE1026-5G supports recovery using HTTP. Keep the reset button pressed for ~5sec when booting to start the web server. Set the address of the network interface on your machine to 192.168.1.2/24, and point your browser to 192.168.1.1 to access the recovery UI. From the recovery UI you can upload a firmware image. Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
* ramips: add support for the HNET C108Kristian Evensen2017-09-091-0/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The HNET C108 (http://www.szhwtech88.com/Product-product-cid-100-id-4374.html) is a mifi based on MT7602A, which has the following specifications: * CPU: MT7620A * 1x 10/100Mbps Ethernet. * 16 MB Flash. * 64 MB RAM. * 1x USB 2.0 port. Only power is connected, this port is meant for charging other devices. * 1x mini-PCIe slots. * 1x SIM slots. * 1x 2.4Ghz WIFI. * 1x button. * 6000 mAh battery. * 5x controllable LEDs. Works: * Wifi. * Switch. * mini-PCIe slot. Only tested with a USB device (a modem). * SIM slot. * Sysupgrade. * Button (reset). Not working (also applies to the factory firmware): * Wifi LED. It is always switched on, there is no relation to the up/down state or activity of the wireless interface. Not tested: * SD card reader. Notes: * The C108 has no dedicated status LED. I therefore set the LAN LED as status LED. Installation: The router comes pre-installed with OpenWRT, including a variant of Luci. The initial firmware install can be done through this UI, following normal procedure. I.e., access the UI and update the firmware using the sysupgrade-image. Remember to select that you do not want to keep existing settings. Recovery: If you brick the device, the C108 supports recovery using TFTP. Keep the reset button pressed for ~5sec when booting to trigger TFTP. Set the address of the network interface on your machine to 10.10.10.3/24, and rename your image file to Kernal.bin. Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
* ramips: set ethernet mac address for VoCore2L. D. Pinney2017-08-231-0/+4
| | | | | | This patch sets the mac address for the VoCore2 devices. Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
* ramips: add Xiaomi Mi Router 3G supportPavel Kubelun2017-08-231-0/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for Xiaomi Mi WiFi Router 3G. Short specification: - MT7621AT + MT7603EN + 7612EN - 256MB DDR3 RAM - 128MB NAND flash - 1+2 x 1000M Ethernet - 1x USB 3.0 port - reset button - yellow, blue, red leds Installation through telnet/ssh: - copy lede-ramips-mt7621-mir3g-squashfs-kernel1.bin and lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin to usb disk or wget it from LEDE download site to /tmp - switch to /extdisks/sda1/ (if copied to USB drive) or to /tmp if wgetted from LEDE download site - run: mtd write lede-ramips-mt7621-mir3g-squashfs-kernel1.bin kernel1 - run: mtd write lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin rootfs0 - run: mtd erase kernel0 - run: reboot Originally stock firmware has following partitions: - ... - kernel0 (primary kernel image) - kernel1 (secondary kernel image, used by u-boot in failsafe routine) - rootfs0 (primary rootfs) - rootfs1 (secondary rootfs in case primary fails) - overlay (used as ubi overlay) This commit squashes rootfs0, rootfs1 and overlay partitions into 1, so it can be used by LEDE fully for package installation, resulting in 117,5MiB. This device lacks hw watchdog, so adding softdog instead (stock does the same). Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
* ramips: add support for the VoCore2 LiteL. D. Pinney2017-08-113-50/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VoCore2 Lite uses the same PCB as the Vocore2. This patch moves the common VoCore2 parts into dtsi. Removed memory node in the device tree source file. Memory is detected automatically. http://vocore.io/ http://vonger.net/ http://vonger.cn/ Specifications: - SoC: MediaTek MT7688AN - RAM: 64MB DDR2 EtronTech EM68B16CWQH-25H - Flash: 8MB NOR SPI Flash GigaDevice GD25Q64CWIG - Wireless: Built into MT7688AN with onboard IPEX connector Firmware installation: - VoCore2-Lite ships with firmware forked from OpenWrt. - Installation from the bootloader is recommended. - If using luci/sysupgrade use the -n option (do not keep settings) original firmware uses a modified proprietary MediaTek wireless driver. - The wireless is disabled by default in LEDE. - If reverting to factory firmware using the bootloader is recommended. Signed-off-by: L. D. Pinney <ldpinney@gmail.com> Tested by: Noble Pepper <noblepepper@gmail.com>
* ramips: fix WHR-1166D WAN portMathias Kresin2017-08-111-1/+1
| | | | | | | | | | | | By adding the ICPlus IP1001 phy driver an already set RGMII delay mode is reset during driver load. Set the rgmii rx delay to fix corrupt/no packages in case the WAN port negotiates to 1000MBit. Fixes: FS#670 Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: ArcherC50v1: fix wlan2g MAC addressThibaut VARENE2017-08-061-0/+2
| | | | | | | | | | By default the wlan eprom contains the generic ralink MAC which is not the vendor (TP-Link) one. Based on OFW bootlog, it appears that addresses are decremented from the ethernet MAC. This patch fixes the MAC address for wlan2g in line with OFW. Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
* ramips: move common parts into dtsiMathias Kresin2017-08-0315-690/+379
| | | | | | | Move the common parts of boards with multiple flash size variants into dtsi files. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: update device tree source filesL. D. Pinney2017-08-03212-1103/+1343
| | | | | | | | Use the GPIO dt-bindings macros and add compatible strings in the ramips device tree source files. Signed-off-by: L. D. Pinney <ldpinney@gmail.com> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: Add support for Netgear EX3800Thibaut VARENE2017-08-031-1/+1
| | | | | | | | | | | | The Netgear EX3800 is essentially an EX3700 with a mains output socket. Both devices use the exact same firmware image (original firmware is named EX3700-EX3800-version.chk). This patch adds suport by renaming the EX3700 device to EX3700/EX3800 and updating the necessary glue. Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
* ramips: cleanup AsiaRF AWM002 eval board supportMathias Kresin2017-08-036-160/+128
| | | | | | | | | | | Cleanup the dtsi files and remove one layer of dtsi. Set the size of the firmware partition to a value matching the flash size from the board (variant) name. Remove the usb led trigger. There is neither a default config for the usb led trigger nor a LED for usb activity indication. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: drop AsiaRF AWM003 eval boardMathias Kresin2017-08-031-65/+0
| | | | | | | Everything is identical to the AWM002 8m eval board. No need to duplicate it once more. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: drop Edimax BR-6425 supportMathias Kresin2017-08-031-73/+0
| | | | | | Code to build an image for the Edimax BR-6425 never existed. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add missing partitionsMathias Kresin2017-08-032-9/+57
| | | | | | The partitions were lost during migration to device tree. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: Archer C50v1: fix power ledThibaut VARENE2017-07-291-0/+1
| | | | | | | | | | 01_leds had a workaround for the power led to compensate for the inverted GPIO state. This patch was missing from my previous commit. Signed-off-by: Thibaut VARENE <hacks@slashdirt.org> [add the power led default-state which was omitted in the last commit by me] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: Archer C50v1: fix LEDs active levelsThibaut VARENE2017-07-291-2/+2
| | | | | | | | | | All LEDs GPIOs are active low on this device. WAN and POWER states were inverted. Add default state for power. Tested on Archer C50v1. Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
* ramips: mt7621: add compatible stringsL. D. Pinney2017-07-2925-0/+27
| | | | | | | Add compatible strings to all mt7621 based device tree source files to fix formal issues. Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
* ramips: add support for Loewe WMDR-143NOliver Fleischmann2017-07-271-0/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The WMDR-143N is a small module originally used as a Wifi client in some Loewe smart TV sets. It is sold cheaply at german surplus shops. The module contains a RT3662 SOC. Specifications: - 500 MHz CPU Clock - 1x 10/100Mbps Ethernet (pin header) - 32 MB of RAM - 8 MB of FLASH - 2T3R 2.4/5 GHz (SOC internal) - 3 Antennas on PCB - UART pads on PCB (J3: 1 = +3.3V, 2 = RX, 3 = TX, 4 = GND), TX and RX are 3,3V only! The square hole is pin 1 - Power supply pads on PCB (J6: 1 and 2 = +5V, 3 and 4 = GND) The square hole is pin 1 The original firmware has two identical kernel/rootfs images and two "Factory" calibration data blocks in flash. The LEDE image leaves only the first "Factory" block in place and uses both "Kernel" blocks and the redundant "Factory" block together to gain enough space for the jffs2 partition. Flash instructions: You need UART and Ethernet connections to flash the board. Use the LEDE "sysupgrade.bin" image with tftp. Apply power to the board and in the first 5 seconds, hit 2 to select TFTP upload. The bootloader asks for board- and server IP addresses and filename. Alternate method: With the vendor firmware running, assign an IP address to the ethernet port, tftp the firmware image to /tmp and write to mtd4 ("KernelA"). Signed-off-by: Oliver Fleischmann <ogf@bnv-bamberg.de> [remove pinctrl node from dts, no pin is used as GPIO] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ralink: fix rcu_sched stalls on mt7621John Crispin2017-07-261-0/+13
| | | | | | | | there were 2 bugs *) core1 came up with a bad bogo mips, looks like the clock needed time to stabilize *) HPT frequency was not set making r4k timers not come up properly Signed-off-by: John Crispin <john@phrozen.org>
* ramips: add support for the GnuBee Personal Cloud OneL. D. Pinney2017-07-251-0/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GnuBee Personal Cloud One crowdfunded on https://www.crowdsupply.com It is a low-cost, low-power, network-attached storage device. Specifications: - SoC: MediaTek MT7621AT - RAM: DDR3 512 MB - Flash: 32 MB - Six SATA ports for 2.5" Drives - One micro SDcard - One USB 3.0 - Two USB 2.0 - Gigabit Ethernet: 1 x WAN and 1 x LAN - UART 3.5mm Audio Jack or 3 pin header - 57600 8N1 - Four GPIOs available on a pin header Flash instructions: The GnuBee Personal Cloud One ships with libreCMC installed. libreCMC is a Free Software Foundation approved fork of LEDE/OpenWrt. As such one can upgrade using the webinterface or sysupgrade. Das U-Boot has multiple options for recovery or updates including : - USB - http - tftp Signed-off-by: L. D. Pinney <ldpinney@gmail.com> [use switchdev led trigger, all interfaces are in vlan1; rename leds according to board.d setting; remove ge2 group from the pinmux, this group doesn't exist in the driver] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: fix wps button gpio for DWR-512Giuseppe Lippolis2017-07-251-1/+1
| | | | | | The WPS button is at GPIO#7. Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
* ramips: DTS: VoCore2 improvements/fixesPaul Wassi2017-07-251-22/+3
| | | | | | | | | | | The VoCore2 features 128MB of RAM, therefore set memory in DTS to 128*1024*1024 = 0x8000000 The board's LED is connected to GND, set it to ACTIVE_HIGH here. Make serial console working again on kernel 4.9 by change of pinmux configuration. Signed-off-by: Paul Wassi <p.wassi@gmx.at>
* ramips: add support for TP-Link RE350Alex Maclean2017-07-251-0/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | The TP-Link RE350 is a wall-wart AC1200 range extender/access point with a single gigabit ethernet port and two non-detachable antennas, based on the MT7621A SoC with MT7603E and MT7612E radios. Firmware wise it is very similar to the QCA based RE450. SoC: MediaTek MT7621A (880MHz) Flash: 8MiB (Winbond W25Q64) RAM: 64MiB (DDR2) Ethernet: 1x 1Gbit Wireless: 2T2R 2.4Ghz (MT7603E) and 5GHz (MT7612E) LEDs: Power, 2.4G, 5G (blue), WPS (red and blue), ethernet link/act (green) Buttons: On/off, LED, reset, WPS Serial header at J1, 57600 8n1: Pin 1 TX Pin 2 RX Pin 3 GND Pin 4 3.3V Factory image can be uploaded directly through the stock UI. Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* ramips: add support for Phicomm K2PChuanhong Guo2017-07-201-0/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It uses one MT7615D radio chip with DBDC mode enabled. This mode allows this single chip act as an 2x2 11n radio and an 2x2 11ac radio at the same time. However mt76 doesn't support it currently so there is no wireless available. Specification: - SoC: MediaTek MT7621AT - Flash: 16 MB - RAM: 128 MB - Ethernet: 1 x WAN (10/100/1000Mbps) and 4 x LAN (10/100/1000 Mbps) - Wireless radio: MT7615D on PCIE0 - UART: 1 x UART on PCB - 57600 8N1 Issue: - Wireless radio doesn't work due to the lack of driver. Flash instruction: Using UART: 1. Configure PC with a static IP address and setup an TFTP server. 2. Put the firmware into the tftp directory. 3. Connect the UART line as described on the PCB. 4. Power up the device and press 2,then follow the instruction to set device and tftp server IP address and input the firmware file name.U-boot will then load the firmware and write it into the flash. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: fix GL-inet GL-MT300N-V2 WAN/LAN MAC addressJohn Marrett2017-07-151-1/+1
| | | | | | | | | | | | | | Correct MAC address lookup to appropriate offset based on vendor source. Override the WAN MAC to use the same address as LAN. The switch driver increments the base MAC address for the WAN vlan but the stock firmware uses the same MAC address for all interfaces. Based on vendor source commit https://github.com/domino-team/lede-1701/commit/efb0518 Signed-off-by: John Marrett <johnf@zioncluster.ca>
* ramips: add support for TP-Link TL-WR840N v4 and TL-WR841N v13Piotr Dymacz2017-06-293-0/+217
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link TL-WR840N v4 and TL-WR841N v13 are simple N300 routers with 5-port FE switch and non-detachable antennas. Both are very similar and are based on MediaTek MT7628NN (aka MT7628N) WiSoC. The difference between these two models is in number of available LEDs, buttons and power input switch. This work is partially based on GitHub PR#974. Specification: - MT7628N/N (580 MHz) - 64 MB of RAM (DDR2) - 8 MB of FLASH - 2T2R 2.4 GHz - 5x 10/100 Mbps Ethernet - 2x external, non-detachable antennas - UART (J1) header on PCB (115200 8n1) - TL-WR840N v4: 5x LED (GPIO-controlled), 1x button - TL-WR841N v13: 8x LED (GPIO-controlled*), 2x button, power input switch * WAN LED in TL-WR841N v13 is a dual-color, dual-leads type which isn't (fully) supported by gpio-leds driver. This type of LED requires both GPIOs state change at the same time to select color or turn it off. For now, we support/use only the green part of the LED. Factory image notes: These devices use version 3 of TP-Link header, fortunately without RSA signature (at least in case of devices sold in Europe). The difference lays in the requirement for a non-zero value in "Additional Hardware Version" field. Ideally, it should match the value stored in vendor firmware header on device ("0x4"/"0x13" for these devices) but it seems that anything other than "0" is correct. We are able to prepare factory firwmare file which is accepted and (almost) correctly flashed from the vendor GUI. As it turned out, it accepts files without U-Boot image with second header at the beginning but due to some kind of bug in upgrade routine, flashed image gets corrupted before it's written to flash. Tests showed that the GUI upgrade routine copies value of "Additional Hardware Version" from existing firmware into offset "0x2023c" in provided file, _before_ storing it in flash. In case of vendor firmware upgrade files (which all include U-Boot image and two headers), this offset points to the matching field in kernel+rootfs firmware part header. Unfortunately, in case of LEDE factory image file which contains only one header, it points to the offset "0x2023c" in kernel image. This leads to a corrupted kernel and ends up with a "soft-bricked" device. The good news is that U-Boot in these devices contains well known tftp recovery mode, which can be triggered with "reset" button. What's more, in comparison to some of older MediaTek based TP-Link devices, this recovery mode doesn't write whole file at offset "0x0" in flash, without verifying provided file in advance. In case of recovery mode in these devices, first "0x20000" bytes are always skipped and "0x7a0000" bytes from rest of the file are stored in flash at offset "0x20000". Flash instruction: Until (if at all) TP-Link fixes described problem, the only way to flash LEDE image in these devices is to use tftp recovery mode in U-Boot: 1. Configure PC with static IP 192.168.0.66/24 and tftp server. 2. Rename "lede-ramips-mt7628-tl-wr84...-squashfs-tftp-recovery.bin" to "tp_recovery.bin" and place it in tftp server directory. 3. Connect PC with one of LAN ports, press the reset button, power up the router and keep button pressed for around 6-7 seconds, until device starts downloading the file. 4. Router will download file from server, write it to flash and reboot. To access U-Boot CLI, keep pressed "4" key during boot. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>