Patchwork bootimg.bbclass: Add parameter to specify HDDIMG volume ID

login
register
mail settings
Submitter Ricardo Neri
Date July 2, 2014, 12:57 a.m.
Message ID <1404262658-20024-1-git-send-email-ricardo.neri-calderon@linux.intel.com>
Download mbox | patch
Permalink /patch/74567/
State Accepted
Commit 28270fc8bfe7c4ddd0c5ef2b42a6620366ed8b32
Headers show

Comments

Ricardo Neri - July 2, 2014, 12:57 a.m.
Users and children of the bootimg class may need to specify at build
time the volume ID of the HDDIMG vfat partition. An example of this
may be when at runtime the partition is uniquely identified by
the volume ID.

The HDDIMG_ID is expected to be provided externally. If the variable
is not set, mkdosfs will use the default volume-id.

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
---
 meta/classes/bootimg.bbclass | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

Patch

diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
index 7678567..d52aace 100644
--- a/meta/classes/bootimg.bbclass
+++ b/meta/classes/bootimg.bbclass
@@ -22,6 +22,7 @@ 
 # ${COMPRESSISO} - Transparent compress ISO, reduce size ~40% if set to 1
 # ${NOISO}  - skip building the ISO image if set to 1
 # ${NOHDD}  - skip building the HDD image if set to 1
+# ${HDDIMG_ID} - FAT image volume-id
 # ${ROOTFS} - indicates a filesystem image to include as the root filesystem (optional)
 
 do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \
@@ -193,7 +194,14 @@  build_fat_img() {
 		FATSIZE="-F 32"
 	fi
 
-	mkdosfs ${FATSIZE} -n ${BOOTIMG_VOLUME_ID} -S 512 -C ${FATIMG} ${BLOCKS}
+	if [ -z "${HDDIMG_ID}" ]; then
+		mkdosfs ${FATSIZE} -n ${BOOTIMG_VOLUME_ID} -S 512 -C ${FATIMG} \
+			${BLOCKS}
+	else
+		mkdosfs ${FATSIZE} -n ${BOOTIMG_VOLUME_ID} -S 512 -C ${FATIMG} \
+		${BLOCKS} -i ${HDDIMG_ID}
+	fi
+
 	# Copy FATSOURCEDIR recursively into the image file directly
 	mcopy -i ${FATIMG} -s ${FATSOURCEDIR}/* ::/
 }