project/firmware-utils.git
7 years agofirmware-utils: tplink-safeloader: add support for TP-Link WBS210/510 1.2
Matthias Schiffer [Thu, 5 Jan 2017 15:01:17 +0000 (16:01 +0100)]
firmware-utils: tplink-safeloader: add support for TP-Link WBS210/510 1.2

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
7 years agoramips: Add support to TP-Link Archer MR200
Henryk Heisig [Sat, 24 Sep 2016 19:41:43 +0000 (21:41 +0200)]
ramips: Add support to TP-Link Archer MR200

CPU: MT7620N 580MHz
Flash: 8MB
RAM: 64MB
build-in modem 3G/4G
four ethernet port 10/100Mbps

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
7 years agofirmware-utils/tplink-safeloader: add support for TP-Link RE450
Radek Dostál [Thu, 15 Dec 2016 19:41:09 +0000 (20:41 +0100)]
firmware-utils/tplink-safeloader: add support for TP-Link RE450

Signed-off-by: Radek Dostál <rd@radekdostal.com>
[Jo-Philipp Wich: use .support_trail member]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
7 years agofirmware-utils: kernel image generator for TP-Link RE450
Tal Keren [Thu, 7 Jan 2016 00:40:47 +0000 (02:40 +0200)]
firmware-utils: kernel image generator for TP-Link RE450

The firmware image that is used in TP-Link RE450 (and some more devices from
the RE series) is tplink-safeloader.
In the kernel partition, the kernel is compressed in a regular tp-link
firmware that is just used for booting. Since it is only used for compressing
and booting, only four fields are filled in the header:
Vendor, version, kernel load address and kernel entry point.
mktplinkfw-kernel is a simpler version of mktpolinkfw that generate such
images. It also specifies the hardware id (as it is in the product info
section), so when doing a sysupgrade - the existing code will check for
hardware compatibility.

Signed-off-by: Tal Keren <kooolk@gmail.com>
[rd@radekdostal.com: add build target to .../image/tp-link.mk]
Signed-off-by: Radek Dostál <rd@radekdostal.com>
7 years agofirmware-utils: add support for TL-WR1043ND v4 to mktplinkfw and tplink-safeloader
Matthias Schiffer [Sat, 10 Dec 2016 19:45:50 +0000 (20:45 +0100)]
firmware-utils: add support for TL-WR1043ND v4 to mktplinkfw and tplink-safeloader

The TL-WR1043ND v4 uses a kernel image with a mktplinkfw header inside the
os-image partition of a tplink-safeloader image.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
7 years agofirmware-utils/tplink-safeloader: refactor code for further board support
Jo-Philipp Wich [Wed, 24 Aug 2016 17:42:19 +0000 (19:42 +0200)]
firmware-utils/tplink-safeloader: refactor code for further board support

In order to make it easier to add new boards in the future, refactor the code
to describe the image layouts of supported boards in a struct array and alter
the image generation routines to figure out the sysupgrade partitions
automatically.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
7 years agofirmware-utils/tplink-safeloader: make vendor data optional
Jo-Philipp Wich [Wed, 24 Aug 2016 07:30:56 +0000 (09:30 +0200)]
firmware-utils/tplink-safeloader: make vendor data optional

Restructure the code a bit to allow for omitting vendor data when generating
factory images.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
7 years agofirmware-utils: add E2100L support to addpattern.c
Jo-Philipp Wich [Fri, 2 Dec 2016 10:39:42 +0000 (11:39 +0100)]
firmware-utils: add E2100L support to addpattern.c

Based on OpenWrt PR#250

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
7 years agofirmware-utils: tplink-safeloader: update support lists for CPE210/510/...
Matthias Schiffer [Sun, 11 Dec 2016 17:00:13 +0000 (18:00 +0100)]
firmware-utils: tplink-safeloader: update support lists for CPE210/510/...

Adds support for new EU and US variants; removes a few strings that were
never actually used and have been removed from the stock firmwares.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
7 years agofirmware-utils: replace md5 code with Alexander Peslyak's implementation
Rafał Miłecki [Sat, 19 Nov 2016 20:09:53 +0000 (21:09 +0100)]
firmware-utils: replace md5 code with Alexander Peslyak's implementation

Our current implementation is pretty old and uses some pre-standard/old
ANSI C style that triggers warnings like:
warning: call to function 'MD5_Init' without a real prototype [-Wunprototyped-calls]

This is caused by declarations specified in a following way:
src/md5.h:60:6: note: 'MD5_Init' was declared here
 void MD5_Init ();

Having these warnings makes it harded to notice real problems. We could
try hiding them but it makes more sense to just use a cleaner code.
Another tiny gain from this switch is slightly reduced binary size, on
x86_64 tplink-safeloader's size 48104 became 48003.

The new code is public domain, uses "heavily cut-down BSD license".

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agofirmware-utils: Fix build failure in mkmerakifw.c FS#298
Florian Fainelli [Wed, 23 Nov 2016 20:50:25 +0000 (12:50 -0800)]
firmware-utils: Fix build failure in mkmerakifw.c FS#298

Earlier compilers such as GCC 4 do not like anynomous unions, make it a named
union "u", and update the code where relevant.

