Commit graph

122 commits

Author SHA1 Message Date
Kevin Darbyshire-Bryant
f2107fc328 ramips: improve Xiaomi Mi Router 3G support
This commit improves support for the Xiaomi Mi Router 3G originally
added in commit 6e283cdc0d

Improvements:

- Remove software watchdog as hardware watchdog now working as per
  commit 3fbf3ab44f 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>
2017-09-28 09:20:36 +02:00
Ram Chandra Jangir
9adfeccd84 uboot-envtools: Add support for IPQ806x AP148 and DB149
IPQ806x AP148 and DB149 boards didn't have the UCI ubootenv
section initialized, so the usage of fw_printenv required manual
configuration. With this change, the "fw_printenv" and "fw_setenv"
command will automatically work on NOR and NAND based platforms.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-08-30 18:12:48 +02:00
Mathias Kresin
60f6c2b2eb ramips: drop Edimax BR-6425 support
Code to build an image for the Edimax BR-6425 never existed.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:07:56 +02:00
Piotr Dymacz
8223dac99a uboot-envtools: add support for ALFA Network AP121F
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:14:06 +02:00
Mathias Kresin
f12a32630f treewide: use the generic board_name function
Use the generic function instead ot the target specific ones.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Camille Bilodeau
bdd3c94872 uboot-envtools: add Arduino Yun support
Signed-off-by: Camille Bilodeau <camille.bilodeau@protonmail.com>
2017-06-29 10:37:36 +02:00
Marty Plummer
558d86923e ar71xx: add support for EnGenius ENS202EXT
EnGenius ENS202EXT is an outdoor wireless access point with
2-port 10/100 switch, detachable antennas and proprietery PoE.

The device is based on Qualcomm/Atheros AR9341 v1.

Specifications:
- 535/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM
- 16 MB of FLASH
- UART (J1) header on PCB (unpopulated)
- 2x 10/100 Mbps Ethernet
- 2.4 GHz, up to 26dBm
- 2x external, detachable antennas
- 7x LED, 1x button

Flash instructions:

You have three options:

- Use the vendor firmware upgrade page on the web interface and give
it the factory.img. This is the easiest way to go about it.

- If you have serial access during u-boot, interrupt the normal boot
(any key before timeout) and run 'run failsafe_boot'; this will bring
you to a minimal openwrt luci image on ip 192.168.1.1 useful if you've
bricked the normal firmware.

- Use the vendor's management cli, which can be accessed via telnet
with the same credentials as the web login (default admin:admin), then
issue the following commands:

*** Hi admin, welcome to use cli(V-1.6.7) ***
---========= Commands Help =========---
      stat -- Status
       sys -- System
    wless2 -- 2.4G-Wireless
      mgmt -- Management
      tree -- Tree
      help -- Help
    reboot -- Reboot
ens202ext>mgmt
  Management
---========= Commands Help =========---
     admin -- Administration
     mvlan -- Management VLAN settings
      snmp -- SNMP settings
    backup -- Backup/Restore settings
    autorb -- Auto reboot settings
   fwgrade -- Firmware upgrade
      time -- Time settings
   wifisch -- Wifi schedule
       log -- Log
      diag -- Diagnostics
      disc -- Device Discovery
    logout -- Logout
      help -- Help
      exit -- Exit
ens202ext/mgmt>fwgrade
  Management --> Firmware upgrade
---========= Commands Help =========---
      fwup -- Firmware upgrade
      help -- Help
      exit -- Exit
ens202ext/mgmt/fwgrade>fwup http://web.server/lede-ar71xx-generic-ens202ext-squashfs-factory.bin

Signed-off-by: Marty Plummer <ntzrmtthihu777@gmail.com>
2017-05-30 14:15:25 +02:00
Mantas Pucka
cd9d0f9e97 uboot-envtools: add support for 8devices Rambutan
Signed-off-by: Mantas Pucka <mantas@8devices.com>
2017-05-15 22:43:33 +02:00
Mathias Kresin
18618695ae ramips: dont replace the board name
Use fixed led names and add each board variant instead of manipulating
the board name.

It makes the ramips board name function less different to the one used
in other targets and allows to merge them with a common function.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-21 07:47:59 +02:00
Felix Fietkau
ca44b9a0d4 pistachio: remove custom board detection override
Use device tree based model string

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Felix Fietkau
eb98bf605e pistachio: remove pistachio_board_name, use the generic function
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Ian Pozella
0d271cef80 target: add pistachio
The Pistachio target is a MIPS interaptiv based SoC developed by
Imagination Technologies. It includes blocks for i2c, spi, audio,
usb and WiFi.

