Ich bin dabei, meine eigene IMAGE_FSTYPES=sdcard
Bild für eine Freescale Variscite VAR-SOM-MX6 zu generieren. Ich habe die meta-fsl-arm/classes/image_types_fsl.bbclass
Klasse kopiert und leicht modifiziert, so dass es drei Partitionen statt zwei gibt. Ich suche nach einer dritten Partition, die als FAT (vfat) formatiert ist, so dass Dateien auf der SD-Karte hinzugefügt werden können, so dass sie nicht neben Dateien in der Boot-Partition oder dem Root-Dateisystem sitzen.So formatieren Sie Partitionen für Yocto sdcard Bild für Variscite iMX6
Ich habe gemacht Ergänzungen der generate_imx_sdcard()
Funktion, wo ich eine neue Partition erstellen:
generate_imx_sdcard() {
# Create partition table
parted -s ${SDCARD} mklabel msdos
parted -s ${SDCARD} unit KiB mkpart primary fat32 ${IMAGE_ROOTFS_ALIGNMENT} $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED})
parted -s ${SDCARD} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE)
# Line below is the new partition I have added
parted -s ${SDCARD} unit KiB mkpart primary fat32 $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE \+ ${THIRD_PARTITION})
parted ${SDCARD} print
ich dafür gesorgt haben, dass die Gesamt sdcard Seite dies dies, indem beherbergt, wo ich die neue Partitionsgröße ${THIRD_PARTITION}
zu addieren, Gesamt sdcard (Gerät) Größe:
IMAGE_CMD_sdcard() {
if [ -z "${SDCARD_ROOTFS}" ]; then
bberror "SDCARD_ROOTFS is undefined. To use sdcard image from Freescale's BSP it needs to be defined."
exit 1
fi
# Align boot partition and calculate total SD card image size
BOOT_SPACE_ALIGNED=$(expr ${BOOT_SPACE} + ${IMAGE_ROOTFS_ALIGNMENT} - 1)
BOOT_SPACE_ALIGNED=$(expr ${BOOT_SPACE_ALIGNED} - ${BOOT_SPACE_ALIGNED} % ${IMAGE_ROOTFS_ALIGNMENT})
SDCARD_SIZE=$(expr ${IMAGE_ROOTFS_ALIGNMENT} + ${BOOT_SPACE_ALIGNED} + $ROOTFS_SIZE + ${IMAGE_ROOTFS_ALIGNMENT} + ${THIRD_PARTITION})
Wenn ich meine Schicht bitbake und die Ausgabe sdcard Bild auf einer SD-Karte verbrennen, die Trennwände sind entsprechend dimensionierte und verfügbar aber die Frage/Problem, das ich habe, ist, h Wie formatiere ich diese neu erstellte Partition?
Ich verstehe, dass eine regelmäßige Methode, dies zu tun wäre etwas in Richtung mkfs.vfat -n "Partition Name" /dev/sdd
, wo ich ein Gerät liefern, aber ich bin mir nicht sicher, wie Sie dies in Yocto tun, da es keine Gerätekennung, nur die ${SDCARD}
Variable . Ich verstehe, dass, wenn die Partition als ein ext4 Dateisystem formatiert werden würde, es möglich wäre Offsets zur Verfügung zu stellen, um die Formatierung zu tun, aber es scheint, als gäbe es keine Möglichkeit dies zu tun, wenn ich es als vfat formatieren wollte.
Jede Hilfe würde sehr geschätzt werden.