bcm53xx: append only 1 block (with erasing mark) to UBI
authorRafał Miłecki <zajec5@gmail.com>
Tue, 21 Apr 2015 08:20:00 +0000 (08:20 +0000)
committerRafał Miłecki <zajec5@gmail.com>
Tue, 21 Apr 2015 08:20:00 +0000 (08:20 +0000)
This is needed as prepare_generic_squashfs generates more data (in our
case 0x40004 B) and it's complex for sysupgrade to extract UBI image out
of TRX.

Signed-off-by: Dan Haab <dhaab@luxul.com>
SVN-Revision: 45541

target/linux/bcm53xx/image/Makefile

index b3f2cd8..fb909c4 100644 (file)
@@ -14,6 +14,10 @@ define Image/Prepare
        echo -ne '\xde\xad\xc0\xde' > $(KDIR)/fs_mark
        $(call prepare_generic_squashfs,$(KDIR)/fs_mark)
 
+       # For UBI we want only one extra block
+       rm -f $(KDIR)/ubi_mark
+       echo -ne '\xde\xad\xc0\xde' > $(KDIR)/ubi_mark
+
        $(CP) ./ubinize.cfg $(KDIR)
 endef
 
@@ -33,12 +37,14 @@ endef
 define Build/trx-nand
        # kernel: always use 4 MiB (-28 B or TRX header) to allow upgrades even
        #         if it grows up between releases
+       # root: UBI with one extra block containing UBI mark to trigger erasing
+       #       rest of partition
        $(STAGING_DIR_HOST)/bin/trx \
                -o $@ \
                -m 33554432 \
                -f $(word 1,$^) -a 0x20000 -b 0x400000 \
-               -f $(KDIR)/root-block-0x20000-min-0x800.ubi -a 0x20000 \
-               -A $(KDIR)/fs_mark
+               -f $(KDIR)/root-block-0x20000-min-0x800.ubi \
+               -A $(KDIR)/ubi_mark -a 0x20000
 endef
 
 define Build/netgear-chk