This repository is a mirror of https://git.openwrt.org/openwrt/openwrt.git It is for reference only and is not active for check-ins. We will continue to accept Pull Requests here. They will be merged via staging trees then into openwrt.git.
Go to file
John Crispin 4e31b2e869 ramips: add support for Ubiquiti EdgeRouter X (UBNT-ERX)
This router is based on MT7621 SoC, no wifi, no usb, nand.

Works:
* Boots.
* Ethernet.
* Switch.
* Button (reset).
* Flashing OpenWrt from stock firmware.
* Upgrading OpenWrt.

Doesn't work:
* No GPIO leds. All leds are controlled by switch,
  but stock firmware was able to control them.
* SoC has crypto engine but no open driver.
* SoC has nat acceleration, but no open driver.
* This router has 2MB spi flash soldered in but MT
  nand/spi drivers do not support pin sharing,
  so it is not accessable and disabled. Stock
  firmware could read it and it was empty.
* PoE out.

Router has serial pins populated. If looking at the top
of the router, then counting from Eth sockets pins go as:
'GND, RX, TX, GND'. 3.3v, 57600.

U-boot bootloader supports tftpboot, controlled from serial.
This router has two kernel partitions: 'live' and 'backup'.
They are swapped during flashing (on both stock and OpenWrt).
Active partition is controlled by a flag in a factory partition.
U-boot has custom command to switch active kernel partition.
Kernel partitions are 'bare flash' 3MB. Stock bootloader has
no UBI support. Stock rootfs is UBIFS.

Flashing procedure.
Stock firmware uses custom kernel patch to mount squashfs
from a file that is located on UBIFS volume. This makes wiping
out this volume from within stock firmware difficult.
Instead this patch builds image that is flashable by stock firmware
and contains initrams image (with minimal set of packages
to fit into kernel partition). Once this is flashed one can reboot
into initramfs OpenWrt and use sysupgrade to flash OpenWrt including
rootfs into nand.
Note: factory image is only built if initramfs image is enabled.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47881
2015-12-12 07:38:06 +00:00
config kernel: add support for KERNEL_CGROUP_PIDS 2015-10-26 11:54:56 +00:00
docs build: Prevent more gzip timestamps 2015-07-14 09:57:45 +00:00
include build: for refresh, override HOST_QUILT like QUILT 2015-12-11 19:21:29 +00:00
package procd: add 'platform_nand_pre_upgrade' 2015-12-12 07:37:45 +00:00
scripts scripts/download.pl: cleanup GNOME source location definitions 2015-12-10 12:40:08 +00:00
target ramips: add support for Ubiquiti EdgeRouter X (UBNT-ERX) 2015-12-12 07:38:06 +00:00
toolchain uClibc-ng: update to 1.0.9 2015-12-03 14:47:29 +00:00
tools tools/squashfs4: refresh patches 2015-12-11 19:21:43 +00:00
.gitattributes add .gitattributes to prevent the git autocrlf option from messing with CRLF/LF in files 2012-05-08 13:30:49 +00:00
.gitignore build: add integration for managing opkg package feed keys 2015-04-06 19:39:51 +00:00
BSDmakefile add missing copyright header 2007-02-26 01:05:09 +00:00
Config.in scripts/config: sync with linux upstream 2015-01-08 14:33:53 +00:00
feeds.conf.default feeds.conf.default: add new targets feed 2015-03-19 11:58:35 +00:00
LICENSE finally move buildroot-ng to trunk 2016-03-20 17:29:15 +01:00
Makefile Makefile: move the cleaning of staging_dir/target* from dirclean to clean 2015-06-14 17:47:16 +00:00
README Add 'subversion' build dependency to README 2014-08-31 12:06:32 +00:00
rules.mk gcc: remove version 4.6, it is no longer needed 2015-11-10 21:10:53 +00:00

This is the buildsystem for the OpenWrt Linux distribution.

Please use "make menuconfig" to configure your appreciated
configuration for the toolchain and firmware.

You need to have installed gcc, binutils, bzip2, flex, python, perl, make,
find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers.

Run "./scripts/feeds update -a" to get all the latest package definitions
defined in feeds.conf / feeds.conf.default respectively
and "./scripts/feeds install -a" to install symlinks of all of them into
package/feeds/.

Use "make menuconfig" to configure your image.

Simply running "make" will build your firmware.
It will download all sources, build the cross-compile toolchain, 
the kernel and all choosen applications.

You can use "scripts/flashing/flash.sh" for remotely updating your embedded
system via tftp.

The OpenWrt system is documented in docs/. You will need a LaTeX distribution
and the tex4ht package to build the documentation. Type "make -C docs/" to build it.

To build your own firmware you need to have access to a Linux, BSD or MacOSX system
(case-sensitive filesystem required). Cygwin will not be supported because of
the lack of case sensitiveness in the file system.


Sunshine!
	Your OpenWrt Project
	http://openwrt.org