Fixes FS#298
Fixes: a72e1692b8b3 ("firmware-utils: Add support for the Cisco Meraki MX60/MX60W")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
7 years agofirmware-utils: Add support for the Cisco Meraki MX60/MX60W
Chris Blake [Wed, 16 Nov 2016 14:35:54 +0000 (08:35 -0600)]
firmware-utils: Add support for the Cisco Meraki MX60/MX60W

This patch adds header support for the Cisco Meraki MX60/MX60W, which
are a part of the apm821xx target. Some structure changes were needed
due to the fact this device uses U-Boot (unlike other devices in
mkmerakifw.c) which uses a different header structure to define the load
offsets for the image.

A thanks to Christian for helping implement this properly.

Cc: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
7 years agofirmware-utils: tplink-safeloader: keep per-device info on trailing char
Rafał Miłecki [Sat, 19 Nov 2016 21:42:50 +0000 (22:42 +0100)]
firmware-utils: tplink-safeloader: keep per-device info on trailing char

Recent refactoring introduced a regression. It ignored second argument
of make_support_list function which was originally true for C2600. The
new generic build_image function always passes false.

This patch allows specifying trailing char in a device specific info. It
also switches Archer C9 to the \0 char to make it compliant with vendor
images.

I verified generated images to be binary identical to the ones that
were created before whole refactoring.

Reported-by: Jo-Philipp Wich <jo@mein.io>
Fixes: fd924d2068f ("firmware-utils: tplink-safeloader: use one function for generating images")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agofirmware-utils: tplink-safeloader: add Archer C9 support
Rafał Miłecki [Sat, 19 Nov 2016 06:58:25 +0000 (07:58 +0100)]
firmware-utils: tplink-safeloader: add Archer C9 support

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agofirmware-utils: tplink-safeloader: use one function for generating images
Rafał Miłecki [Sun, 13 Nov 2016 17:30:48 +0000 (18:30 +0100)]
firmware-utils: tplink-safeloader: use one function for generating images

Thanks to the struct device_info we can now use one unified function.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agofirmware-utils: tplink-safeloader: add struct device_info
Rafał Miłecki [Sun, 13 Nov 2016 17:30:47 +0000 (18:30 +0100)]
firmware-utils: tplink-safeloader: add struct device_info

This struct stores all device specific info which allows making do_eap
function more generic.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agofirmware-utils: add tool to create zyxel images
Vitaly Chekryzhev [Sat, 29 Oct 2016 12:26:58 +0000 (17:26 +0500)]
firmware-utils: add tool to create zyxel images

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
[moved to firmware-utils package]
[dropped the compiled binary]
Signed-off-by: Mathias Kresin <dev@kresin.me>
7 years agoar71xx: add support for Buffalo BHR-4GRV2
FUKAUMI Naoki [Tue, 8 Nov 2016 13:45:00 +0000 (22:45 +0900)]
ar71xx: add support for Buffalo BHR-4GRV2

Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
7 years agofirmware-utils: fix compilation on MacOS X
Alexandru Ardelean [Fri, 28 Oct 2016 06:52:12 +0000 (09:52 +0300)]
firmware-utils: fix compilation on MacOS X

Looking into /usr/include/stdlib.h, there's a `devname()` function defined
under some #ifdef's which conflicts with the `static char *devname` definition
in `src/mkwrggimg.c`.

Defining `_ANSI_SOURCE` in the `src/mkwrggimg.c` file, omits that part of the
header.

Another more intrusive approach is to rename `devname` to something like
`g_devname` in `src/mkwrggimg.c`. But I think the `_ANSI_SOURCE` define should
be enough.

