diff options
author | cshore <cshore@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-11-16 06:46:53 +0000 |
---|---|---|
committer | cshore <cshore@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-11-16 06:46:53 +0000 |
commit | 33d20e9dce82c6a2cfa04bf62c558d591a17ae3d (patch) | |
tree | 8482554dc599aafac91e637587c204e26c99aa3f /target | |
parent | 038dd5fbe688b98bab8d8893adc3ab64a404e4f7 (diff) |
[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
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/brcm63xx/image/Makefile | 48 |
1 files changed, 25 insertions, 23 deletions
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile index e2d63be34..56d048bbb 100644 --- a/target/linux/brcm63xx/image/Makefile +++ b/target/linux/brcm63xx/image/Makefile @@ -30,30 +30,32 @@ endef define Image/Build/CFE # Generate the tagged image $(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \ - -o $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin \ - -b $(2) -c $(3) -e $(LOADADDR) -l $(LOADADDR) \ - -r "$(5)" $(6) -# -b $(2) -c $(3) -e $(KERNEL_ENTRY) -l $(LOADADDR) - + --output $(BIN_DIR)/openwrt-$(4)-$(1)-cfe.bin \ + --boardid $(2) --chipid $(3) --entry $(KERNEL_ENTRY) \ + --load-addr $(LOADADDR) --rsa-signature "$(5)" \ + --info1 "$(4) $(REVISION)" --info2 $(1) \ + $(6) $(7) $(8) $(9) endef define Image/Build/CFEAGPF # Generate the tagged image $(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \ - -o $(BIN_DIR)/openwrt-$(5)-$(1)-cfe.bin \ - -b $(2) -c $(3) -e $(LOADADDR) -l $(LOADADDR) \ - -v 8 -m IMAGE -k 0x20000 -n $(4) + --output $(BIN_DIR)/openwrt-$(5)-$(1)-cfe.bin \ + --boardid $(2) --chipid $(3) --entry $(LOADADDR) \ + --load-addr $(LOADADDR) --tag-version 8 \ + --signature2 IMAGE --block-size 0x20000 \ + --image-offset $(4) --info1 "$(5) $(REVISION)" --info2 $(1) endef define Image/Build/RG100A # Generate the tagged image $(STAGING_DIR_HOST)/bin/imagetag -i $(KDIR)/vmlinux.lzma.cfe -f $(KDIR)/root.$(1) \ - -o $(BIN_DIR)/openwrt-$(5)-$(1)-cfe.bin \ - -b $(2) -c $(3) -e $(LOADADDR) -l $(LOADADDR) \ - -k 0x20000 -n $(4) + --output $(BIN_DIR)/openwrt-$(5)-$(1)-cfe.bin \ + --boardid $(2) --chipid $(3) --entry $(LOADADDR) \ + --load-addr $(LOADADDR) --block-size 0x20000 \ + --image-offset $(4) --info1 "$(5) $(REVISION)" --info2 $(1) endef - define Image/Build/RedBoot cp $(KDIR)/vmlinux.elf $(BIN_DIR)/openwrt-$(1)-vmlinux.elf gzip -9 -c $(KDIR)/vmlinux > $(KDIR)/vmlinux.bin.gz @@ -106,29 +108,29 @@ define Image/Build dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync # Various routers $(call Image/Build/CFE,$(1),96345GW2,6345,96345GW2-generic) - $(call Image/Build/CFE,$(1),96345GW2,6345,96348GW2-bc221,,-y 5) + $(call Image/Build/CFE,$(1),96345GW2,6345,96348GW2-bc221,,--layoutver 5) $(call Image/Build/CFE,$(1),96345GW2,6345,92345GW2-revision,OpenWRT-$(REVISION)) $(call Image/Build/CFE,$(1),96348GW,6348,96348GW-generic,,) - $(call Image/Build/CFE,$(1),96348GW,6348,96348GW-bc221,,-y 5) + $(call Image/Build/CFE,$(1),96348GW,6348,96348GW-bc221,,--layoutver 5) $(call Image/Build/CFE,$(1),6338GW,6338,6338GW-generic,,) $(call Image/Build/CFE,$(1),6338W,6338,6338W-generic,,) # BT Voyager V210_BTR - $(call Image/Build/CFE,$(1),V210_BB,6348,BTV210_BTR,,-y 5) + $(call Image/Build/CFE,$(1),V210_BB,6348,BTV210_BTR,,--layoutver 5) # BT Voyager V210_ROI, V210_WB - $(call Image/Build/CFE,$(1),V210,6348,BTV210_ROI_WB,,-y 5) + $(call Image/Build/CFE,$(1),V210,6348,BTV210_ROI_WB,,--layoutver 5) # BT Voyager V2091_BTR - $(call Image/Build/CFE,$(1),V2091_BB,6348,BTV2091_BTR,,y 5) + $(call Image/Build/CFE,$(1),V2091_BB,6348,BTV2091_BTR,,--layoutver 5) # BT Voyager V2091_ROI, V2091_WB - $(call Image/Build/CFE,$(1),V2091,6348,BTV2091_ROI_WB,,-y 5) + $(call Image/Build/CFE,$(1),V2091,6348,BTV2091_ROI_WB,,--layoutver 5) # BT Voyager V220V, V220V_MGCP_BTR - $(call Image/Build/CFE,$(1),RTA1052V,6348,BTV220V_MGCP_BTR,,-y 5) + $(call Image/Build/CFE,$(1),RTA1052V,6348,BTV220V_MGCP_BTR,,--layoutver 5) # BT Voyager V2110, V2110_AA, V2110_ROI - $(call Image/Build/CFE,$(1),V2110,6348,BTV2110,,-y 5) + $(call Image/Build/CFE,$(1),V2110,6348,BTV2110,,--layoutver 5) # BT Voyager V2500V, V2500V_SIP_CLUB, V2500V_AA - $(call Image/Build/CFE,$(1),V2500V_BB,6348,BTV2500V,,-y 5) + $(call Image/Build/CFE,$(1),V2500V_BB,6348,BTV2500V,,--layoutver 5) # RTA1025W_16 (numerous routers) - $(call Image/Build/CFE,$(1),RTA1025W_16,6348,RTA1025W_16,,-y 5) + $(call Image/Build/CFE,$(1),RTA1025W_16,6348,RTA1025W_16,,--layoutver 5) # Tecom GW6000 $(call Image/Build/CFE,$(1),96348GW,6348,GW6000) # Tecom GW6200 @@ -166,7 +168,7 @@ define Image/Build # Pirelli A226G $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x10000,A226G-cfe) $(call Image/Build/CFEAGPF,$(1),DWV-S0,6358,0x10000,A226G) - + # RG100A,DB120 etc. $(call Image/Build/RG100A,$(1),96358VW2,6358,0x20000,RG100A_DB120) |