No description
Find a file
Petr Štetiar d42a7c4699 ath79: ubnt-m-xw: Fix factory image flashing using TFTP recovery method
Ubiquity allows flashing of unsigned factory images via TFTP recovery
method[1]. They claim in airOS v6.0.7 release changelog[2] following:

 All future airOS versions will be signed in this way and not allow
 unsigned firmware to be loaded except via TFTP.

U-boot bootloader on M-XW devices expects factory image revision
version in specific format. On airOS v6.1.7 with `U-Boot 1.1.4-s1039
(May 24 2017 - 15:58:18)` bootloader checks if the revision major(?)
number is actually a number, but in currently generated images there's
OpenWrt text and so the check fails:

 Hit any key to stop autoboot:  0
 Setting default IP 192.168.1.20
 Starting TFTP server...
 Receiving file from 192.168.1.25:38438
 Received 4981148 bytes
 Firmware check failed! (1)

By placing arbitrary correct number first in major version, we make the
bootloader happy and we can flash factory images over TFTP again:

 Received 3735964 bytes
 Firmware Version: XW.ar934x.v6.0.4-42.r8474-56aa1ac-OpenWrt
 Setting U-Boot environment variables
 Un-Protected 1 sectors
 Erasing Flash.... done

Patch provided by AREDN[3] project, tested on Bullet M2 XW (ynezz) and
Nanostation M5 XW (ae6xe).

1. https://help.ubnt.com/hc/en-us/articles/204910124-UniFi-TFTP-Recovery-for-Bricked-Access-Points
2. https://dl.ubnt.com/firmwares/XW-fw/v6.0.7/changelog.txt
3. https://github.com/aredn

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-26 12:05:44 +01:00
.github build: Update README & github help 2018-07-08 09:41:53 +01:00
config sunxi: fix build without ext4 rootfs 2018-09-29 17:23:11 +02:00
include build: Introduce building of artifacts 2018-11-26 09:39:20 +01:00
package valgrind: enable LTO and refresh patches 2018-11-26 09:44:42 +01:00
scripts script: ipkg-build: honour $SOURCE_DATE_EPOCH 2018-11-08 11:52:33 +01:00
target ath79: ubnt-m-xw: Fix factory image flashing using TFTP recovery method 2018-11-26 12:05:44 +01:00
toolchain glibc: update to latest 2.27 commit 2018-11-22 10:11:22 +01:00
tools flex: Add a lex symlink 2018-11-25 19:23:03 +01:00
.gitattributes
.gitignore .gitignore: add .project & .cproject for eclipse users 2018-01-17 11:07:17 +01:00
BSDmakefile
Config.in merge: base: update base-files and basic config 2017-12-08 19:41:18 +01:00
feeds.conf.default feeds: switch git.lede-project.org URLs to git.openwrt.org 2018-01-16 16:59:22 +01:00
LICENSE
Makefile build: Unset CDPATH to avoid problems 2018-08-25 11:10:28 +02:00
README build: README punctuation pendantry 2018-07-08 12:05:16 +01:00
rules.mk rules.mk: add ESED command 2018-09-24 15:57:27 +01:00

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------

This is the buildsystem for the OpenWrt Linux distribution.

To build your own firmware you need a Linux, BSD or MacOSX system (case
sensitive filesystem required). Cygwin is unsupported because of the lack
of a case sensitive file system.

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

1. Run "./scripts/feeds update -a" to obtain all the latest package definitions
defined in feeds.conf / feeds.conf.default

2. Run "./scripts/feeds install -a" to install symlinks for all obtained
packages into package/feeds/

3. Run "make menuconfig" to select your preferred configuration for the
toolchain, target system & firmware packages.

4. Run "make" to build your firmware. This will download all sources, build
the cross-compile toolchain and then cross-compile the Linux kernel & all
chosen applications for your target system.

Sunshine!
	Your OpenWrt Community
	http://www.openwrt.org