aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/image
Commit message (Collapse)AuthorAgeFilesLines
...
* ramips: add support for Xiaomi Mi Router 3 ProOzgur Can Leonard2019-03-131-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware: CPU: MediaTek MT7621AT (2x880MHz) RAM: 512MB DDR3 FLASH: 256MB NAND WiFi: 2.4GHz 4x4 MT7615 b/g/n (Needs driver, See Issues!) WiFI: 5GHz 4x4 MT7615 a/n/ac (Needs driver, See Issues!) USB: 1x 3.0 ETH: 1x WAN 10/100/1000 3x LAN 10/100/1000 LED: Power/Status BTN: RESET UART: 115200 8n1 Partition layout and boot: Stock Xiaomi firmware has the MTD split into (among others) - kernel0 (@0x200000) - kernel1 (@0x600000) - rootfs0 - rootfs1 - overlay (ubi) Xiaomi uboot expects to find kernels at 0x200000 & 0x600000 referred to as system 1 & system 2 respectively. a kernel is considered suitable for handing control over if its linux magic number exists & uImage CRC are correct. If either of those conditions fail, a matching sys'n'_fail flag is set in uboot env & a restart performed in the hope that the alternate kernel is okay. If neither kernel checksums ok and both are marked failed, system 2 is booted anyway. Note uboot's tftp flash install writes the transferred image to both kernel partitions. Installation: Similar to the Xiaomi MIR3G, we keep stock Xiaomi firmware in kernel0 for ease of recovery, and install OpenWRT into kernel1 and after. The installation file for OpenWRT is a *squashfs-factory.bin file that contains the kernel and a ubi partition. This is flashed as follows: nvram set flag_try_sys1_failed=1 nvram set flag_try_sys2_failed=0 nvram commit dd if=factory.bin bs=1M count=4 | mtd write - kernel1 dd if=factory.bin bs=1M skip=4 | mtd write - rootfs0 reboot Reverting to stock: The part of stock firmware we've kept in kernel0 allows us to run stock recovery, which will re-flash stock firmware from a *.bin file on a USB. For this we do the following: fw_setenv flag_try_sys1_failed 0 fw_setenv flag_try_sys2_failed 1 reboot After reboot the LED status light will blink red, at which point pressing the 'reset' button will cause stock firmware to be installed from USB. Issues: OpenWRT currently does not have support for the MT7615 wifi chips. There is ongoing work to add mt7615 support to the open source mt76 driver. Until that support is in place, there are closed-source kernel modules that can be used. See: https://forum.openwrt.org/t/support-for-xiaomi-wifi-r3p-pro/20290/170 Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [02_network remaps, Added link to notes]
* ramips: add support for ALFA Network Tube-E4GPiotr Dymacz2019-03-111-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ALFA Network Tube-E4G is an outdoor, dual-SIM LTE Cat. 4 CPE, based on MediaTek MT7620A, equipped with Quectel EC25 miniPCIe modem. Specification: - MT7620A (580 MHz) - 64/128/256 MB of RAM (DDR2) - 16/32 MB of flash (SPI NOR) - 1x 10/100 Mbps Ethernet, with passive PoE support (24 V) - 1x miniPCIe slot (with PCIe and USB 2.0 buses) - 2x SIM slot (mini, micro) with detect and switch driven by GPIO - 1x detachable antenna (modem main) - 1x internal antenna (modem div) - 1x GPS passive antenna (optional) - 5x LED (all driven by GPIO) - 1x button (reset) - UART (4-pin, 2.54 mm pitch) header on PCB Other: Default SIM slot is selected at an early stage by U-Boot, based on 'default_sim' environment value: 1 or unset = SIM1 (mini), 2 = SIM2 (micro). U-Boot also resets the modem, using #PERST signal, before starting kernel. Flash instruction: You can use the 'sysupgrade' image directly in vendor firmware which is based on OpenWrt (make sure to not preserve settings - use 'sysupgrade -n -F ...' command). Alternatively, use web recovery mode in U-Boot: 1. Power the device with reset button pressed, the LAN LED will start blinking slowly and after ~3 seconds, when it starts blinking faster, you can release the button. 2. Setup static IP 192.168.1.2/24 on your PC. 3. Go to 192.168.1.1 in browser and upload 'sysupgrade' image. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ramips: add support for Belkin F9K1109v1Kip Porterfield2019-03-021-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Device specification: - SoC: Ralink RT3883 (MIPS 74Kc) 500Mhz - RAM: 64Mb - Flash: 8MB (SPI-NOR) - Ethernet: 10/100/1000 Mbps - WLAN Wireless 1: SoC-integrated : 2.4/5 GHz Wireless 2: 2.4 GHz RT3092L - LED: 2x USB, WAN, LAN - Key: WPS, reset - Serial: 4-pin header, (57600,8,N,1), 3.3V TTL, GND, RX, TX, V - J12 marking on board - USB ports: 2 x USB 2.0 Flashing instructions: Option 1 (from bootloader web) - Hold reset button on the back of router when plugging in power (for at-least 10 seconds after plugged in) - Connect to a Lan port - Set computer IP to 10.10.10.3 - Go to http://10.10.10.123 in a web browser - Click the Browse... Button and select the *squashfs.sysupgrade.bin file then click APPLY Option 2 (from the stock admin web) - Go to firmware upgrade - Upload the **factory** image *initramfs.bin first - Boot into openwrt - From Luci web in openwrt upload the *squashfs.sysupgrade.bin Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [added v1 to the compatible identifier, added pciid for the RT3092L, fixed pci unit-address, split out the F9K110X.dtsi to prepare for a possible F9K1103 patch]
* ramips: add TP-Link TL-WR802N-v4 supportMarcel Jost2019-02-281-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the TP-Link TL-WR802N-v4. https://openwrt.org/toh/tp-link/tl-wr802n Specification: - MT7628N (580 MHz) - 64 MB RAM - 8 MB FLASH - 2T2R 2.4 GHz - 1x 10/100 Mbps Ethernet - 1x LED Flash instruction: The only way to flash the image in TL-WR802N v4 is to use tftp recovery mode in U-Boot: 1. Configure PC with static IP 192.168.0.225/24 and tftp server. 2. Rename "openwrt-ramips-mt76x8-tplink_tl-wr802n-v4-squashfs-tftp-recovery.bin" to "tp_recovery.bin" and place it in tftp server directory. 3. Connect PC with the LAN port, press the reset button, power up the router and keep button pressed for around 10 seconds, until device starts downloading the file. 4. Router will download file from server, write it to flash and reboot. Signed-off-by: Marcel Jost <majo@icutech.ch>
* ramips: use generic board detection for Wavlink WL-WN575A3Thomas Vincent-Cross2019-02-281-8/+9
| | | | | | Bring Wavlink WL-WN575A3 in line with other Wavlink ramips devices. Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
* ramips: add support for I-O DATA WN-AC1167GRINAGAKI Hiroshi2019-02-141-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I-O DATA WN-AC1167GR is a 2.4/5 GHz band 11ac router, based on MediaTek MT7620A. Specification: - SoC : MediaTek MT7620A - RAM : DDR2 64 MB - Flash : SPI-NOR 8MB - WLAN : 2.4/5 GHz, 2T2R - 2.4 GHz: MT7620A (SoC) - 5 GHz : MT7612E - Ethernet: 10/100/1000 Mbps (ext. MT7530) - LED/key : 4x/3x (2x buttons, 1x slide-switch) - UART : through-hole on PCB - J2: TX, GND, RX, Vcc from SoC side - 115200n8 Flash instruction using factory image: 1. Boot WN-AC1167GR normaly 2. Access to "http://192.168.0.1/" and open firmware update page ("ファームウェア") 3. Select the OpenWrt factory image and click update ("更新") button to perform firmware update 4. Wait ~150 seconds to complete flashing Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ramips: enable MT7610E 5GHz radio of MT7620a_MT7610e EVBDeng Qingfang2019-02-051-0/+1
| | | | | | This enables MT7610E of the EVB Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: add kmod-mt76x2 to WeVo 11AC NASJu Se Hoon2019-02-051-1/+1
| | | | | | | | The WeVo 11AC NAS has a MT7612E 802.11ac chip on the PCB. Signed-off-by: Ju Se Hoon <joosahoon@gmail.com> [renamed author from Albis-dev to real name, editted commit message] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ramips: add support for Archer C50 v4David Bauer2019-01-261-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the TP-Link Archer C50 v4. It uses the same hardware as the v3 variant, sharing the same FCC-ID. CPU: MediaTek MT7628 (580MHz) RAM: 64M DDR2 FLASH: 8M SPI WiFi: 2.4GHz 2x2 MT7628 b/g/n integrated WiFI: 5GHz 2x2 MT7612 a/n/ac ETH: 1x WAN 4x LAN LED: Power, WiFi2, WiFi5, LAN, WAN, WPS BTN: WPS/WiFi, RESET UART: Near ETH ports, 115200 8n1, TP-Link pinout Create Factory image -------------------- As all installation methods require a U-Boot to be integrated into the Image (and we do not ship one with the image) we are not able to create an image in the OpenWRT build-process. Download a TP-Link image from their Wesite and a OpenWRT sysupgrade image for the device and build yourself a factory image like following: TP-Link image: tpl.bin OpenWRT sysupgrade image: owrt.bin > dd if=tpl.bin of=boot.bin bs=131584 count=1 > cat owrt.bin >> boot.bin Installing via Web-UI --------------------- Upload the boot.bin via TP-Links firmware upgrade tool in the web-interface. Installing via Recovery ----------------------- Activate Web-Recovery by beginning the upgrade Process with a Firmware-Image from TP-Link. After starting the Firmware Upgrade, wait ~3 seconds (When update status is switching to 0%), then disconnect the power supply from the device. Upgrade flag (which activates Web-Recovery) is written before the OS-image is touched and removed after write is succesfull, so this procedure should be safe. Plug the power back in. It will come up in Recovery-Mode on 192.168.0.1. When active, all LEDs but the WPS LED are off. Remeber to assign yourself a static IP-address as DHCP is not active in this mode. The boot.bin can now be uploaded and flashed using the web-recovery. Installing via TFTP ------------------- Prepare an image like following (Filenames from factory image steps apply here) > dd if=/dev/zero of=tp_recovery.bin bs=196608 count=1 > dd if=tpl.bin of=tmp.bin bs=131584 count=1 > dd if=tmp.bin of=boot.bin bs=512 skip=1 > cat boot.bin >> tp_recovery.bin > cat owrt.bin >> tp_recovery.bin Place tp_recovery.bin in root directory of TFTP server and listen on 192.168.0.66/24. Connect router LAN ports with your computer and power up the router while pressing the reset button. The router will download the image via tftp and after ~1 Minute reboot into OpenWRT. U-Boot CLI ---------- U-Boot CLI can be activated by holding down '4' on bootup. Dual U-Boot ----------- This is the first TP-Link MediaTek device to feature a split-uboot design. The first (factory-uboot) provides recovery via TFTP and HTTP, jumping straight into the second (firmware-uboot) if no recovery needs to be performed. The firmware-uboot unpacks and executed the kernel. Web-Recovery ------------ TP-Link integrated a new Web-Recovery like the one on the Archer C7v4 / TL-WR1043v5. Stock-firmware sets a flag in the "romfile" partition before beginning to write and removes it afterwards. If the router boots with this flag set, bootloader will automatically start Web-recovery and listens on 192.168.0.1. This way, the vendor-firmware or an OpenWRT factory image can be written. By doing the same while performing sysupgrade, we can take advantage of the Web-recovery in OpenWRT. It is important to note that Web-Recovery is only based on this flag. It can't detect e.g. a crashing kernel or other means. Once activated it won't boot the OS before a recovery action (either via TFTP or HTTP) is performed. This recovery-mode is indicated by an illuminated WPS-LED on boot. Signed-off-by: David Bauer <mail@david-bauer.net>
* ramips: adjust Netgear R6120 model nameDavid Bauer2019-01-261-1/+1
| | | | | | | Adjust the model string and device title to match other Netgear routers in the ramips target. Signed-off-by: David Bauer <mail@david-bauer.net>
* firmware-utils: mksercommfw: overhaul image creationMathias Kresin2019-01-151-9/+14
| | | | | | | | | | | | | | | | | | | | Move the zip compression into a build recipe. Pad the image using the existing build recipes as well to remove duplicate functionality Change the code to append header and footer in two steps. Allow to use a fixed filename as the netgear update image does. Use a fixed timestamp within the zip archive to make the images reproducible. Due to the changes we are now compatible to the gnu89 c standard used by default on the buildbots and we don't need to force a more recent standard anymore. Beside all changes, the footer still looks wrong in compare to the netgear update image. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: cleanup the RB750Gr3 supportAnton Arapov2019-01-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Always enable the pwr led and use the usr led for boot status indication. Rename nodes in the dts, to match what is recommend in the devicetree specification. Increase the maximum spi frequency to 20MHz and drop the m25p,chunked-io which isn't required on mt7621. Use the BTN_0 keycode for the mode button. This board doesn't have any wireless. Use a more descriptive label for the reset button and the GPIO enabling the usb vcc supply. Use the beeper kernel module for the buzzer. Fix the pinmux to switch only pins used as GPIOs to the GPIO function. Add support for the PoE enable GPIO to the userspace. The PoE power status can be read via GPIO7. Since OpenWrt doesn't have support for reading inputs from userspace, prepare only the pinmux for the GPIO. Signed-off-by: Anton Arapov <arapov@gmail.com> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add RB750Gr3 native supportAnton Arapov2019-01-051-8/+7
| | | | | | | | | | | | | | | | | This patch adds support of MikroTik RouterBOARD 750Gr3, without the need to reflashing the bootloader. Installation through RouterBoot follows the usual MikroTik method https://openwrt.org/toh/mikrotik/common Since the image isn't compatible with RouterBOARD 750Gr3 installations which have replaced the bootloader, the former used userspace boardname is not added to the SUPPORTED_DEVICES, to prevent a brick while trying to upgrade to the image with native support. Signed-off-by: Anton Arapov <arapov@gmail.com> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> Signed-off-by: Mathias Kresin <dev@kresin.me>
* build: move seama commands to image-commands.mkMathias Kresin2018-12-301-12/+0
| | | | | | Move it to image-commands.mk to get rid of duplicate recipes. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: consolidate seama image build codeMathias Kresin2018-12-305-57/+31
| | | | | | | | Create a common template which has the required image build code defined. Add some new variables to pass individual parts to the seama recipes. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for GeHua GHL-R-001Deng Qingfang2018-12-291-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | Specs SoC: MT7621AT RAM: 512MiB Flash: 32MiB MX25L25635F SPI NOR 2.4G: MT7603EN 5G: MT7612EN Ethernet: 4x GE ports (1x WAN, 3x LAN) with link status LEDs USB 3.0 LEDs: POWER, 5G WIFI, 2.4G WIFI, USB, Internet. The last two ones are controlled by GPIO UART: There are 2 UARTs (UARTLITE1/ttyS0 and UARTLITE3/ttyS1) on board. UARTLITE1 is close to LEDs, and UARTLITE3 is close to flash chip. The stock u-boot uses UARTLITE1 by default. Baud rate is 57600 Flash instruction 1. telnet 192.168.9.1 2317, username is "root" and password is "admin" One can alternatively use UART to log in 2. Put OpenWrt firmware in a FAT32 USB drive, and connect it to the router One can alternatively download the firmware via wget through Internet 3. mtd write /path/to/openwrt.bin firmware 4. reboot Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: add support for DLINK DWR-922-E2Simon Quigley2018-12-291-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Very similar to the DWR-921-C1, except has a telephony/RJ11 port (not sure if supported, I didn't try), wireless router with QMI LTE embedded modem is based on the MT7620N SoC. Specification: * MediaTek MT7620N (580 Mhz) * 64 MB of RAM * 16 MB of FLASH * 802.11bgn radio * 5x 10/100 Mbps Ethernet (1 WAN and 4 LAN) * 2x external, detachable (LTE) antennas * UART header on PCB (57600 8n1) * 6x LED (GPIO-controlled) * 1x bi-color Signal Strength LED (GPIO-controlled) * 2x button * JBOOT bootloader The status led has been assigned to the dwr-922-e2:green:signalstrength (lte signal strength) led. At the end of the boot it is switched off and is available for lte operation. Works correctly also during sysupgrade operation. Installation: Apply factory image via d-link http web-gui, or via recovery interface: How to recover/revert to OEM firmware: 1.) Push and hold the reset button and turn on the power. Wait until all LEDs start rapidly blinking (~10sec.) 2.) DHCP should give you an IP in the 192.168.123.0/24 subnet, or set one manually 3.) Upload original factory image via JBOOT http interface at IP 192.168.123.254 4.) If http doesn't work, it can be done with curl command: curl -F FN=@XXXXX.bin http://192.168.123.254/upg where XXXXX.bin is name of firmware file. 5.) You can optionally telnet to 192.168.123.254 before or during the upload and it will report the flashing status, memory address etc. 6.) Once web UI and/or telnet says "Success", power cycle the router, or type "reboot" into the telnet session. Signed-off-by: Simon Quigley <squigley@squigley.net> [squashed commits, word wrap commit message, rename signal strenght led name to match what is used for the DWR-921-C1 since they share the led configuration, add label referenced in the aliases node] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for CreativeBox v1Weijie Gao2018-12-281-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | Hardware: SoC: MT7621 DRAM: 512MB DDR3 Flash: 32MB SPI-NOR WiFi 2.4GHz: MT7603 @ PCIe0 WiFi 5.8GHz: MT7612 @ PCIe1 SATA: ASM1061 @ PCIe2 Interfaces: GBE RJ45 x5 USB3.0 x1 eSATA (with USB2.0) x1 SATA x1 UART x1 I2C x1 JTAG x1 Flash instructions: Through factory bootloader or firmware web interface Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* ramips: add support for Netgear R6350NOGUCHI Hiroshi2018-12-161-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Netgear R6350 is a wireless router, aka Netgear AC1750. Specification: - SoC: Mediatek MT7621AT (2 CPU cores, 4 threads) - RAM: 128MiB (Nanya NT5CC64M16GP-DI) - ROM: 128MiB NAND Flash (Macronix MX30LF1G18AC-TI) - Wireless: for 11b/g/n (upto 300Mbps): MT7603 for 11a/ac (upto 1450Mbps) : MT7615, is not avaliable now - Ethernet LAN speed: up to 1000Mbps - Ethernet LAN ports: 4 - Ethernet WAN speed: up to 1000Mbps - Ethernet WAN ports: 1 - USB ports: 1 (USB 2.0) - LEDs: 4 (all can be controlled by SoC's GPIO) - buttons: 2 - serial ports: unknown Installation through telnet: - Copy kernel.bin and rootfs.bin to a USB flash disk, plug to usb port on the router. - Enable telnet with link: http://192.168.1.1/setup.cgi?todo=debug (login if required, default: admin password) - You will see "Debug Enabled!" - Telnet 192.168.1.1 and login with "root" - ls /mnt/shares/ to find out path of your USB disk. 'myUdisk' for example. - cd /mnt/shares/myUdisk - mtd_write write rootfs.bin Rootfs - mtd_write write kernel.bin Kernel - reboot recovery when bricked: nmrpflash can be used to recover to the netgear firmware if a broken image was flashed. The SC_PART_MAP partition suggests that an on flash partition table exists. After implementing a partition parser/builder for the sercom partition format, the definitions don't match the flash layout used by the stock firmware. It either means the partition format has not yet been completely understood or it isn't used by the stock firmware. For now, use fixed partitions instead. Signed-off-by: NOGUCHI Hiroshi <drvlabo@gmail.com> [apply latest ramips changes and document the on flash partition map issues] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: mt7620: add usb packagesMathias Kresin2018-12-151-4/+16
| | | | | | | | | Add the usb drivers for all boards with enabled ochi/ehci node in the dts file. Fixes: FS#1987 Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: mt7620: remove unnecessary usb packagesMathias Kresin2018-12-151-3/+3
| | | | | | These are either installed as dependency or not required at all. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: mt7620: add usb ohci driverMathias Kresin2018-12-151-6/+6
| | | | | | | Add the USB 1.1 driver for all boards not having a fixed USB 2.0 device attached to the USB bus. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: several fixes for HC5x61Deng Qingfang2018-12-151-5/+5
| | | | | | | | | | | | | | | | | | | | | - Mark other partitions as read-only for HC5x61 - Only enable USB and PCIe for HC5761/HC5861 HC5661 doesn't have a USB port, and there is nothing attached to its PCIe. - Fix HC5761 switch ports HC5761 has only 3 ethernet ports (1x WAN + 2x LAN). Remove unused ports. - Fix HC5861 5GHz radio HC5861 has MT7612EN 5GHz WiFi chip, not MT7610EN. - Fix HC5761/HC5861 WiFi LEDs After 5GHz is enabled, it becomes wlan0. And 2.4GHz would be wlan1. - Fix HC5x61 image size It should be 15872k (0xf80000) Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: drop support for ALLNET ALL0239-3G and Sitecom WL-341 v3Mathias Kresin2018-12-122-179/+0
| | | | | | | | | | | | Beside one exception, no one took care of these two remaining boards still using the legacy image build code during the last two years. Since OpenWrt 14.07 the ALLNET ALL0239-3G image building is broken. The Sitecom WL-341 v3 image build code looks pretty hackish and broken. It's questionable if the legacy image works as all. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: use new image build code for D-Link DCS-930 familyMathias Kresin2018-12-122-33/+16
| | | | | | | | | | | | Drop the factory images and the firmware tool to create them. They don't work any more, since the factory image has an uImage header covering the whole kernel + rootfs. This way the uImage splitter will not be able to find the rootfs and the kernel will panic later on. The factory images were most likely added at a time the board had distinct partitions for kernel and rootfs. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: mt76x8: select only the matching mt76 driverChen Minqiang2018-12-061-2/+8
| | | | | | | | | | | | | | | | | | | | | Select the matching mt76 driver for the PCI wireless of the following devices: - HiWiFi HC5861B - Mercury MAC1200R v2.0 - Netgear AC1200 R6120 - Buffalo WCR-1166DS - ZyXEL Keenetic Extra II - Wavlink WL-WN575A3 Because every device has selected the corresponding mt76 driver, we can include kmod-mt7603 instead of the mt76 metapackage, which used for the wireless of the mt7628 and mt7688 WiSoC. Signed-off-by: Chen Minqiang <ptpt52@gmail.com> [select kmod-mt7603 as target default package, add wireless driver for WL-WN575A3] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: disable sdhc for HC5661AChuanhong Guo2018-12-061-1/+0
| | | | | | | | | | | | | Currently OpenWrt doesn't support switching MT7628 into AP mode (which is done by writing some undocumented registers in MTK SDK) Without doing so, enabling SD breaks 4 FE ports and the SD controller doesn't work since SD pins aren't configured correctly. Disable SDHC on HC5661A to recover the 4 FE ports. Signed-off-by: Chuanhong Guo <gch981213@gmail.com> [drop the sdhci node completely] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: fix Netgear EX3700/EX3800 wireless driver selectionMathias Kresin2018-12-041-1/+1
| | | | | | Fix the typo to select kmod-mt76x2. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for D-Link DWR-118-A1Pawel Dembicki2018-12-031-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DWR-118-A1 Wireless Router is based on the MT7620A SoC. Specification: - MediaTek MT7620A (580 Mhz) - 64 MB of RAM - 16 MB of FLASH - 1x 802.11bgn radio - 1x 802.11ac radio (MT7610EN) - 3x 10/100 Mbps Ethernet (3 LAN) - 2x 10/100/1000 Mbps ICPlus IP1001 Ethernet PHY (1 WAN AND 1 LAN) - 1x internal, non-detachable antenna - 2x external, non-detachable antennas - 1x USB 2.0 - UART (J1) header on PCB (57600 8n1) - 7x LED (5x GPIO-controlled), 2x button - JBOOT bootloader Known issues: - WIFI 5G LED not working - flash is very slow The status led has been assigned to the dwr-118-a1:green:internet led. At the end of the boot it is switched off and is available for other operation. Work correctly also during sysupgrade operation. Installation: Apply factory image via http web-gui or JBOOT recovery page How to revert to OEM firmware: - push the reset button and turn on the power. Wait until LED start blinking (~10sec.) - upload original factory image via JBOOT http (IP: 192.168.123.254) Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
* ramips: mt7620: select only the matching mt76 driverChen Minqiang2018-12-031-24/+27
| | | | | | | | | | | | | Because every device has selected the corresponding mt76 driver, we can now disable the mt76 metapackage by default to make sure that other devices (those don't need mt76) avoid selecting unwanted packages. We can find the hardware specifies and determine the dependencies on these sites: https://wikidevi.com/wiki/ https://openwrt.org/toh/hwdata/ Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
* ramips: mt7620: drop mt76 driver for boards without mt76 wirelessChen Minqiang2018-12-031-4/+4
| | | | | | | These boards don't have a mt76 wireless at all and don't need any of the mt76 family drivers. Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
* ramips: merge relocate compile into build recipeMathias Kresin2018-11-302-10/+5
| | | | | | | Compile the loader if the relocate-kernel image recipe is used and get rid of the legacy build code to do so. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for MTC Wireless Router WR1201Valentín Kivachuk2018-11-301-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MTC Wireless Router WR1201 is the OEM name of the board. It is also sold rebranded as STRONG Dual Band Gigabit Router 1200. Specification: - SoC: MediaTek MT7621A (880 MHz) - Flash: 16 MiB - RAM: 128 MiB - Wireless: 2.4Ghz(MT7602EN) and 5Ghz (MT7612EN) - Ethernet speed: 10/100/1000 - Ethernet ports: 4+1 - 1x USB 3.0 - 1x microSD reader - Serial baud rate of Bootloader and factory firmware: 57600 The OEM webinterface writes only as much bytes as listed in the uImage header field to the flash. Also, the OEM webinterface evaluates the name field of uImage header before flashing (the string "WR1201_8_128") To flash via webinterface, is mandatory to use first initramfs.bin and after (from the OpenWrt) the sysupgrade.bin Some notes: - Some microSD will not work: mtk-sd 1e130000.sdhci: no support for card's volts mmc0: error -22 whilst initialising SDIO card mtk-sd 1e130000.sdhci: no support for card's volts mmc0: error -22 whilst initialising MMC card mtk-sd 1e130000.sdhci: no support for card's volts mmc0: error -22 whilst initialising SDIO card mtk-sd 1e130000.sdhci: card claims to support voltages below defined range mtk-sd 1e130000.sdhci: no support for card's volts mmc0: error -22 whilst initialising MMC card mtk-sd 1e130000.sdhci: no support for card's volts mmc0: error -22 whilst initialising SDIO card mtk-sd 1e130000.sdhci: no support for card's volts mmc0: error -22 whilst initialising MMC card Signed-off-by: Valentín Kivachuk <vk18496@gmail.com>
* ramips: unifiy sysupgrade file extensionsMathias Kresin2018-11-292-8/+7
| | | | | | | Use .bin as file extension where possible. The user doesn't need to that sysupgrade images for NAND boards are tarballs. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: remove duplicate image build variablesMathias Kresin2018-11-291-4/+1
| | | | | | | Remove image build variables which are set to the same value as the default image build recipe. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: bdcom-wap2100: Enable mt7610e 5GHz radioPetr Štetiar2018-11-281-1/+1
| | | | | | | | | | | | The 5GHz radio of this device uses an mt7610e PCI-E chip, which has been recently started to be supported. mt76x0e 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4 mt76x0e 0000:01:00.0: ASIC revision: 76100002 mt76x0e 0000:01:00.0: Firmware Version: 0.1.00 mt76x0e 0000:01:00.0: EEPROM ver:01 fae:00 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ramips: mt7620: add DIR-810L's mt7610e 5 GHz radioRoger Pueyo Centelles2018-11-281-1/+2
| | | | | | | | | | The 5 GHz radio of this device uses an mt7610e pci-e chip, which has been recently added support. Tested on the actual device as AP and client, TCP throughput ~90 Mbps U/D. Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
* ramips: add support for UniElec U7621-06-512M-64M variantNishant Sharma2018-11-281-0/+8
| | | | | | | | | | | | | | | | | | | | | | Add support for UniElec U7621-06 variant with 512MB RAM and 64MB flash. Additional specs are below: CPU: MT7621 (880Mhz) Bootloader: Ralink U-Boot Flash: 64MB - U-Boot identifies as Macronix MX66L51235F - kernel identifies as MX66L51235l (65536 Kbytes) RAM: 512MB Rest of the details as per commit 46ab81e405d2 ("ramips add support for UniElec U7621-06") Signed-off-by: Nishant Sharma <nishant@unmukti.in> [use generic board detection, add firmware partition compatible, extend firmware partition to use all of the remaining flash space, add a maximum image size matching the firmware partition size] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: use generic board detection for Unielec u7621-06Mathias Kresin2018-11-281-8/+9
| | | | | | | | Use the generic board detection for the board instead of the target specific one. Mark the sysupgrade image compatible with the former used userspace boardname to allow an upgrade from earlier versions. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for Wavlink WL-WN570HA1Thomas Vincent-Cross2018-11-281-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the Wavlink WL-WN570HA1, a dual-band PoE wireless router with the following specifications: - CPU: MediaTek MT7688AN 580MHz - Flash: 8MB - RAM: 64MB - Ethernet: 1x 10/100Mbps - 2.4 GHz: 802.11b/g/n SoC, 1T1R, 27 dBm - 5 GHz: 802.11a/n/ac MT7610E, 1T1R, 25 dBm - Antennas: 2x external (1 per radio), detachable - LEDs: 3 programmable + Wi-Fi, WAN/LAN, Power - Buttons: Reset Flashing instructions: Factory U-boot launches a TFTP client if reset button is pressed during power-on. Rename the sysupgrade file and configure TFTP as follows: - Client (WL-WN570HA1) IP: 192.168.10.101 - Server IP: 192.168.10.100 - Filename: firmware.bin Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au> [use generic board detection, add firmware partition compatible] Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: improve BDCOM WAP2100-SK supportMathias Kresin2018-11-261-5/+4
| | | | | | | | | | | | | | | | | | | | | Use the generic board detection instead of the target specific one as all recent additions are doing. Setup the USB led via devicetree (a58535771f11) and include the required driver by default. Merge the led userspace setting with an existing identical case. Use the wps led for boot status indication. Move the partitions into a partition table node (6031ab345df8) and drop needless labels. Drop misplaced cells properties (53624c1702e6). Cleanup the pinmux and only switch pins to gpio functions which a referenced as gpio in the dts. Match the maximum image size with the size of the firmware partition. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: improve Skylab SKW92A supportMathias Kresin2018-11-261-2/+2
| | | | | | | | | | | | | | | | Use the generic board detection instead of the target specific one as all recent additions are doing. Add the wireless led according the gpio number from the datasheet. Rename the board part of the leds to match the name used for the compatible string. Finally, do not hijack the wps led for boot status indication longer than necessary. Merge userspace config into existing cases. Include the manufacture Name in the dts model string. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ramips: add support for Lava LR-25G001Pawel Dembicki2018-11-261-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Lava LR-25G001 Wireless Router is based on the MT7620A SoC. Specification: - MediaTek MT7620A (580 Mhz) - 64 MB of RAM - 16 MB of FLASH - 1x 802.11bgn radio - 1x 802.11ac radio (MT7610EN) - 5x 10/100/1000 Mbps AR8337 Switch (1 WAN AND 4 LAN) - 2x external, detachable antennas - 1x USB 2.0 - UART (J3) header on PCB (57600 8n1) - 8x LED (3x GPIO-controlled), 2x button - JBOOT bootloader Known issues: - Work only three Gigabit ports (3/5, 1 WAN and 2LAN) Installation: Apply factory image via http web-gui or JBOOT recovery page How to revert to OEM firmware: - push the reset button and turn on the power. Wait until LED start blinking (~10sec.) - upload original factory image via JBOOT http (IP: 192.168.123.254) Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
* ramips: Add support for ZTE ZXECS EBG3130 aka BDCOM WAP2100-SKPetr Štetiar2018-11-261-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the bottom sticker it's branded as ZTE ZXECS EBG3130 device, but in factory OpenWrt image it's referenced as BDCOM WAP2100-SK device. Specifications: - SoC: MediaTek MT7620A - RAM: 128 MB - Flash: 16 MB - Ethernet: 5 FE ports - Wireless radio: 2T2R 2.4 GHz and 1T1R 5 GHz (MT7610EN, unsupported) - UART: 1 x UART on PCB marked as J2 (R=RX, T=TX, G=GND) with 115200 8N1 config - LEDs: Power, FE ports 1-5, WPS, USB, RF 2.4G, RF 5G - Other: USB port, SD card slot and 2x external antennas (non-detachable) Flashing instructions: A) The U-Boot has HTTP based firmware upgrade A1) Flashing notes We've identified so far two different batches of units, unfortunately each batch has different U-Boot bootloader flashed with different default environment variables, thus each batch has different IP address for accessing web based firmware updater. * First batch has web based bootloader IP address 1.1.1.1 * Second batch has web based bootloader IP address 192.168.1.250 In case you can't connect to either of those IPs, you can try to get the default IP address via two methods: A1.1) Serial console, then the IP address is visible during the boot ... HTTP server is starting at IP: 1.1.1.1 raspi_read: from:40004 len:6 HTTP server is ready! ... A1.2) Over telnet/SSH using this command: root@bdcom:/# grep ipaddr= /dev/mtd0 ipaddr=1.1.1.1 A2) Flashing with browser * Change IP address of PC to 1.1.1.2 with 255.255.255.0 netmask * Reboot the device and try to reach web based bootloader in the browser with the following URL http://1.1.1.1 * Quickly select the firmware sysupgrade file and click on the `Update firmware` button, this all has to be done within 10 seconds, bootloader doesn't wait any longer If done correctly, the web page should show UPDATE IN PROGRESS page with progress indicator. Once the flashing completes (it takes roughly around 1 minute), the device will reboot to the OpenWrt firmware A3) Flashing with curl sudo ip addr add 1.1.1.2/24 dev eth0 curl \ --verbose \ --retry 3 \ --retry-delay 1 \ --retry-max-time 30 \ --connect-timeout 30 \ --form "firmware=@openwrt-ramips-mt7620-BDCOM-WAP2100-SK-squashfs-sysupgrade.bin" \ http://1.1.1.1 Now power on the router. B) The U-boot is based on Ralink SDK so we can flash the firmware 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 (G=GND, R=RX, T=TX) 4. Power up the device and press 2, 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: Petr Štetiar <ynezz@true.cz>
* ramips: fix ethernet for f5d8235-v2 boardRoman Yeryomin2018-11-261-0/+1
| | | | | | | | | Belkin F5D8235 v2 has two ethernet switches on board. One internal rt3052 and rtl8366rb on rgmii interface. Looks like internal switch settings were lost in translation to device tree infrastructure. Signed-off-by: Roman Yeryomin <roman@advem.lv>
* ramips: add support for Skylab SKW92A in EVBRussell Senior2018-11-261-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifically, SKW92A_E16, described here: http://www.skylabmodule.com/wp-content/uploads/SkyLab_SKW92A_V1.04_datasheet.pdf Specification: - MediaTek MT7628N/N (580 Mhz) - 64 MB of RAM - 16 MB of FLASH - 2T2R 2.4 GHz - 5x 10/100 Mbps Ethernet - 2x u.FL - Power by micro-USB connector at USB1 on EVB - UART via micro-USB connector at USB3 on EVB (57600 8n1) - 5x Ethernet LEDs - 1x WLAN LEDs - 1x WPS LED connected by jumper wire from I2S_CK on J20 to WPS_LED pin hole next to daughter board on EVB - WPS/Reset button (S2 on EVB) - RESET button (S1 on EVB) is *not* connected to RST hole next to daughter board Flash instruction: >From Skylab firmware: 1. Associate with SKYLAP_AP 2. In a browser, load: http://10.10.10.254/ 3. Username/password: admin/admin 4. In web admin interface: Administration / Upload Firmware, browse to sysupgrade image, apply, flash will fail with a message: Not a valid firmware. *** Warning: "/var/tmpFW" has corrupted data! 5. Telnet to 10.10.10.254, drops you into a root shell with no credentials 6. # cd /var 7. # mtd_write -r write tmpFW mtd4 Unlocking mtd4 ... Writing from tmpFW to mtd4 ... [e] 8. When flash has completed, you will have booted into your firmware. >From U-boot via TFTP and initramfs: 1. Place openwrt-ramips-mt76x8-skw92a-initramfs-kernel.bin on a TFTP server 2. Connect to serial console at USB3 on EVB 3. Connect ethernet between port 1 (not WAN) and your TFTP server (e.g. 192.168.11.20) 4. Start terminal software (e.g. screen /dev/ttyUSB0 57600) on PC 5. Apply power to EVB 6. Interrupt u-boot with keypress of "1" 7. At u-boot prompts: Input device IP (10.10.10.123) ==:192.168.11.21 Input server IP (10.10.10.3) ==:192.168.11.20 Input Linux Kernel filename (root_uImage) ==:openwrt-ramips-mt76x8-skw92a-initramfs-kernel.bin 8. Move ethernet to port 0 (WAN) on EVB 9. At new OpenWrt console shell, fetch squashfs-sysupgrade image and flash with sysupgrade. >From U-boot via TFTP direct flash: 1. Place openwrt-ramips-mt76x8-skw92a-squashfs-sysupgrade.bin on a TFTP server 2. Connect to serial console at USB3 on EVB (57600 8N1) 3. Connect ethernet between port 1 (not WAN) an your TFTP server (e.g. 192.168.11.20) 4. Start terminal software (e.g. screen /dev/ttyUSB0 57600) on PC 5. Apply power to EVB 6. Interrupt u-boot with keypress of "2" 7. At u-boot prompts: Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N) Y Input device IP (10.10.10.123) ==:192.168.11.21 Input server IP (10.10.10.3) ==:192.168.11.20 Input Linux Kernel filename (root_uImage) ==:openwrt-ramips-mt76x8-skw92a-squashfs-sysupgrade.bin 8. When transfer is complete or as OpenWrt begins booting, move ethernet to port 0 (WAN). Signed-off-by: Russell Senior <russell@personaltelco.net>
* ramips: select kmod-mt76x0e for TP-Link ArcherC20i and wr902ac-v3Daniel Golle2018-11-252-1/+2
| | | | | | | | | Both devices come with a MediaTek MT7610E 5GHz 802.11ac 1T1R radio which wasn't supported at the time the devices were added to OpenWrt. Now that we got it, include kmod-mt76x0e in images for those devices. Reported-by: Arian Sanusi <openwrt@semioptimal.net> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ramips: fix netgear r6120 factory image generationKoen Vandeputte2018-11-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | as indicated in commit c5bf408ed6bd "(ramips: fix image generation for mt76x8") more rework was needed to fix the other issues. Building on another machine, but using the same arch, showed the application failing again for different reasons. Fix this by completely rewriting the application, fixing following found issues: - buffer overflows, resulting in stack corruption - flaws in memory requirement calculations (too small, too large) - memory leaks - missing bounds checking on string handling - non-reproducable images, by using unitilized memory in checksum calculation - missing error handling, resulting in succes on specific image errors - endianness errors when building on BE machines - various minor build warnings - documentation did not match the code actions (header item locations) - allowing input to be decimal, hex or octal now Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* treewide: use wpad-basic for not small flash targetsMathias Kresin2018-10-162-30/+30
| | | | | | | | | | | | Add out of the box support for 802.11r and 802.11w to all targets not suffering from small flash. Signed-off-by: Mathias Kresin <dev@kresin.me> Mathias did all the heavy lifting on this, but I'm the one who should get shouted at for committing. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ramips: fix Archer C20 sysupgradeSteffen Förster2018-09-261-1/+0
| | | | | | | | | | The sysupgrade image failed the check due to the wrong string in the supported devices. This patch provides the correct name by dropping the SUPPORTED_DEVICES to use the default generated name. Signed-off-by: Steffen Förster <steffen@chemnitz.freifunk.net> [drop the SUPPORTED_DEVICES, the old name was never used in a release] Signed-off-by: Mathias Kresin <dev@kresin.me>