Compilation error is:

    src/mkwrggimg.c:64:14: error: redefinition of 'devname' as different kind of symbol
    static char *devname;
                 ^
    /usr/include/stdlib.h:286:7: note: previous definition is here
    char    *devname(dev_t, mode_t);
             ^
    src/mkwrggimg.c:147:12: error: non-object type 'char *(dev_t, mode_t)' (aka 'char *(int, unsigned short)') is not assignable
                            devname = optarg;
                            ~~~~~~~ ^
    src/mkwrggimg.c:192:6: warning: comparison of function 'devname' equal to a null pointer is always false [-Wtautological-pointer-compare]
            if (devname == NULL) {
                ^~~~~~~    ~~~~
    src/mkwrggimg.c:192:6: note: prefix with the address-of operator to silence this warning
            if (devname == NULL) {
                ^
                &
    src/mkwrggimg.c:251:27: warning: incompatible pointer types passing 'char *(dev_t, mode_t)' (aka 'char *(int, unsigned short)') to parameter of type 'const char *' [-Wincompatible-pointer-types]
            strncpy(header->devname, devname, sizeof(header->devname));
                                     ^~~~~~~
    /usr/include/secure/_string.h:119:34: note: expanded from macro 'strncpy'
      __builtin___strncpy_chk (dest, src, len, __darwin_obsz (dest))

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
[Jo-Philipp Wich: slightly reformat commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
7 years agofirmware-utils: mkwrggimg: new tool for D-Link DAP-2695
Stijn Tintel [Sat, 6 Aug 2016 17:36:24 +0000 (19:36 +0200)]
firmware-utils: mkwrggimg: new tool for D-Link DAP-2695

Based on mkwrgimg.c.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: John Crispin <john@phrozen.org>
7 years agoar71xx: Add support to TP-Link EAP120
Henryk Heisig [Thu, 6 Oct 2016 21:46:38 +0000 (23:46 +0200)]
ar71xx: Add support to TP-Link EAP120

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
7 years agoptgen: work around gcc miscompilation
Jonas Gorski [Mon, 12 Sep 2016 10:59:21 +0000 (12:59 +0200)]
ptgen: work around gcc miscompilation

Some gcc versions seem to miscompile code using ternary operators,
work around this by just returning the result if exp is 0.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
7 years agotools/firmware-utils: fix portability issue in mkmerakifw-old
Felix Fietkau [Thu, 22 Sep 2016 11:37:22 +0000 (13:37 +0200)]
tools/firmware-utils: fix portability issue in mkmerakifw-old

Fixes build failure on Mac OS X

Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 years agofirmware-utils mkmerakifw-old: firmware generator for Z1
Christian Lamparter [Sun, 18 Sep 2016 15:12:54 +0000 (10:12 -0500)]
firmware-utils mkmerakifw-old: firmware generator for Z1

This patch adds firmware generation tool for Cisco's Z1

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
7 years agofirmware-utils: mksenaofw: rework option validation
Mathias Kresin [Wed, 17 Aug 2016 18:08:52 +0000 (20:08 +0200)]
firmware-utils: mksenaofw: rework option validation

The options firmware_type, vendor_id and product_id are not required
for decoding an image file.

Signed-off-by: Mathias Kresin <dev@kresin.me>
7 years agofirmware-utils: mktplinkfw: add support for TP-Link's new region codes
Matthias Schiffer [Sun, 28 Aug 2016 17:43:25 +0000 (19:43 +0200)]
firmware-utils: mktplinkfw: add support for TP-Link's new region codes

TP-Link has changed the way the region is stored in the firmware header,
and now provides US- and EU-specific images for the Archer C7. Adding the
new region codes is necessary to make LEDE/OpenWrt flashable on devices
with the new stock firmwares again.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
7 years agoapm821xx: add support for the Cisco Meraki MR24
Chris Blake [Wed, 20 Jul 2016 13:44:51 +0000 (15:44 +0200)]
apm821xx: add support for the Cisco Meraki MR24

This patch adds support for the Cisco Meraki MR24 Access point
to the apm821xx target.

Board: MR24 - Meraki MR24 Cloud Managed Access Point
CPU: APM82181 SoC 800 MHz (PLB=200 OPB=100 EBC=100)
Flash size: 32MiB
RAM Size: 128MiB
Wireless: Atheros AR9380 5.0GHz + Atheros AR9380 2.4GHz
Ethernet ports: 1x Gigabit Atheros AR8035

WARNING: The serial port needs a TTL/RS-232 v3.3 level converter!

For flashing instructions, visit:
<https://github.com/riptidewave93/Openwrt-MR24/blob/master/README.md#flashing>

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
7 years agofirmware-utils: oseama: support extracting entity
Rafał Miłecki [Thu, 5 May 2016 12:32:00 +0000 (14:32 +0200)]
firmware-utils: oseama: support extracting entity

This updates oseama in firmware-utils to the version from packages
keeping them synced.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
7 years agotools/mkfwimage2: remove 256 length limit for partition images
Alexander Couzens [Sat, 11 Jun 2016 02:12:38 +0000 (04:12 +0200)]
tools/mkfwimage2: remove 256 length limit for partition images

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
7 years agotools/firmware-utils: Add Archer C50 to mktplinkfw2
Henryk Heisig [Sun, 12 Jun 2016 21:49:02 +0000 (23:49 +0200)]
tools/firmware-utils: Add Archer C50 to mktplinkfw2

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
7 years agotreewide: replace nbd@openwrt.org with nbd@nbd.name
Felix Fietkau [Tue, 7 Jun 2016 06:58:31 +0000 (08:58 +0200)]
treewide: replace nbd@openwrt.org with nbd@nbd.name

Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 years agotools/tplink-safeloader: split CPE210 from CPE510 profile
Alexander Couzens [Sun, 29 May 2016 00:02:20 +0000 (02:02 +0200)]
tools/tplink-safeloader: split CPE210 from CPE510 profile

The CPE210 was still described for the OEM upgrade as compatible,
even the wireless configuration isn't compatible anymore between
both series (2ghz and 5ghz).
Update the CPE210 image profile to use the new profile.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
7 years agofw-utils/tplink-safeloader.c: Add support for Archer C2600
Ash Benz [Fri, 27 May 2016 14:26:39 +0000 (22:26 +0800)]
fw-utils/tplink-safeloader.c: Add support for Archer C2600

Signed-off-by: Ash Benz <ash.benz@bk.ru>
7 years agotools/firmware-utils: remove obsolete firmware utility for airlink 525w
Felix Fietkau [Thu, 12 May 2016 15:39:46 +0000 (17:39 +0200)]
tools/firmware-utils: remove obsolete firmware utility for airlink 525w

Signed-off-by: Felix Fietkau <nbd@nbd.name>
8 years agotools: firmware-utils: add region code support to mktplinkfw
John Crispin [Thu, 21 Apr 2016 19:47:15 +0000 (19:47 +0000)]
tools: firmware-utils: add region code support to mktplinkfw

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 49215

8 years agotools: firmware-utils: clean up mktplinkfw
John Crispin [Thu, 21 Apr 2016 19:47:12 +0000 (19:47 +0000)]
tools: firmware-utils: clean up mktplinkfw

Remove the whole board list from mktplinkfw, as OpenWrt doesn't use it and
it was severely out of sync with the list of built images for ar71xx.

Also:
* fix -Wall warnings
* add const where appropriate

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 49214

8 years agoar71xx: add TP-Link TL-WA901ND-v4 support
John Crispin [Sat, 9 Apr 2016 10:26:46 +0000 (10:26 +0000)]
ar71xx: add TP-Link TL-WA901ND-v4 support

Signed-off-by: Tiziano Bacocco <tizbac2@gmail.com>
SVN-Revision: 49158

8 years agoar71xx: Add support for the OMYlink OMY-X1
John Crispin [Wed, 16 Mar 2016 09:26:58 +0000 (09:26 +0000)]
ar71xx: Add support for the OMYlink OMY-X1

This patch adds support for the OMYlink OMY-X1

https://wiki.openwrt.org/toh/omylink/omy-x1

http://www.omylink.com/

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
SVN-Revision: 49026

8 years agoramips: Add a tool to create JCG factory images
John Crispin [Fri, 4 Mar 2016 08:32:54 +0000 (08:32 +0000)]
ramips: Add a tool to create JCG factory images

replace spaces with tabs

Signed-off-by: Reinhard Max <reinhard@m4x.de>
SVN-Revision: 48901

8 years agoramips: Add a tool to create JCG factory images
John Crispin [Thu, 3 Mar 2016 20:24:30 +0000 (20:24 +0000)]
ramips: Add a tool to create JCG factory images

This tool creates factory images for JCG routers.
Details can be found in the header comment of jcgimage.c.

Signed-off-by: Reinhard Max <reinhard@m4x.de>
Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48888

8 years agofirmware-utils: mkfwimage: fix firmware_max_length for XM layout
Felix Fietkau [Mon, 29 Feb 2016 20:11:33 +0000 (20:11 +0000)]
firmware-utils: mkfwimage: fix firmware_max_length for XM layout

The new u-boot version bundled with the 5.6.x firmwares from Ubiquiti gets
confused by the smaller rootfs partition size; this can lead to various
issues:

1. We've gotten reports that flashing from the 5.6.x stock firmware to
   OpenWrt will brick devices; I wasn't able to reproduce this myself
2. Flashing from 5.5.x stock firmware to OpenWrt and back to stock (via
   TFTP recovery), following by an update to 5.6.x via web interface can
   yield a bricked device with the following properties:
   - It can't be booted without entering commands over a serial console, as
     u-boot supplies the wrong MTD layout
   - The web interface won't accept any image with the original flash
     layout, so stock firmware upgrades are impossible
   - As the TFTP recovery doesn't update u-boot, returning to the old
     u-boot from firmware 5.5.x is impossible

To recover from 2., creating an OpenWrt image which doesn't set u-boot as
read-only and flashing a backup of the old u-boot from there is the only
way known to me. (Fixing the mtdparts variable in u-boot-env from OpenWrt
might also work; settings this from u-boot over serial didn't have
any permanent effect.)

Fix all of this by setting the correct flash layout also used by the stock
firmware. Flashing has been tested from both firmware 5.5.x and 5.6.x. The
fixed layout also matches the mtdparts defined by OpenWrt.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 48829

8 years agoar71xx, firmware-utils: split ubdev01 flash layout from XM
Felix Fietkau [Mon, 29 Feb 2016 20:11:30 +0000 (20:11 +0000)]
ar71xx, firmware-utils: split ubdev01 flash layout from XM

The ubdev01 profile defines its own MTDPARTS with smaller firmware
partition, so give it its own UBNT_BOARD in mkfwimage.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 48828

8 years agofirmware-utils: mkfwimage: add -Wall, fix obvious bugs causing compile warnings
Felix Fietkau [Mon, 29 Feb 2016 20:11:26 +0000 (20:11 +0000)]
firmware-utils: mkfwimage: add -Wall, fix obvious bugs causing compile warnings

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 48827

8 years agoar71xx: Added support for TL-WA801NDv3
John Crispin [Fri, 12 Feb 2016 08:30:28 +0000 (08:30 +0000)]
ar71xx: Added support for TL-WA801NDv3

Signed-off-by: Tiziano Bacocco <tizbac2@gmail.com>
SVN-Revision: 48705

8 years agofirmware-utils: add oseama tool for creating Seama entities
Rafał Miłecki [Mon, 1 Feb 2016 12:42:00 +0000 (12:42 +0000)]
firmware-utils: add oseama tool for creating Seama entities

It has an important feature (compared to seama) of using multiple input
files, aligning them and padding zeroes until reaching a specified
absolute offset. This is needed for a proper flash layout on NAND. We
want kernel partition to be big enough to handle future updates without
a need to resize it and wipe whole "ubi" partition. It's important as
we don't want to lose block counters.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 48601

8 years agolantiq: add support for TP-Link VR200v
Hauke Mehrtens [Mon, 18 Jan 2016 20:40:03 +0000 (20:40 +0000)]
lantiq: add support for TP-Link VR200v

This adds basic support for TP-Link VR200v.
Currently the following parts are not working: FXO, Voice, DECT, WIFI (both)

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 48328

8 years agofirmware-utils: allow mkfwimage2 to use - in partition names
John Crispin [Wed, 23 Dec 2015 14:43:47 +0000 (14:43 +0000)]
firmware-utils: allow mkfwimage2 to use - in partition names

Signed-off-by: Roman Yeryomin <roman@advem.lv>
SVN-Revision: 47975

8 years agofirmware-utils: fix various compiler warnings
John Crispin [Fri, 11 Dec 2015 15:09:30 +0000 (15:09 +0000)]
firmware-utils: fix various compiler warnings

mostly implicit defines due to missing includes plus one const that
shouldn't be one.

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
SVN-Revision: 47865

8 years agomktplinkfw: add missing exceeding bytes info to logs
John Crispin [Fri, 11 Dec 2015 15:08:44 +0000 (15:08 +0000)]
mktplinkfw: add missing exceeding bytes info to logs

Add the info on exceeding bytes also to the remaining log messages.

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
SVN-Revision: 47864

8 years agofirmware-utils mkmerakifw: firmware generator for MR18
John Crispin [Fri, 11 Dec 2015 15:06:45 +0000 (15:06 +0000)]
firmware-utils mkmerakifw: firmware generator for MR18

This patch adds firmware generation tool for Cisco's MR18

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
SVN-Revision: 47856

8 years agobrcm63xx: work around boot failures with squashfs on BCM6368
Jonas Gorski [Wed, 4 Nov 2015 11:33:22 +0000 (11:33 +0000)]
brcm63xx: work around boot failures with squashfs on BCM6368

Due to the LWL/LWR SMP issue on BCM6368, booting with squash might fail
if the rootfs is not word aligned. As a quick fix, work around it by
ensuring this condition is always true.

Reported-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 47380

8 years agoar71xx: Bitmain Antminer S1 & S3 cleanup
John Crispin [Mon, 19 Oct 2015 10:10:02 +0000 (10:10 +0000)]
ar71xx: Bitmain Antminer S1 & S3 cleanup

Sets the LEDs to boardname:color:led-name
Sets the LAN to eth0
Other corrections such as the Machine Name and HWIDs
v2 corrects the profile names in the Makefile and changes tabs to spaces
in the Makefile 'define Device/' like the other devices.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
SVN-Revision: 47221

8 years agotools/firmware-utils: tplink-safeloader: add version 1.1 support to CPE210/220/510/520
John Crispin [Mon, 19 Oct 2015 10:08:50 +0000 (10:08 +0000)]
tools/firmware-utils: tplink-safeloader: add version 1.1 support to CPE210/220/510/520

The hardware is identical to version 1.0, add the new models to the support
list.

Also remove the empty line at the end of the support list, the current
stock images don't have it either.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 47212

8 years agotools/firmware-utils: tplink-safeloader: fix support-list format, clean up vendor...
John Crispin [Mon, 19 Oct 2015 10:08:44 +0000 (10:08 +0000)]
tools/firmware-utils: tplink-safeloader: fix support-list format, clean up vendor information

The first 4 bytes of the support list and the vendor information are
supposed to contain the length of these fields.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 47211

8 years agotools/firmware-utils: tplink-safeloader: clean up code
John Crispin [Mon, 19 Oct 2015 10:08:34 +0000 (10:08 +0000)]
tools/firmware-utils: tplink-safeloader: clean up code

There is no reason for the internal functions not to be static.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 47210

8 years agofirmware-utils/buffalo-enc: explicitly use signed char for checksum function
Felix Fietkau [Mon, 12 Oct 2015 13:11:20 +0000 (13:11 +0000)]
firmware-utils/buffalo-enc: explicitly use signed char for checksum function

ARM defaults to unsigned char and that breaks the calculation, as it
relies on sign extension

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 47186

8 years agofirmware-utils/buffalo-enc: add support for decrypting data with an offset
Felix Fietkau [Mon, 12 Oct 2015 13:11:03 +0000 (13:11 +0000)]
firmware-utils/buffalo-enc: add support for decrypting data with an offset

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 47185

8 years agotools: firmware-utils: fix compiler warnings
Hauke Mehrtens [Sun, 11 Oct 2015 19:00:41 +0000 (19:00 +0000)]
tools: firmware-utils: fix compiler warnings

This just fixes a lot of compiler warnings.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 47181

8 years agolantiq: Add target TP-Link TD-W8980
John Crispin [Mon, 5 Oct 2015 10:28:19 +0000 (10:28 +0000)]
lantiq: Add target TP-Link TD-W8980

The device is similar to the TD-W8970, beside a different Atheros 2.4 GHz
wireless chip and the additional, PCI connected, WAVE300 5 GHz wireless.

Signed-off-by: Mathias Kresin <openwrt@kresin.me>
SVN-Revision: 47130

8 years agotools/firmware-utils: add header version 2 support for mktplinkfw
John Crispin [Mon, 17 Aug 2015 06:23:43 +0000 (06:23 +0000)]
tools/firmware-utils: add header version 2 support for mktplinkfw

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
This patch adds header version 2 option for mktplinkfw.

The version 2 header is used for AR/QCA firmwares and is not the same as
the header generated by mktplinkfw2.
Instead, it is nearly the same as version 1 header except for the header
version and the RSA signature.

The header version 2 support is used for newer TP-Link routers which have
only a 64kb bootloader part, e.g. TL-WDR6500 v2.

SVN-Revision: 46661

8 years agofirmware-utils mktplinkfw: print amount of exceeding bytes
John Crispin [Fri, 24 Jul 2015 09:11:24 +0000 (09:11 +0000)]
firmware-utils mktplinkfw: print amount of exceeding bytes

This is very useful for trimming images towards 4 MiB flash size.

Signed-off-by: Stephan Maka <stephan@spaceboyz.net>
SVN-Revision: 46469

8 years agoar71xx: add support for Onion Omega
John Crispin [Fri, 24 Jul 2015 09:09:49 +0000 (09:09 +0000)]
ar71xx: add support for Onion Omega

This patch adds support for the Onion Omega.

https://onion.io/omega

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Acked-by: Boken Lin <bl@onion.io>
Tested-by: Jacky Huang <huangfangcheng@163.com>
SVN-Revision: 46458

8 years agoar71xx: Add Support for the Bitmain Antminer S3
John Crispin [Tue, 7 Jul 2015 13:46:54 +0000 (13:46 +0000)]
ar71xx: Add Support for the Bitmain Antminer S3

This patch adds support for the Bitmain Antminer S3 Cryptocurrency Miner

http://wiki.openwrt.org/toh/bitmain/s3

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
SVN-Revision: 46236

8 years agoar71xx: add support for TL-WR720N-v4.
John Crispin [Thu, 18 Jun 2015 18:21:23 +0000 (18:21 +0000)]
ar71xx: add support for TL-WR720N-v4.

The hardware should be almost the same as TL-WR720N-v3.  WiFi and LAN networks
were tested by "Lo Yuk Fai <loyukfai@gmail.com>".  Failsafe and slider switch
were tested by "Wong min <alpha080@gmail.com>".

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
SVN-Revision: 46046

8 years agoar71xx: Add Support for the Bitmain Antminer S1
John Crispin [Thu, 18 Jun 2015 18:21:05 +0000 (18:21 +0000)]
ar71xx: Add Support for the Bitmain Antminer S1

This patch adds support for the Bitmain Antminer S1 Cryptocurrency Miner

http://wiki.openwrt.org/toh/bitmain/s1

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Acked-by: James Hilliard <james.hilliard1@gmail.com>
SVN-Revision: 46044

8 years agofirmware-tools/ptgen: use stdint types for struct pte
Felix Fietkau [Sun, 14 Jun 2015 17:41:21 +0000 (17:41 +0000)]
firmware-tools/ptgen: use stdint types for struct pte

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 45957

8 years agofirmware-tools/ptgen: fix endianness conversion for PTE .start, .length field.
Felix Fietkau [Sun, 14 Jun 2015 17:41:16 +0000 (17:41 +0000)]
firmware-tools/ptgen: fix endianness conversion for PTE .start, .length field.

They are of 32-bit little endian integers.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
SVN-Revision: 45956

8 years agotools/firmware-utils: Allow changing the CRC32 poly value in mkbrnimg
John Crispin [Wed, 3 Jun 2015 13:58:48 +0000 (13:58 +0000)]
tools/firmware-utils: Allow changing the CRC32 poly value in mkbrnimg

VGV7519 is currently the only device with brnboot support. It seems to
be happy with 0x2083b8ed as CRC32 poly. However, VGV7510KW22 fails to
validate the checksum - it requires 0x04c11db7 instead.

I have built an brnboot image manually on the command line, once with
the old code and then with the new code but passing the old CRC32
poly value. Both resulted in a brnboot image with the same sha1sum.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
SVN-Revision: 45881

8 years agofirmware-utils: asustrx: support setting firmware version
Rafał Miłecki [Wed, 27 May 2015 17:58:11 +0000 (17:58 +0000)]
firmware-utils: asustrx: support setting firmware version

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 45791

8 years agofirmware-utils: asustrx: new tool for TRX format with Asus tail
Rafał Miłecki [Wed, 27 May 2015 13:54:02 +0000 (13:54 +0000)]
firmware-utils: asustrx: new tool for TRX format with Asus tail

Asus devices use TRX format with some extra data at the end.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 45773

9 years agomktplinkfw: add flag to ignore size limit (used for initramfs images)
Felix Fietkau [Fri, 8 May 2015 14:02:33 +0000 (14:02 +0000)]
mktplinkfw: add flag to ignore size limit (used for initramfs images)

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 45644

9 years agobrcm63xx: do not align squashfs rootfs start
Jonas Gorski [Fri, 27 Feb 2015 17:38:14 +0000 (17:38 +0000)]
brcm63xx: do not align squashfs rootfs start

We do not need to align the start of read only rootfs's to erase blocks.
This allows us to write the squashfs rootfs directly behind the kernel,
potentially freeing up one erase block.

We still need to align for jffs2, so add a flag for imagetag to
optionally align the rootfs start.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44556

9 years agofirmware-utils: imagetag: use cyg_crc32 instead of duplicating code
Jonas Gorski [Fri, 27 Feb 2015 17:38:05 +0000 (17:38 +0000)]
firmware-utils: imagetag: use cyg_crc32 instead of duplicating code

Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44554

9 years agoar71xx: TL-WA7210n v2 support
John Crispin [Tue, 24 Feb 2015 12:00:50 +0000 (12:00 +0000)]
ar71xx: TL-WA7210n v2 support

This patch adds support for TP-Link TL-WA7210n[0]

[0] http://www.tplink.com/en/products/details/?model=TL-WA7210N

Signed-off-by: Hendrik Frenzel <hfrenzel@scunc.net>
SVN-Revision: 44526

9 years agotools: remove static linking support
Jo-Philipp Wich [Fri, 6 Feb 2015 00:00:43 +0000 (00:00 +0000)]
tools: remove static linking support

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44285

9 years agoar71xx: Revert "added board support for compex wpj558"
John Crispin [Mon, 2 Feb 2015 10:32:04 +0000 (10:32 +0000)]
ar71xx: Revert "added board support for compex wpj558"

This reverts commit f7873071561d82e75ba2dc46433a2982fef8ac6f.

Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 44245

9 years agoadded board support for compex wpj558
John Crispin [Mon, 2 Feb 2015 09:00:21 +0000 (09:00 +0000)]
added board support for compex wpj558

Signed-off-by: Christian Mehlis <christian@m3hlis.de>
SVN-Revision: 44237

9 years agoar71xx: add support for TL-WA701ND v2
John Crispin [Tue, 20 Jan 2015 15:48:07 +0000 (15:48 +0000)]
ar71xx: add support for TL-WA701ND v2

Signed-off-by: Luigi Tarenga <luigi.tarenga@gmail.com>
SVN-Revision: 44063

9 years agotools: edimax_fw_header: fix suspicious memset usage
Florian Fainelli [Sat, 10 Jan 2015 18:08:16 +0000 (18:08 +0000)]
tools: edimax_fw_header: fix suspicious memset usage

memset() was called with a size argument against a pointer size, not the
structure size itself.

Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 43913

9 years agotools/firmware-utils: add version 3 header support for mktplinkfw2
Felix Fietkau [Fri, 9 Jan 2015 15:40:39 +0000 (15:40 +0000)]
tools/firmware-utils: add version 3 header support for mktplinkfw2

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43897

9 years agobuffalo-enc: pass the longstate option to decryption
Felix Fietkau [Sat, 20 Dec 2014 15:26:31 +0000 (15:26 +0000)]
buffalo-enc: pass the longstate option to decryption

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43756

9 years agobuffalo-enc: accept the longstate command line option
Felix Fietkau [Sat, 20 Dec 2014 15:26:25 +0000 (15:26 +0000)]
buffalo-enc: accept the longstate command line option

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43755

9 years agoBelkin AC 1750 DB (F9K1115v2) support
Imre Kaloz [Wed, 17 Dec 2014 08:27:38 +0000 (08:27 +0000)]
Belkin AC 1750 DB (F9K1115v2) support

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 43734

9 years agoramips: generate factory images for Nexx devices
John Crispin [Sun, 7 Dec 2014 16:53:22 +0000 (16:53 +0000)]
ramips: generate factory images for Nexx devices

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
SVN-Revision: 43541

9 years agofirmware-utils: remove dependency on error.h in tplink-safeloader
Felix Fietkau [Thu, 27 Nov 2014 15:01:56 +0000 (15:01 +0000)]
firmware-utils: remove dependency on error.h in tplink-safeloader

Fixes build on Mac OS X

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43402

9 years agofirmware-utils: add new tool tplink-safeloader for the new TP-LINK Pharos devices...
John Crispin [Wed, 26 Nov 2014 08:59:22 +0000 (08:59 +0000)]
firmware-utils: add new tool tplink-safeloader for the new TP-LINK Pharos devices (CPE210/220/510/520)

The new TP-LINK Pharos series uses a new bootloader, the "TP-LINK Safeloader".
It uses an advanced firmware image format, containing an image partition table
and a flash partition table (and image partitions are mapped to the
corresponding flash partitions). The exact image format is documented in the
source code.

Furthermore, the bootloader expects the kernel image as an ELF executable.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 43384

9 years agoramips: add support for A5-V11 board (resubmit)
John Crispin [Wed, 29 Oct 2014 11:01:17 +0000 (11:01 +0000)]
ramips: add support for A5-V11 board (resubmit)

(Reposted due to an issue with the patchwork server during original submission)

Unbranded. Silkscreen on PCB is “A5-V11”, believed to be made by Bococom (or at least uses Bococom image encryption - as used on poray devices - but different key)

Signed-off-by: Gareth Bryan <gareth@mx9.org>
SVN-Revision: 43102

9 years agofirmware-utils: rename encrypt()/decrypt() in mkhilinkfw to avoid collisions
Felix Fietkau [Mon, 20 Oct 2014 09:18:36 +0000 (09:18 +0000)]
firmware-utils: rename encrypt()/decrypt() in mkhilinkfw to avoid collisions

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 42998

9 years agofirmware-utils: restore compilation of mkhilinkfw.
John Crispin [Mon, 20 Oct 2014 06:29:38 +0000 (06:29 +0000)]
firmware-utils: restore compilation of mkhilinkfw.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
SVN-Revision: 42989

9 years agofirmware-utils: fix compilation warnings.
John Crispin [Mon, 20 Oct 2014 06:29:13 +0000 (06:29 +0000)]
firmware-utils: fix compilation warnings.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
SVN-Revision: 42986

9 years agofirmware-utils: allow passing a specific MBR signature to ptgen
Jo-Philipp Wich [Thu, 16 Oct 2014 16:16:47 +0000 (16:16 +0000)]
firmware-utils: allow passing a specific MBR signature to ptgen

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 42934

9 years agofirmware-utils: add NEXX factory image support
John Crispin [Mon, 6 Oct 2014 04:52:01 +0000 (04:52 +0000)]
firmware-utils: add NEXX factory image support

This patch adds support to encode and decode images for certain types of
NEXX routers.

SVN-Revision: 42784

9 years agofirmware-utils: made mkdir615h1 work for all Senao-produced devices as mksenaofw...
John Crispin [Sun, 3 Aug 2014 11:13:58 +0000 (11:13 +0000)]
firmware-utils: made mkdir615h1 work for all Senao-produced devices as mksenaofw and cleaned up some of its formatting

Signed-off-by: Forest Crossman <cyrozap@gmail.com>
SVN-Revision: 41962

9 years agofirmware-utils: add new tool for fixing headers on ZyXEL devices (brcm63xx)
Jonas Gorski [Sun, 27 Jul 2014 17:44:51 +0000 (17:44 +0000)]
firmware-utils: add new tool for fixing headers on ZyXEL devices (brcm63xx)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 41849

9 years agofirmware-utils/mktplinkfw: add support for GL.iNet v1
Gabor Juhos [Sun, 13 Jul 2014 18:21:08 +0000 (18:21 +0000)]
firmware-utils/mktplinkfw: add support for GL.iNet v1

Patch is based on http://patchwork.openwrt.org/patch/5273/.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Michel Stempin <michel.stempin@wanadoo.fr>
Signed-off-by: Mark Janssen <mark@sig-io.nl>
Signed-off-by: alzhao <alzhao@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/5653/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 41620

9 years agofirmware-utils/mkdir615h1: fix magic XOR calculation
John Crispin [Tue, 24 Jun 2014 18:13:00 +0000 (18:13 +0000)]
firmware-utils/mkdir615h1: fix magic XOR calculation

Signed-off-by: Forest Crossman <cyrozap@gmail.com>
SVN-Revision: 41314

9 years agolantiq: DGN3500 (all known variants) factory and sysupgrade image building support
John Crispin [Tue, 17 Jun 2014 15:38:54 +0000 (15:38 +0000)]
lantiq: DGN3500 (all known variants) factory and sysupgrade image building support

This patch adds factory image building for the DGN3500, all variants,
and fixes sysupgrade images to make them play nice with the sercomm
secondary boot loader.

The factory images can be used directly in the update dialog in the
interface of the stock firmware and via the special Sercomm bootmode
and a special windows flashing utility (allegedly present in the CD
that came with the device -- but it's also compatible with the NSLU2
Upgrade_207_XP utility.) The special bootmode can be activated by
turning the device on while holding the reset button pressed, then
releasing it when the power led starts blinking red and green. Please
notice that if using the 207 utility, it will always report that the
flashing failed even though it completed successfully. Just power
cycle the router manually after the utility reports the failure and
OpenWRT will boot. This same utility (despite reporting failure in
this case too) can revert a DGN3500 (any variant) to the appropriate
stock Netgear firmware.

This patch is a heavily modified version of a package I found on the
OpenWRT forum with a couple fixes and features added -- mainly the
generation of all the different image variants to support all known
models directly, atm known variants are AnnexA-WW, AnnexA-NA and
AnnexB-DE/GR.

I tested the patch successfully on my device.

Signed-off-by: Marco Antonio Mauro <marcus90@gmail.com>
SVN-Revision: 41236

9 years agoramips: RT-N56U support fixes and factory image creation
John Crispin [Mon, 16 Jun 2014 18:57:20 +0000 (18:57 +0000)]
ramips: RT-N56U support fixes and factory image creation

Signed-off-by: Mikko Hissa <mikko.hissa@werzek.com>
SVN-Revision: 41224

10 years agofirmware-utils: add Gemtek header tool
John Crispin [Tue, 22 Apr 2014 08:08:39 +0000 (08:08 +0000)]
firmware-utils: add Gemtek header tool

Generates webflash-compatible images for a few RT2880 routers based
on Gemtek OEM boards.

Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 40551

10 years agofirmware-utils/mktplinkfw: add support for TL-WDR4300v1 (IL)
Gabor Juhos [Thu, 27 Mar 2014 06:36:58 +0000 (06:36 +0000)]
firmware-utils/mktplinkfw: add support for TL-WDR4300v1 (IL)

The version of TL-WDR4300 sold in Israel comes with a different
hardware id.

Patch-by: Daniel <daniel@makrotopia.org>
Patchwork: http://patchwork.openwrt.org/patch/5001/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 40037