History log of /openwrt/tools/firmware-utils/src/imagetag.c
Revision Date Author Comments
# cea1fbf7 04-Nov-2015 Jonas Gorski <jogo@openwrt.org>

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>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@47380 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 0ab09e31 11-Oct-2015 Hauke Mehrtens <hauke@openwrt.org>

tools: firmware-utils: fix compiler warnings

This just fixes a lot of compiler warnings.

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


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@47181 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 646c36ca 27-Feb-2015 Jonas Gorski <jogo@openwrt.org>

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>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44556 3c298f89-4303-0410-b956-a3cf2f4a3e73


# f8368c6d 27-Feb-2015 Jonas Gorski <jogo@openwrt.org>

firmware-utils: imagetag: use cyg_crc32 instead of duplicating code

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

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44554 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 6111884b 27-May-2012 Jonas Gorski <jogo@openwrt.org>

tools: imagetag: add parameter for padding images

Allow images to be padded to a certain size. This prevents CFE from
flashing them to the second image offset.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31875 3c298f89-4303-0410-b956-a3cf2f4a3e73


# b2ae50ed 14-Apr-2011 Daniel Dickinson <daniel@cshore.neomailbox.net>

bcm63xx: Move the OpenWrt rootfs length field

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>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26680 3c298f89-4303-0410-b956-a3cf2f4a3e73


# ec103967 25-Dec-2010 Daniel Dickinson <daniel@cshore.neomailbox.net>

Added OpenWRT-specific field to imagetag so that we can record the real root length, so that when the CRC fixup is applied and the root length is recorded as zero we can still calculate the rootfs mtd partition size.

Signed-off-by: Daniel Dickinson <daniel@cshore.neomailbox.net>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24838 3c298f89-4303-0410-b956-a3cf2f4a3e73


# caefcca8 15-Nov-2010 Daniel Dickinson <daniel@cshore.neomailbox.net>