This also adds the base support for the 'Creator Ci40 (marduk)'
device which uses the Pistachio SoC to create an IoT hub by
including Bluetooth, WiFi and 6lowpan on one board. Additionally 2x
Mikrobus ports are available to expand with further RF technologies
or add sensors. You can find out more here http://creatordev.io.

Note, this commit is just the initial board support hence the
following are not expected to work yet:
 * WiFi
 * Bluetooth
 * 6lowpan
 * Audio
 * Mikrobus uarts, user leds (clock dependency of 6lowpan chip)

The aim of this commit is to essentially have the same level of
support that currently exists in the mainline kernel.

Signed-off-by: Abhijit Mahajani <Abhijit.Mahajani@imgtec.com>
Signed-off-by: Francois Berder <francois.berder@imgtec.com>
Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com>
Signed-off-by: Mayank Sirotiya <Mayank.Sirotiya@imgtec.com>
Signed-off-by: Sean Kelly <Sean.Kelly@imgtec.com>
2017-03-22 11:43:22 +01:00
Felix Fietkau
7e798dab56 lantiq: remove lantiq_board_name, use the generic function instead
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:21 +01:00
Sven Eckelmann
2696b0ec1e package/uboot-envtools: add OpenMesh A40 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
bddb243640 package/uboot-envtools: add OpenMesh a60 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
88aa7eeee5 package/uboot-envtools: add OpenMesh OM2Pv4/-HSv4 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Alberto Bursi
760185972f uboot-envtools: add nsa325 envs
adding nsa325 envs for consistency with other kirkwoods

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-11 21:16:28 +01:00
Alberto Bursi
55ecceb84e uboot-envtools: add nsa310b envs
accessing the u-boot's envs on this device is required to read the mac address.
These are the envs of the new u-boot, not of the stock one.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-01-24 16:21:25 +01:00
Piotr Dymacz
1599a14b32 uboot-envtools: drop executable file attribute from files/ipq
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-12-20 09:35:36 +01:00
Piotr Dymacz
a9ce2ba31c uboot-envtools: fix Edimax BR-6425 board name
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-12-20 09:35:36 +01:00
Piotr Dymacz
35ed3be59f uboot-envtools: fix code formatting style in uci-defaults files
Few minor code formatting style fixes, including:

- keep one board per line
- always use "|\" (for consistency)
- remove redundant double quotes and empty lines

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-12-20 09:35:36 +01:00
Piotr Dymacz
f70a2adca1 uboot-envtools: keep boards in alphabetical order
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-12-20 09:35:36 +01:00
Felix Fietkau
720b99215d treewide: clean up download hashes
Replace *MD5SUM with *HASH, replace MD5 hashes with SHA256

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-16 22:39:22 +01:00
Piotr Dymacz
c40477519e uboot-envtools: add support for YunCore SR3200 and XD3200
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-12-12 09:57:40 +01:00
Eddi De Pieri
9720185820 uboot-envtools: make it not shared
uboot-envtools have some stuff related to the cpu.

This should fix following error on lantiq soc:

Downloading http://downloads.lede-project.org/snapshots/packages/mips_24kc/base/uboot-envtools_2015.10-1_mips_24kc.ipk.
Configuring uboot-envtools.
//usr/lib/opkg/info/uboot-envtools.postinst: .: line 10: can't open '/lib/ar71xx.sh'

