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
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
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
(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
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
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
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
- fix crc32 calculation if -F was enabled.
- don't convert the crc32 to little endian twice.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
SVN-Revision: 38962
A few things had to be changed to add support for these devices:
- support code patterns with 8 characters
- new board definition for the range extender device
Patchwork: http://patchwork.openwrt.org/patch/4280/
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38685
RSPRO has 16MiB of Flash, using the following layout:
[ 2.930000] 0x000000000000-0x000000030000 : "RedBoot"
[ 2.940000] 0x000000030000-0x000000130000 : "kernel"
[ 2.950000] 0x000000130000-0x000000ff0000 : "rootfs"
[ 2.960000] 0x000000ff0000-0x000000fff000 : "FIS directory"
[ 2.970000] 0x000000fff000-0x000001000000 : "RedBoot config"
Firmware images contain kernel and rootfs, so they can use up to 0xFF0000 -
0x30000 = 0xFC0000 (15,75MiB) of space. We don't include the RedBoot and FIS
partitions and leave an extra 0xC0000 (768KiB) of space.
This is based on revision 18410 which sets the limit to 0xB00000 (11 MiB).
Signed-off-by: Bruno Randolf <br1@einfach.org>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38484
This commit adds the basic elements to support Poray brand routers.
It contains a tool to do the encryption/obfuscation that is used in
Poray routers.
Support for Poray devices was worked on by:
Felix Kaechele <heffer@fedoraproject.org>
Luis Soltero <lsoltero@globalmarinenet.com>
Michel Stempin <michel.stempin@wanadoo.fr>
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
SVN-Revision: 37635
Add Netgear WNCE2001.
This is a small RT3052 device with 4MB spi flash and 32MB ram.
2 built-in antennas, 1x fastE, no USB, reset & wps switch.
On my model the AP/RT switch is unpopulated, but I verified the gpio
mapping for it.
The stock firmware is running an unprotected tftpd which allows you
to read any file from the filesystem.
Serial port is present on testpads (See image on the wiki page).
There are more testpads below the shield near the SoC, which
may have JTAG.
Slight annoyance: The bootloader is checksumming kernel&rootfs, but
can be tricked by zeroing checksum and length fields in the checksum
partition, see
target/linux/ramips/base-files/lib/preinit/04_disable_wnce2001_flash_checksumming
The manufacturer image is very similar to the DAP one, so I slightly
modified mkdapimg to support generating it.
The resulting
openwrt-ramips-rt305x-wnce2001-squashfs-factory-(worldwide|northamerica).bin
can be used to flash from stock to OpenWRT using the stock firmware
upgrade function, without using the serial port.
http://www.netgear.com/landing/wnce2001.aspxhttp://wiki.openwrt.org/toh/netgear/wnce2001
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 36289
Based on the following patch:
http://patchwork.openwrt.org/patch/3043/
Signed-off-by: Cezary Jackiewicz <cezary.jackiewicz@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 34781
While the disadvantage is less available flash space, it's easy and
safe to flash without opening the device.
Going back to the original firmware is also possible.
This patch add two firmware utilities, mkbrncmdline and mkbrnboot.
mkbrncmdline patches the uncompressed kernel so the registeres a0 to
a3 are initialized and the memory size is passed in.
mkbrnboot takes the lzma compressed kernel and squashfs images and
creates a firmware image that can be flashed using the BRN-BOOT
recovery kernel, which is booted by holding both buttons when
powering up the device and will listen on http://192.168.2.1.
The firmware file from bin/lantiq/ to use is
openwrt-lantiq-danube-ARV4525PW-BRNDTW502-brnImage
The BRN-BOOT recovery kernel does size-check the image, so if it's
too big to fit into flash it will complain accordingly.
A second patch is needed to make the wired network interface work
since there is no u-boot to pre-initialise it.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 30532
Add two helpers for generating correctly tagged images for the T-Home
Speedport W 303V Typ B as well as xor'd ones as required by CFE.
Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com>
SVN-Revision: 26877
Dual image capable CFEs store an image sequence at the same place as
currently OpenWrt stores the actual rootfs length, so it will get
overwritten when flashing through such a CFE.
To prevent this from happening, move the rootfs length field to the next
four bytes, thus completely using the reserved1 field.
Since the reserved1 field is now completely in use, it does not make sense
to allow it to be set from the imagetag utility, so remove the option.
Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com>
SVN-Revision: 26680
Same as TL-WR741ND but with different hardware ID and without
detachable antenna.
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
SVN-Revision: 24811
CFE does not boot images generated with these checksums because of
wrong checksum.
After flashing then with tftp to my Asus wl500-GPv1 the following messages
are show:
Null Rescue Flag.
Boot program checksum is invalid
Hello!! Enter Rescue Mode: (Check error)
SVN-Revision: 22418
* reduce image size for CRC calculation by fs_mark size
sysupgrade sometimes failed for me and I noticed that it was due
to incorrect CRC values in trx-header after performing it.
It seems that the fs_mark was completely included in the calculation
and that it was nevertheless modified by sysupgrade while appending
the jffs data.
This only occurs for the first boot after sysupgrade as the flashmap
driver recalculates the CRC to an even smaller area when it boots.
SVN-Revision: 22396
Attached patch enhances the mktplinkfw utility:
1. existing firmware files in TP-Link format can now be inspected, showing eg. the used offsets
2. optionally the kernel and rootfs parts can be extracted (saves calculations for dd)
3. when generating firmwares, kernel entry point, load address and rootfs offset can be overwritten (for experienced users)
Patch-by: Pieter "Fate" Hollants <pieter@hollants.com>
SVN-Revision: 22169
* changed addpattern.c to preset the stable and try flags used in TRXv2 images
to dupe CFE and pretend a stable image.
* changed trx.c to calculate TRXv2 CRC with stable and try flags set to 0xFF
like CFE does on startup
* fixed compile warnings in trx.c by explicit casting
SVN-Revision: 22012
The test if a file can fit in an image considers the current offset
twice. So a image that would fit is too big.
Thanks-to: Michael Kurz <michi.kurz@googlemail.com>
SVN-Revision: 21445
- hacked addpattern due to changes in header format
- added "-5" to addpattern, some 0xFF are needed for trx2 header
"-4" broke CRC checking in CFE
- hacked trx.c due to new header format version
- added target to create trx-V2 images
the flashmap driver possibly needs to be customized.
SVN-Revision: 20433