diff options
Diffstat (limited to 'meta-phosphor/classes')
5 files changed, 67 insertions, 12 deletions
diff --git a/meta-phosphor/classes/image_types_phosphor.bbclass b/meta-phosphor/classes/image_types_phosphor.bbclass index 1edf3a3be..f7742c85e 100644 --- a/meta-phosphor/classes/image_types_phosphor.bbclass +++ b/meta-phosphor/classes/image_types_phosphor.bbclass @@ -27,6 +27,7 @@ IMAGE_TYPEDEP_mtd-ubi-tar = "${FLASH_UBI_BASETYPE}" IMAGE_TYPES_MASKED += "mtd-static mtd-static-alltar mtd-static-tar mtd-ubi mtd-ubi-tar" # Flash characteristics in KB unless otherwise noted +DISTROOVERRIDES .= ":flash-${FLASH_SIZE}" FLASH_SIZE ?= "32768" FLASH_PEB_SIZE ?= "64" # Flash page and overhead sizes in bytes @@ -36,13 +37,18 @@ FLASH_NOR_UBI_OVERHEAD ?= "64" # Fixed partition offsets FLASH_UBOOT_OFFSET ?= "0" FLASH_KERNEL_OFFSET ?= "512" +FLASH_KERNEL_OFFSET_flash-131072 ?= "1024" FLASH_UBI_OFFSET ?= "${FLASH_KERNEL_OFFSET}" FLASH_ROFS_OFFSET ?= "4864" +FLASH_ROFS_OFFSET_flash-131072 ?= "10240" FLASH_RWFS_OFFSET ?= "28672" +FLASH_RWFS_OFFSET_flash-131072 ?= "98304" # UBI volume sizes in KB unless otherwise noted. FLASH_UBI_RWFS_SIZE ?= "6144" +FLASH_UBI_RWFS_SIZE_flash-131072 ?= "32768" FLASH_UBI_RWFS_TXT_SIZE ?= "6MiB" +FLASH_UBI_RWFS_TXT_SIZE_flash-131072 ?= "32MiB" SIGNING_KEY ?= "${STAGING_DIR_NATIVE}${datadir}/OpenBMC.priv" INSECURE_KEY = "${@'${SIGNING_KEY}' == '${STAGING_DIR_NATIVE}${datadir}/OpenBMC.priv'}" @@ -72,8 +78,8 @@ python() { DISTROOVERRIDES .= ":static-rwfs-${OVERLAY_BASETYPE}" DISTROOVERRIDES .= ":ubi-rwfs-${FLASH_UBI_OVERLAY_BASETYPE}" -JFFS2_RWFS_CMD = "mkfs.jffs2 --root=jffs2 --faketime --output=rwfs.jffs2" -UBIFS_RWFS_CMD = "mkfs.ubifs -r ubifs -c ${FLASH_UBI_RWFS_LEBS} -m ${FLASH_PAGE_SIZE} -e ${FLASH_LEB_SIZE} rwfs.ubifs" +JFFS2_RWFS_CMD = "mkfs.jffs2 --root=jffs2 --faketime --output=${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.jffs2" +UBIFS_RWFS_CMD = "mkfs.ubifs -r ubifs -c ${FLASH_UBI_RWFS_LEBS} -m ${FLASH_PAGE_SIZE} -e ${FLASH_LEB_SIZE} ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.ubifs" FLASH_STATIC_RWFS_CMD_static-rwfs-jffs2 = "${JFFS2_RWFS_CMD}" FLASH_UBI_RWFS_CMD_ubi-rwfs-jffs2 = "${JFFS2_RWFS_CMD}" @@ -93,7 +99,7 @@ make_rwfs() { shift opts="$@" - rm -f rwfs.$type + rm -f ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.$type rm -rf $type mkdir $type @@ -158,7 +164,7 @@ do_make_ubi() { add_volume $cfg 1 static rofs-${VERSION_ID} \ ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.${FLASH_UBI_BASETYPE} - add_volume $cfg 2 dynamic rwfs rwfs.${FLASH_UBI_OVERLAY_BASETYPE} ${FLASH_UBI_RWFS_TXT_SIZE} + add_volume $cfg 2 dynamic rwfs ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.${FLASH_UBI_OVERLAY_BASETYPE} ${FLASH_UBI_RWFS_TXT_SIZE} # Build the ubi partition image ubinize -p ${FLASH_PEB_SIZE}KiB -m ${FLASH_PAGE_SIZE} -o ubi-img $cfg @@ -223,7 +229,10 @@ python do_generate_static() { int(d.getVar('FLASH_ROFS_OFFSET', True)), int(d.getVar('FLASH_RWFS_OFFSET', True))) - _append_image('rwfs.%s' % d.getVar('OVERLAY_BASETYPE', True), + _append_image(os.path.join(d.getVar('IMGDEPLOYDIR', True), + '%s.%s' % ( + d.getVar('IMAGE_LINK_NAME', True), + d.getVar('OVERLAY_BASETYPE', True))), int(d.getVar('FLASH_RWFS_OFFSET', True)), int(d.getVar('FLASH_SIZE', True))) @@ -231,9 +240,6 @@ python do_generate_static() { } do_mk_static_symlinks() { - # File needed for generating non-standard legacy links below - cp rwfs.${OVERLAY_BASETYPE} ${IMGDEPLOYDIR}/rwfs.${OVERLAY_BASETYPE} - cd ${IMGDEPLOYDIR} ln -sf ${IMAGE_NAME}.static.mtd ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.static.mtd @@ -243,7 +249,7 @@ do_mk_static_symlinks() { ln -sf u-boot.${UBOOT_SUFFIX} ${IMGDEPLOYDIR}/image-u-boot ln -sf ${FLASH_KERNEL_IMAGE} ${IMGDEPLOYDIR}/image-kernel ln -sf ${IMAGE_LINK_NAME}.${IMAGE_BASETYPE} ${IMGDEPLOYDIR}/image-rofs - ln -sf rwfs.${OVERLAY_BASETYPE} ${IMGDEPLOYDIR}/image-rwfs + ln -sf ${IMAGE_LINK_NAME}.${OVERLAY_BASETYPE} ${IMGDEPLOYDIR}/image-rwfs } do_generate_static[dirs] = "${S}/static" do_generate_static[depends] += " \ @@ -299,7 +305,7 @@ make_image_links() { ln -sf ${DEPLOY_DIR_IMAGE}/u-boot.${UBOOT_SUFFIX} image-u-boot ln -sf ${DEPLOY_DIR_IMAGE}/${FLASH_KERNEL_IMAGE} image-kernel ln -sf ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.$rofs image-rofs - ln -sf rwfs.$rwfs image-rwfs + ln -sf ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.$rwfs image-rwfs } make_tar_of_images() { diff --git a/meta-phosphor/classes/image_types_phosphor_nuvoton.bbclass b/meta-phosphor/classes/image_types_phosphor_nuvoton.bbclass new file mode 100644 index 000000000..16112e638 --- /dev/null +++ b/meta-phosphor/classes/image_types_phosphor_nuvoton.bbclass @@ -0,0 +1,46 @@ +UBOOT_BINARY := "u-boot.${UBOOT_SUFFIX}" +BOOTBLOCK = "Poleg_bootblock.bin" +FULL_SUFFIX = "full" +MERGED_SUFFIX = "merged" +UBOOT_SUFFIX_append = ".${MERGED_SUFFIX}" + +# Prepare the Bootblock and U-Boot images using npcm7xx-bingo +do_prepare_bootloaders() { + local olddir="$(pwd)" + cd ${DEPLOY_DIR_IMAGE} + bingo ${STAGING_DIR_NATIVE}/${bindir}/BootBlockAndHeader_EB.xml \ + -o ${DEPLOY_DIR_IMAGE}/${BOOTBLOCK}.${FULL_SUFFIX} + + bingo ${STAGING_DIR_NATIVE}/${bindir}/UbootHeader_EB.xml \ + -o ${DEPLOY_DIR_IMAGE}/${UBOOT_BINARY}.${FULL_SUFFIX} + + bingo ${STAGING_DIR_NATIVE}/${bindir}/mergedBootBlockAndUboot.xml \ + -o ${DEPLOY_DIR_IMAGE}/${UBOOT_BINARY}.${MERGED_SUFFIX} + cd "$olddir" +} + +do_prepare_bootloaders[depends] += " \ + npcm7xx-bootblock:do_deploy \ + npcm7xx-bingo-native:do_populate_sysroot \ + " + +addtask do_prepare_bootloaders before do_generate_static after do_generate_rwfs_static + +# Include the full bootblock and u-boot in the final static image +python do_generate_static_append() { + _append_image(os.path.join(d.getVar('DEPLOY_DIR_IMAGE', True), + 'u-boot.%s' % d.getVar('UBOOT_SUFFIX',True)), + int(d.getVar('FLASH_UBOOT_OFFSET', True)), + int(d.getVar('FLASH_KERNEL_OFFSET', True))) +} + +do_make_ubi_append() { + # Concatenate the uboot and ubi partitions + dd bs=1k conv=notrunc seek=${FLASH_UBOOT_OFFSET} \ + if=${DEPLOY_DIR_IMAGE}/u-boot.${UBOOT_SUFFIX} \ + of=${IMGDEPLOYDIR}/${IMAGE_NAME}.ubi.mtd +} + +do_make_ubi[depends] += "${PN}:do_prepare_bootloaders" +do_generate_ubi_tar[depends] += "${PN}:do_prepare_bootloaders" +do_generate_static_tar[depends] += "${PN}:do_prepare_bootloaders" diff --git a/meta-phosphor/classes/mrw-rev.bbclass b/meta-phosphor/classes/mrw-rev.bbclass index 72a22393b..b0a6b1f40 100644 --- a/meta-phosphor/classes/mrw-rev.bbclass +++ b/meta-phosphor/classes/mrw-rev.bbclass @@ -2,4 +2,4 @@ MRW_API_SRC_URI ?= "git://github.com/open-power/serverwiz.git" MRW_API_SRCREV ?= "60c8e10cbb11768cd1ba394b35cb1d6627efec42" MRW_TOOLS_SRC_URI ?= "git://github.com/openbmc/phosphor-mrw-tools" -MRW_TOOLS_SRCREV ?= "5dd783bfab6c73851fa31d50e6184a9511f20bcd" +MRW_TOOLS_SRCREV ?= "715c97ea76bb6c976e57dfa899f76a7106a7c2d5" diff --git a/meta-phosphor/classes/phosphor-networkd-rev.bbclass b/meta-phosphor/classes/phosphor-networkd-rev.bbclass index f5553a6a0..57878ddac 100644 --- a/meta-phosphor/classes/phosphor-networkd-rev.bbclass +++ b/meta-phosphor/classes/phosphor-networkd-rev.bbclass @@ -1,2 +1,2 @@ SRC_URI += "git://github.com/openbmc/phosphor-networkd" -SRCREV = "2dae96946ba6ea78e20823ab3aeba75f2e033a41" +SRCREV = "046b2a0b3707621a3828da1318b628bcc31d1aaa" diff --git a/meta-phosphor/classes/phosphor-software-manager-ubi-fs.bbclass b/meta-phosphor/classes/phosphor-software-manager-ubi-fs.bbclass index 6b0a78ec0..0280133fe 100644 --- a/meta-phosphor/classes/phosphor-software-manager-ubi-fs.bbclass +++ b/meta-phosphor/classes/phosphor-software-manager-ubi-fs.bbclass @@ -41,7 +41,10 @@ SYSTEMD_SERVICE_phosphor-software-manager-updater-ubi += " \ BMC_RW_MTD ??= "bmc" BMC_RO_MTD ??= "bmc" BMC_KERNEL_MTD ??= "bmc" +FLASH_SIZE ?= "32768" +DISTROOVERRIDES .= ":flash-${FLASH_SIZE}" BMC_RW_SIZE ??= "0x600000" +BMC_RW_SIZE_flash-131072 = "0x2000000" SYSTEMD_SUBSTITUTIONS += "RW_MTD:${BMC_RW_MTD}:obmc-flash-bmc-ubirw.service" SYSTEMD_SUBSTITUTIONS += "RO_MTD:${BMC_RO_MTD}:obmc-flash-bmc-ubiro@.service" SYSTEMD_SUBSTITUTIONS += "KERNEL_MTD:${BMC_KERNEL_MTD}:obmc-flash-bmc-ubiro@.service" |