Signed-off-by: Eddi De Pieri <eddi@depieri.net>
2016-11-23 10:17:55 +01:00
Paul Wassi
d6e8b1f841 uboot-envtools: add 'dockstar' for kirkwood
Add board 'dockstar' to known fw_env-configurations.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2016-11-21 10:10:38 +01:00
Piotr Dymacz
d86f08cc94 uboot-envtools: add support for YunCore CPE830
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-11-21 10:05:40 +01:00
Piotr Dymacz
dcceea4fd3 uboot-envtools: add support for YunCore CPE870
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-11-21 10:05:40 +01:00
Piotr Dymacz
9ee8257cc7 uboot-envtools: add support for YunCore AP90Q
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-11-21 10:05:40 +01:00
Alberto Bursi
08279810ed uboot-envtools: move to Boot Loaders submenu
Boot Loaders submenu is where other bootloader tools (fconfig and grub2-editenv) are.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2016-11-03 08:21:47 +01:00
Stijn Tintel
e3875350f3 ar71xx: add support for D-Link DAP-2695 rev. A1
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: John Crispin <john@phrozen.org>
2016-10-27 01:50:42 +03:00
André Valentin
ebd7e565c7 package/uboot-envtools: Add support for ZyXEL NBG6817
Signed-off-by: André Valentin <avalentin@marcant.net>
2016-10-26 12:37:47 +02:00
Imre Kaloz
3764caa934 mvebu: add support for the Linksys WRT3200ACM (Rango)
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-10-24 08:45:06 +02:00
Josua Mayer
c8580f51ba u-boot-envtools: fix building with glibc
tools/env/fw_env.c misses to include stdint.h.
Apparently musl doesn't mind and includes this header by default,
but glibc does not and causes the build to fail.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2016-08-18 09:49:18 +02:00
Zhao Gang
d963ddf042 ar71xx: add support for gl-ar300m
This add initial support for gl-ar300m router.
Product page: http://www.gl-inet.com/ar300m/

Signed-off-by: Zhao Gang <gang.zhao.42@gmail.com>
2016-07-20 00:21:48 +02:00
Piotr Dymacz
14ee2b0642 uboot-envtools: add support for jjPlus JWAP230
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-07-13 20:03:10 +02:00
Piotr Dymacz
c30fd5e87d uboot-envtools: add support for Wallys DR531
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-07-13 20:03:10 +02:00
Daniel Golle
fac7ba1abc uboot-envtools: add support for ZBT-WG2626
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2016-06-19 16:22:23 +02:00
John Crispin
928163bad2 uboot-envtools: add ipq806x support
Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:41 +02:00
Felix Fietkau
704965d93f uboot-envtools: add config for WBMR300 (lantiq)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-06-12 14:53:18 +02:00
Sven Eckelmann
3f508fce77 package/uboot-envtools: add OpenMesh MR1750v2 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 12:19:26 +02:00
Sven Eckelmann
00943e0931 package/uboot-envtools: add OpenMesh OM2P-HSv3 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-05-23 12:19:24 +02:00
Andrew Yong
374cae9e6f ramips: add initial support for SamKnows SK-WB8
Signed-off-by: Andrew Yong <me@ndoo.sg>
2016-05-12 03:29:35 +02:00
John Crispin
152da8b240 lantiq: uboot-envtools on BTHOMEHUBV3A
Generate fw_env.config for BTHOMEHUBV3A.

Signed-off-by: Ben Mulvihill <ben.mulvihill@gmail.com>

SVN-Revision: 49236
2016-04-26 11:43:11 +00:00
Hauke Mehrtens
012da658a4 oxnas: add support for Akitio MyCloud mini
Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 49197
2016-04-19 20:12:41 +00:00
John Crispin
eeaf5035df uboot-envtools: add OpenMesh OM5P-ACv2 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>

SVN-Revision: 49153
2016-04-09 10:26:28 +00:00
John Crispin
2b541ce3f9 uboot-envtools: add OpenMesh OM5P-AC support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>

SVN-Revision: 49146
2016-04-09 10:26:04 +00:00
Luka Perkov
35e7bfb906 uboot-envtools: add support for ap120c
Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 49083
2016-03-23 22:31:41 +00:00
John Crispin
99414dbcf1 ramips: Add support for Xiaomi MiWiFi Nano
Xiaomi MiWiFi Nano is based on Mediatek MT7628 with 64MB ram 16MB flash

Signed-off-by: Noble Pepper <openwrtmail@noblepepper.com>

v3  includes changes suggested by L. D. Pinney & Karl Palsson-
Eliminate en25q64 (4MB) flash chip
Alphabetization
Remove hyphen in model
Rename profile from miwifinano.mk to xiaomi.mk
Add gpios that are attached to leds

SVN-Revision: 49024
2016-03-16 09:26:48 +00:00
Felix Fietkau
fb1273dfdd ar71xx: PowerCloud CR5000 openwrt configuration
OpenWrt configuration part of support for the PowerCloud Systems
CR5000.  The CR5000 is a dual-band 802.11n wireless router with
8MB flash, 64MB RAM, (unused on stock firmware) USB 2.0 port and
five port gigabit ethernet switch.  The CR5000 was sold as
hardware for the Skydog cloud-managed router service.

    Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>

SVN-Revision: 47946
2015-12-19 11:28:18 +00:00