diff options
author | Dalon Westergreen <dwesterg@gmail.com> | 2016-04-19 07:20:48 -0700 |
---|---|---|
committer | Dalon Westergreen <dwesterg@gmail.com> | 2016-04-19 10:39:08 -0700 |
commit | e8d74816bfe44263525a9534e2f0c43a4a2fae85 (patch) | |
tree | b03576b73b35ff688c0e06ae30e4d4cf568c39cd /classes | |
parent | 582a5683a4bde998fafbe6bba5e20474b78a01e3 (diff) | |
download | meta-altera-e8d74816bfe44263525a9534e2f0c43a4a2fae85.tar.gz |
SDcard fixes
1) Disable sdcard generation using UBOOT_CONFIG parameter
2) Fix type in sdcard class
SDCard generation still isnt working quite right. If
IMAGE_FSTYPES += " sdcard" is added, the sdcard image
is created but the uboot-config should automatically
add sdcard creation when the UBOOT_CONFIG selected
looks like "socfpga_cyclone5_socdk,sdcard".
TBD:
1) Add uboot env customization based on
selected uboot config
2) Fix sdcard generation issue
Diffstat (limited to 'classes')
-rw-r--r-- | classes/image_types_socfpga.bbclass | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/classes/image_types_socfpga.bbclass b/classes/image_types_socfpga.bbclass index 579bc5a..40d5b0b 100644 --- a/classes/image_types_socfpga.bbclass +++ b/classes/image_types_socfpga.bbclass | |||
@@ -1,12 +1,10 @@ | |||
1 | inherit image_types | 1 | inherit image_types |
2 | 2 | ||
3 | IMAGE_BOOTLOADER ?= "u-boot-socfpga" | ||
4 | SDCARD_ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3" | 3 | SDCARD_ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3" |
5 | 4 | ||
6 | # Boot partition size [in KiB] | 5 | # Boot partition size [in KiB] |
7 | IMAGE_ROOTFS_ALIGNMENT_cyclone5 ?= "2048" | 6 | IMAGE_ROOTFS_ALIGNMENT_cyclone5 ?= "2048" |
8 | IMAGE_ROOTFS_ALIGNMENT_arria5 ?= "2048" | 7 | IMAGE_ROOTFS_ALIGNMENT_arria5 ?= "2048" |
9 | IMAGE_ROOTFS_ALIGNMENT_arria10 ?= "10240" | ||
10 | 8 | ||
11 | BOOT_SPACE ?= "102400" | 9 | BOOT_SPACE ?= "102400" |
12 | 10 | ||
@@ -14,7 +12,7 @@ IMAGE_DEPENDS_sdcard = "parted-native:do_populate_sysroot \ | |||
14 | dosfstools-native:do_populate_sysroot \ | 12 | dosfstools-native:do_populate_sysroot \ |
15 | mtools-native:do_populate_sysroot \ | 13 | mtools-native:do_populate_sysroot \ |
16 | virtual/kernel:do_deploy \ | 14 | virtual/kernel:do_deploy \ |
17 | ${@d.getVar('IMAGE_BOOTLOADER', True) and d.getVar('IMAGE_BOOTLOADER', True) + ':do_deploy' or ''}" | 15 | virtual/bootloader:do_deploy" |
18 | 16 | ||
19 | SDCARD_GENERATION_COMMAND_cyclone5 = "generate_28nm_sdcard" | 17 | SDCARD_GENERATION_COMMAND_cyclone5 = "generate_28nm_sdcard" |
20 | SDCARD_GENERATION_COMMAND_arria5 = "generate_28nm_sdcard" | 18 | SDCARD_GENERATION_COMMAND_arria5 = "generate_28nm_sdcard" |
@@ -70,25 +68,25 @@ generate_28nm_sdcard () { | |||
70 | # Create partition table | 68 | # Create partition table |
71 | parted -s ${SDCARD} mklabel msdos | 69 | parted -s ${SDCARD} mklabel msdos |
72 | parted -s ${SDCARD} unit KiB mkpart primary fat32 ${IMAGE_ROOTFS_ALIGNMENT} $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) | 70 | parted -s ${SDCARD} unit KiB mkpart primary fat32 ${IMAGE_ROOTFS_ALIGNMENT} $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) |
73 | parted -s ${SDCARD} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE) | 71 | parted -s ${SDCARD} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE) |
74 | parted -s ${SDCARD} unit KiB mkpart primary 1024 2048 | 72 | parted -s ${SDCARD} unit KiB mkpart primary 1024 2048 |
75 | 73 | ||
76 | #set part 3 to type a2 for spl / uboot image | 74 | #set part 3 to type a2 for spl / uboot image |
77 | echo -ne "\xa2" | dd of=${SDCARD} bs=1 count=1 seek=482 conv=notrunc | 75 | echo -ne "\xa2" | dd of=${SDCARD} bs=1 count=1 seek=482 conv=notrunc |
78 | 76 | ||
79 | 77 | ||
80 | if [ -e "${DEPLOY_DIR_IMAGE}/${SPL_BINARY}-${UBOOT_CONFIG}" ] | 78 | if [ -e "${DEPLOY_DIR_IMAGE}/${SPL_BINARY}-${UBOOT_CONFIG}" ] |
81 | then | 79 | then |
82 | dd if=${DEPLOY_DIR_IMAGE}/${SPL_BINARY}-${UBOOT_CONFIG} of=${SDCARD} conv=notrunc seek=1 bs=$(expr 1024 \* 1024) | 80 | dd if=${DEPLOY_DIR_IMAGE}/${SPL_BINARY}-${UBOOT_CONFIG} of=${SDCARD} conv=notrunc seek=1 bs=$(expr 1024 \* 1024) |
83 | elsif [ -e "${DEPLOY_DIR_IMAGE}/${SPL_BINARY}-${UBOOT_CONFIG}" ] | 81 | elif [ -e "${DEPLOY_DIR_IMAGE}/${SPL_BINARY}-${UBOOT_CONFIG}" ] |
84 | then | 82 | then |
85 | dd if=${DEPLOY_DIR_IMAGE}/${SPL_BINARY} of=${SDCARD} conv=notrunc seek=1 bs=$(expr 1024 \* 1024) | 83 | dd if=${DEPLOY_DIR_IMAGE}/${SPL_BINARY} of=${SDCARD} conv=notrunc seek=1 bs=$(expr 1024 \* 1024) |
86 | else | 84 | else |
87 | bbfatal "${SPL_BINARY} does not exist." | 85 | bbfatal "${SPL_BINARY} does not exist." |
88 | fi | 86 | fi |
89 | 87 | ||
90 | parted ${SDCARD} print | 88 | parted ${SDCARD} print |
91 | 89 | ||
92 | _generate_boot_image 1 | 90 | _generate_boot_image 1 |
93 | # Burn Partition | 91 | # Burn Partition |
94 | dd if=${WORKDIR}/boot.img of=${SDCARD} conv=notrunc,fsync seek=1 bs=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) | 92 | dd if=${WORKDIR}/boot.img of=${SDCARD} conv=notrunc,fsync seek=1 bs=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) |
@@ -105,7 +103,7 @@ IMAGE_CMD_sdcard () { | |||
105 | BOOT_SPACE_ALIGNED=$(expr ${BOOT_SPACE} + ${IMAGE_ROOTFS_ALIGNMENT} - 1) | 103 | BOOT_SPACE_ALIGNED=$(expr ${BOOT_SPACE} + ${IMAGE_ROOTFS_ALIGNMENT} - 1) |
106 | BOOT_SPACE_ALIGNED=$(expr ${BOOT_SPACE_ALIGNED} - ${BOOT_SPACE_ALIGNED} % ${IMAGE_ROOTFS_ALIGNMENT}) | 104 | BOOT_SPACE_ALIGNED=$(expr ${BOOT_SPACE_ALIGNED} - ${BOOT_SPACE_ALIGNED} % ${IMAGE_ROOTFS_ALIGNMENT}) |
107 | SDCARD_SIZE=$(expr ${IMAGE_ROOTFS_ALIGNMENT} + ${BOOT_SPACE_ALIGNED} + $ROOTFS_SIZE + ${IMAGE_ROOTFS_ALIGNMENT}) | 105 | SDCARD_SIZE=$(expr ${IMAGE_ROOTFS_ALIGNMENT} + ${BOOT_SPACE_ALIGNED} + $ROOTFS_SIZE + ${IMAGE_ROOTFS_ALIGNMENT}) |
108 | 106 | ||
109 | # Initialize a sparse file | 107 | # Initialize a sparse file |
110 | if [ "x${UBOOT_CONFIG}" != "x" ] | 108 | if [ "x${UBOOT_CONFIG}" != "x" ] |
111 | then | 109 | then |
@@ -114,10 +112,10 @@ IMAGE_CMD_sdcard () { | |||
114 | SDCARD="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.sdcard" | 112 | SDCARD="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.sdcard" |
115 | fi | 113 | fi |
116 | dd if=/dev/zero of=${SDCARD} bs=1 count=0 seek=$(expr 1024 \* ${SDCARD_SIZE}) | 114 | dd if=/dev/zero of=${SDCARD} bs=1 count=0 seek=$(expr 1024 \* ${SDCARD_SIZE}) |
117 | 115 | ||
118 | ${SDCARD_GENERATION_COMMAND} | 116 | ${SDCARD_GENERATION_COMMAND} |
119 | } | 117 | } |
120 | 118 | ||
121 | # The sdcard requires the rootfs filesystem to be built before using | 119 | # The sdcard requires the rootfs filesystem to be built before using |
122 | # it so we must make this dependency explicit. | 120 | # it so we must make this dependency explicit. |
123 | IMAGE_TYPEDEP_sdcard = "${@d.getVar('SDCARD_ROOTFS', 1).split('.')[-1]}" \ No newline at end of file | 121 | IMAGE_TYPEDEP_sdcard = "${@d.getVar('SDCARD_ROOTFS', 1).split('.')[-1]}" |