Commit Graph

27 Commits (3c77e4ae4d97ec14daeabfab12ec8b451184d0d6)

Author SHA1 Message Date
Alexander Couzens c47a1a3527 firmware-utils: honor env SOURCE_DATE_EPOCH
Use the timestamp from the enviroment SOURCE_DATE_EPOCH
if set instead of the build time.
Fixes reproducible builds for certain firmware images.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
7 years ago
Jonas Gorski 008aec391a 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
9 years ago
Hauke Mehrtens 3d1a65adb4 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
9 years ago
Jonas Gorski bb54859543 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 ago
Jonas Gorski 56fd5df368 firmware-utils: imagetag: use cyg_crc32 instead of duplicating code
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44554
9 years ago
Jonas Gorski b31108e0a8 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.

SVN-Revision: 31875
12 years ago
Daniel Dickinson f83c5938d2 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>

SVN-Revision: 26680
13 years ago
Daniel Dickinson fc3a1d0ba3 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>

SVN-Revision: 24838
14 years ago
Daniel Dickinson eadb5c84fa 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).
SVN-Revision: 24011
14 years ago
Daniel Dickinson 6cd4575153 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.
SVN-Revision: 24000
14 years ago
Florian Fainelli e79f259abf remove whitespaces in imagetag tool
SVN-Revision: 21848
14 years ago
Florian Fainelli 2a4fb82289 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.
SVN-Revision: 20652
14 years ago
Florian Fainelli 85698765da add support for the Pirelli AG226G board (#5337)
SVN-Revision: 17190
15 years ago
Florian Fainelli 1795111337 add imagetag support for BT Voyager 2500V, patch from Daniel Dickinson (#5364)
SVN-Revision: 16506
15 years ago
Florian Fainelli ca16accfbb The attached patch adds building of firmware images for more routers based on the brcm63xx chipset.
Signed-Off By: Daniel Dickinson <crazycshore@gmail.com>

SVN-Revision: 16396
15 years ago
Florian Fainelli 01118457e8 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).
SVN-Revision: 16393
15 years ago
Florian Fainelli ac7e89329b fix crc calculation with the new padding (#5143)
SVN-Revision: 15977
15 years ago
Florian Fainelli e5a836693e fix padding between end of the kernel and beginning of the rootfs in imagetag (#5108)
SVN-Revision: 15801
15 years ago
Florian Fainelli 1f334e3caa make images that can be flashed using the stock firmware web interface, thanks to Anselmo Luginbuhl and Daniel Dickinson (#4909, #4943)
SVN-Revision: 15253
15 years ago
Florian Fainelli 47387c945a revert changeset 15081 seems to break Alice box devices
SVN-Revision: 15140
15 years ago
Florian Fainelli 11a791a318 compute rootfs crc32 required for brcm63xx web upgrades
SVN-Revision: 15081
15 years ago
Florian Fainelli ddfb6e1637 cleanup imagetag
SVN-Revision: 14941
15 years ago
Florian Fainelli 1c9c725184 fix a bug which prevented imagetag from correctly initializing the version and magic2, use the broadcom default magics, which allows uploading through web interfaces
SVN-Revision: 14925
15 years ago
Florian Fainelli 6495fa36ea add support for AGPF-S0 (Pirelli Alice Gate VoIP 2 Plus Wi-Fi) #4366
SVN-Revision: 14850
15 years ago
Florian Fainelli 0e3c23cdb2 allow flash start address and firmware offset to be set on the command line (#4666)
SVN-Revision: 14832
15 years ago
Florian Fainelli bccf525528 Fix small typo #4148
SVN-Revision: 13142
16 years ago
Felix Fietkau 301ee97229 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>

SVN-Revision: 11170
16 years ago