Просмотр исходного кода

imx: extract common combined image operations between subtargets

The same combined image format can be used to boot both i.MX 6 and
i.MX 7 platforms - extract the common part.

Signed-off-by: Lech Perczak <[email protected]>
Lech Perczak 3 лет назад
Родитель
Сommit
d545825cb3

+ 51 - 0
target/linux/imx/image/common.mk

@@ -0,0 +1,51 @@
+define Build/imx-combined-image-prepare
+	rm -rf [email protected]
+	mkdir -p [email protected]
+endef
+
+define Build/imx-combined-image-clean
+	rm -rf [email protected] [email protected]
+endef
+
+define Build/imx-combined-image
+	$(CP) $(IMAGE_KERNEL) [email protected]/uImage
+
+	$(foreach dts,$(DEVICE_DTS), \
+		$(CP) \
+			$(DTS_DIR)/$(dts).dtb \
+			[email protected]/;
+	)
+
+	mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
+		-n '$(DEVICE_ID) OpenWrt bootscript' \
+		-d bootscript-$(DEVICE_NAME) \
+		[email protected]/boot.scr
+
+	cp $@ [email protected]
+
+	$(SCRIPT_DIR)/gen_image_generic.sh $@ \
+		$(CONFIG_TARGET_KERNEL_PARTSIZE) \
+		[email protected] \
+		$(CONFIG_TARGET_ROOTFS_PARTSIZE) \
+		[email protected] \
+		1024
+endef
+
+define Build/imx-sdcard
+	$(Build/imx-combined-image-prepare)
+
+	if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img ]; then \
+		$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img \
+		[email protected]/u-boot.img; \
+	fi
+
+	if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img ]; then \
+		$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img \
+		[email protected]/u-boot-dtb.img; \
+	fi
+
+	$(Build/imx-combined-image)
+	dd if=$(STAGING_DIR_IMAGE)/$(UBOOT)-SPL of=$@ bs=1024 seek=1 conv=notrunc
+
+	$(Build/imx-combined-image-clean)
+endef

+ 2 - 0
target/linux/imx/image/cortexa7.mk

@@ -1,3 +1,5 @@
+include common.mk
+
 define Device/Default
   PROFILES := Default
   FILESYSTEMS := squashfs ext4

+ 6 - 56
target/linux/imx/image/cortexa9.mk

@@ -1,5 +1,7 @@
 DEVICE_VARS += MKUBIFS_OPTS UBOOT
 
+include common.mk
+
 define Build/boot-overlay
 	rm -rf [email protected]
 	mkdir -p [email protected]
@@ -44,62 +46,10 @@ define Build/recovery-scr
 	-d ./recovery-$(DEVICE_NAME) $@
 endef
 
-define Build/imx6-combined-image-prepare
-	rm -rf [email protected]
-	mkdir -p [email protected]
-endef
-
-define Build/imx6-combined-image-clean
-	rm -rf [email protected] [email protected]
-endef
-
-define Build/imx6-combined-image
-	$(CP) $(IMAGE_KERNEL) [email protected]/uImage
-
-	$(foreach dts,$(DEVICE_DTS), \
-		$(CP) \
-			$(DTS_DIR)/$(dts).dtb \
-			[email protected]/;
-	)
-
-	mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
-		-n '$(DEVICE_ID) OpenWrt bootscript' \
-		-d bootscript-$(DEVICE_NAME) \
-		[email protected]/boot.scr
-
-	cp $@ [email protected]
-
-	$(SCRIPT_DIR)/gen_image_generic.sh $@ \
-		$(CONFIG_TARGET_KERNEL_PARTSIZE) \
-		[email protected] \
-		$(CONFIG_TARGET_ROOTFS_PARTSIZE) \
-		[email protected] \
-		1024
-endef
-
-define Build/imx6-sdcard
-	$(Build/imx6-combined-image-prepare)
-
-	if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img ]; then \
-		$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.img \
-		[email protected]/u-boot.img; \
-	fi
-
-	if [ -f $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img ]; then \
-		$(CP) $(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot-dtb.img \
-		[email protected]/u-boot-dtb.img; \
-	fi
-
-	$(Build/imx6-combined-image)
-	dd if=$(STAGING_DIR_IMAGE)/$(UBOOT)-SPL of=$@ bs=1024 seek=1 conv=notrunc
-
-	$(Build/imx6-combined-image-clean)
-endef
-
 define Build/apalis-emmc
-	$(Build/imx6-combined-image-prepare)
-	$(Build/imx6-combined-image)
-	$(Build/imx6-combined-image-clean)
+	$(Build/imx-combined-image-prepare)
+	$(Build/imx-combined-image)
+	$(Build/imx-combined-image-clean)
 endef
 
 
@@ -184,7 +134,7 @@ define Device/solidrun_cubox-i
   KERNEL_SUFFIX := -zImage
   FILESYSTEMS := squashfs
   IMAGES := combined.bin dtb
-  IMAGE/combined.bin := append-rootfs | pad-extra 128k | imx6-sdcard
+  IMAGE/combined.bin := append-rootfs | pad-extra 128k | imx-sdcard
   IMAGE/dtb := install-dtb
 endef
 TARGET_DEVICES += solidrun_cubox-i