diff options
author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-03-18 23:35:21 +0000 |
---|---|---|
committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-03-18 23:35:21 +0000 |
commit | d6a7552aad4537d1dc32c5e92c5159d7211372c2 (patch) | |
tree | 3e3aee7b257d4ccfc367abca5545f742bcedd89a /target/linux/rdc/image | |
parent | f87759a667c77a1afbe1393d2de60666c0337e37 (diff) |
[rdc] rework board detection
Rework board detection, separate board specific code into its own file. As a
result we also change the way rdc images are generated.
Support for board which required binary tools, like AMIT are dropped. Patch by
Bernhard Loos.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20294 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/rdc/image')
-rw-r--r-- | target/linux/rdc/image/Makefile | 60 | ||||
-rwxr-xr-x | target/linux/rdc/image/mkimg_sitecom.pl | 6 |
2 files changed, 9 insertions, 57 deletions
diff --git a/target/linux/rdc/image/Makefile b/target/linux/rdc/image/Makefile index 9b4c13508..59d59b4a7 100644 --- a/target/linux/rdc/image/Makefile +++ b/target/linux/rdc/image/Makefile @@ -26,62 +26,20 @@ define Image/Prepare/squashfs endef define Image/Build/ar525w - touch $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).img - touch $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2)-web.img - dd if=$(KDIR)/root.$(1) of=$(KDIR)/root.tmp $(call trxalign/$(1)) conv=sync - mv $(KDIR)/root.tmp $(KDIR)/root.$(1) - $(STAGING_DIR_HOST)/bin/airlink -b 1 -j $(shell bash -c 'echo $$[$(3)]') $(KDIR)/bzImage $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).img - $(STAGING_DIR_HOST)/bin/airlink -e -b 1 -j $(shell bash -c 'echo $$[$(3)]') $(KDIR)/bzImage $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2)-web.img -endef - -define Image/Postprocess/sitecom/squashfs - dd if=/dev/zero of=$(KDIR)/tmp2.img count=1 bs=32k #32k config data a start of flash - cat $(KDIR)/tmp.img >> $(KDIR)/tmp2.img - $(call prepare_generic_squashfs,$(KDIR)/tmp2.img) - dd if=$(KDIR)/tmp2.img of=$(KDIR)/tmp.img bs=32k skip=1 + cp $(KDIR)/bzImage $(KDIR)/bzImage.tmp + $(SCRIPT_DIR)/pad_image $(1) $(KDIR)/bzImage.tmp $(KDIR)/root.$(1) 32 + $(STAGING_DIR_HOST)/bin/airlink -b 1 $(KDIR)/bzImage.tmp $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).img + $(STAGING_DIR_HOST)/bin/airlink -e -b 1 $(KDIR)/bzImage.tmp $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2)-web.img endef define Image/Build/sitecom - $(TOPDIR)/target/linux/rdc/image/mkimg_sitecom.pl $(KDIR)/bzImage > $(KDIR)/tmp.img + cp $(KDIR)/bzImage $(KDIR)/bzImage.tmp + #32k config data + 20 bytes header + 2 bytes checksum after kernel image + $(SCRIPT_DIR)/pad_image $(1) $(KDIR)/bzImage.tmp $(KDIR)/root.$(1) 32790 + $(TOPDIR)/target/linux/rdc/image/mkimg_sitecom.pl $(KDIR)/bzImage.tmp > $(KDIR)/tmp.img cat $(KDIR)/root.$(1) >> $(KDIR)/tmp.img - $(call Image/Postprocess/sitecom/$(1)) cp $(KDIR)/tmp.img $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).img -endef - -define Image/Build/dir450 - touch $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).img - dd if=$(KDIR)/root.$(1) of=$(KDIR)/root.tmp $(call trxalign/$(1)) conv=sync - mv $(KDIR)/root.tmp $(KDIR)/root.$(1) - $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/onlyrootfs-$(BOARD)-$(1)-$(2).img -endef - -define Image/Build/g570s - $(call Image/Prepare/$(1)) - mv $(KDIR)/root.$(1) $(KDIR)/root.tmp - dd of=$(KDIR)/root.$(1) if=$(KDIR)/root.tmp $(call trxalign/$(1)) conv=sync - $(CP) $(KDIR)/bzImage $(BIN_DIR)/openwrt-tftp-$(BOARD)-$(1)-$(2).img - dd of=$(BIN_DIR)/openwrt-tftp-$(BOARD)-$(1)-$(2).img if=/dev/null bs=1024 seek=1024 - cat $(KDIR)/root.$(1) >> $(BIN_DIR)/openwrt-tftp-$(BOARD)-$(1)-$(2).img - if [ ! -x $(STAGING_DIR_HOST)/bin/zyxel_combine ]; then echo "#ERR Please copy the ZyXEL \"combine\" tool as $(STAGING_DIR_HOST)/bin/zyxel_combine to build."; fi - sh -c "mkdir $(KDIR)/zyxel.tmp && cd $(KDIR)/zyxel.tmp && mv ../root.tmp initrd.bin && cp ../bzImage kernel.bin && $(STAGING_DIR_HOST)/bin/zyxel_combine -mcf kernel.bin initrd.bin && mv image $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).rmt" || : - $(RM) -r $(KDIR)/zyxel.tmp -endef - -define Image/Prepare/amit/squashfs - echo -n "0123456789abcdef" > $(KDIR)/root.tmp - cat $(KDIR)/root.squashfs >> $(KDIR)/root.tmp - dd if=$(KDIR)/root.tmp of=$(KDIR)/root2.tmp bs=64k conv=sync - dd if=$(KDIR)/root2.tmp of=$(KDIR)/root.squashfs bs=1 skip=16 - $(RM) $(KDIR)/root.tmp $(KDIR)/root2.tmp - $(call add_jffs2_mark,$(KDIR)/root.squashfs) -endef - -define Image/Build/amit - $(call Image/Prepare/amit/$(1)) - if [ ! -x $(STAGING_DIR_HOST)/bin/amit_makebin ]; then echo "#ERR Please copy the AMIT \"makebin\" tool from http://mgb111.pradnik.net/ as $(STAGING_DIR_HOST)/bin/amit_makebin to build."; fi - sh -c "mkdir -p $(KDIR)/amit.tmp/linux_src/arch/i386/boot $(KDIR)/amit.tmp/rom_disk && cd $(KDIR)/amit.tmp && ln -s ../../root.$(1) rom_disk/fs.img && ln -s ../../../../../bzImage linux_src/arch/i386/boot && $(STAGING_DIR_HOST)/bin/amit_makebin && mv upgrade.img $(BIN_DIR)/openwrt-$(BOARD)-$(1)-anas350.bin" || : - $(RM) -r $(KDIR)/amit.tmp - $(STAGING_DIR_HOST)/bin/makeamitbin -o $(BIN_DIR)/openwrt-$(BOARD)-$(1)-ar360w3g.bin -1 ALK_ATG001 -2 Atropos linux3g $(KDIR)/bzImage ramdisk3g $(KDIR)/root.$(1) + rm $(KDIR)/tmp.img $(KDIR)/bzImage.tmp endef define Image/Build/bifferboard diff --git a/target/linux/rdc/image/mkimg_sitecom.pl b/target/linux/rdc/image/mkimg_sitecom.pl index 4dd4a398c..cfd5e652f 100755 --- a/target/linux/rdc/image/mkimg_sitecom.pl +++ b/target/linux/rdc/image/mkimg_sitecom.pl @@ -1,17 +1,11 @@ #!/usr/bin/perl -$bzimgsize = -s @ARGV[0]; -$padding = 4 - ($bzimgsize + 2) % 4; -if ($padding == 4) { - $padding = 0; } open (bzimg, @ARGV[0]); while (<bzimg>) { $i .= $_; } -$i .= "\0"x$padding; $i .= pack "v", -(unpack "%v*", $i); print "CSYS"; print pack("V", length($i)); print pack("V", 0); -#-s @ARGV[1] print "WRRM"; print pack("V", length($i)); print $i; |