[tools/firmware-utils] imagetag: Significantly updated brcm63xx imagetag writing tool.
* Rewrote commandline parsing code using gengetopt
- We now get long options
- We have more options including use of the info section for
board information (e.g. to add the same boardid but
different GPIOs on different routers)
* Added back the ability to write stock images (this is useful, for example,
when copying the firmware from the in-memory flash, and then being
able to create an image that will let you revert to/test stock firmware
* Fixed copying of CRCs to use memcpy instead of strncpy (strncpy stops at 0)
* Added ability to use all sections of the imagetag, including custom magic
signatures (e.g. for the Telsey router I'm adding soon), info sections,
and reserved sections
* Added putting the router type (as defined in the image generating Makefile)
into the info1 section and the filesystem type in the info2 section.
This will be used by mtd (when I add the code) to return the name of
image used to flash this router. (As requested by Jo, as well as being
useful for same boardid different board scenario described above).



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24011 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 2d315771 14-Nov-2010 Daniel Dickinson <daniel@cshore.neomailbox.net>

[tools] brcm63xx: imagetag: Fixed occaisonal wrong CRC in image due to using strncpy to copy the CRC into the imagetag. strncpy stops copying after a 00 byte, memcpy doesn't.


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24000 3c298f89-4303-0410-b956-a3cf2f4a3e73


# e2ca235a 20-Jun-2010 Florian Fainelli <florian@openwrt.org>

[tools] remove whitespaces in imagetag tool

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21848 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 9b32abb3 01-Apr-2010 Florian Fainelli <florian@openwrt.org>

[brcm63xx] flashmap and image generation: reduced union bcm_tag to a single struct
combining the elements so that it is no longer necessary to create an openwrt-only
tagid and tagcrc, and elimate the tagid detection and switch statements which
made dealing with imagetags overly complicated, especially since the logic would
need analogs in all code that touched the imagetag. Patch from cshore.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20652 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 1c49507d 09-Aug-2009 Florian Fainelli <florian@openwrt.org>

[brcm63xx] add support for the Pirelli AG226G board (#5337)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17190 3c298f89-4303-0410-b956-a3cf2f4a3e73


# e951c62e 18-Jun-2009 Florian Fainelli <florian@openwrt.org>

[brcm63xx] add imagetag support for BT Voyager 2500V, patch from Daniel Dickinson (#5364)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16506 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 2670ed12 10-Jun-2009 Florian Fainelli <florian@openwrt.org>

The attached patch adds building of firmware
images for more routers based on the brcm63xx chipset.

Signed-Off By: Daniel Dickinson <crazycshore@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16396 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 3339e02e 09-Jun-2009 Florian Fainelli <florian@openwrt.org>

[brcm63xx] rework imagetag firmware generator and MTD partition parser to accomodate with all known
imagetag versions from Broadcom and vendors, patch from Daniel Dickinson (fixes #4987).


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16393 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 8e8024fc 22-May-2009 Florian Fainelli <florian@openwrt.org>

[tools] fix crc calculation with the new padding (#5143)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15977 3c298f89-4303-0410-b956-a3cf2f4a3e73


# bd03626d 12-May-2009 Florian Fainelli <florian@openwrt.org>

[tools] fix padding between end of the kernel and beginning of the rootfs in imagetag (#5108)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15801 3c298f89-4303-0410-b956-a3cf2f4a3e73


# fb6c465e 19-Apr-2009 Florian Fainelli <florian@openwrt.org>

[brcm63xx] make images that can be flashed using the stock firmware web interface, thanks to Anselmo Luginbuhl and Daniel Dickinson (#4909, #4943)


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15253 3c298f89-4303-0410-b956-a3cf2f4a3e73


# c0e3ae80 07-Apr-2009 Florian Fainelli <florian@openwrt.org>

[tools] revert changeset 15081 seems to break Alice box devices

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15140 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 1e938531 02-Apr-2009 Florian Fainelli <florian@openwrt.org>

[tools] compute rootfs crc32 required for brcm63xx web upgrades

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15081 3c298f89-4303-0410-b956-a3cf2f4a3e73


# bc2824ec 18-Mar-2009 Florian Fainelli <florian@openwrt.org>

[tools] cleanup imagetag

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14941 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 187b0d99 17-Mar-2009 Florian Fainelli <florian@openwrt.org>

[tools] fix a bug which prevented imagetag from correctly initializing the version and magic2, use the broadcom default magics, which allows uploading through web interfaces

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14925 3c298f89-4303-0410-b956-a3cf2f4a3e73


# 4750ec93 12-Mar-2009 Florian Fainelli <florian@openwrt.org>

[brcm63xx] add support for AGPF-S0 (Pirelli Alice Gate VoIP 2 Plus Wi-Fi) #4366

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14850 3c298f89-4303-0410-b956-a3cf2f4a3e73


# eb0eee58 10-Mar-2009 Florian Fainelli <florian@openwrt.org>

[tools] allow flash start address and firmware offset to be set on the command line (#4666)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14832 3c298f89-4303-0410-b956-a3cf2f4a3e73


# fb11dfd1 08-Nov-2008 Florian Fainelli <florian@openwrt.org>

Fix small typo #4148

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13142 3c298f89-4303-0410-b956-a3cf2f4a3e73


# c097f77d 18-May-2008 Felix Fietkau <nbd@openwrt.org>

bcm963xx: add cfe image tagging utility

This replaces the proprietary bcmImageBuilder program from the Broadcom source
drops. It basically adds a 256 bytes header in front of the kernel + rootfs
which contains a few text signatures, the locations of the data as well as the
checksums of the data and the tag. It also adds a 12 bytes header in front of
the LZMA kernel which contains the load address, kernel entry and the size of
the compressed LZMA data.

Signed-off-by: Axel Gembe <ago@bastart.eu.org>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11170 3c298f89-4303-0410-b956-a3cf2f4a3e73