We have seen an issue when trying to program Flash devices that are above 32GB with the STM32CubeProgrammer. The following steps outline the procedure that was used to program a 128GB SD card on the OSD32MP1-RED platform. You will need to modify for your situation.
-
Use existing Cube Programmer + Flashalyout combination to just flash FSBL1 and FSBL2 partitions. You can use the attached Flashlayout file "FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_boot.tsv" as reference.
-
Use the attached Flashlayout file "FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_user.tsv" and attached "create_sdcard_from_flashlayout.sh" to generate a raw image for remaining partitions FIP + ROOTFS + USERFS + VENDORFS. The output will be named "FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_user.raw"
-
Change the name of the output file from "FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_user.raw" to "FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_user.bin"
-
Now use the attached Flashlayout file "FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_user_raw.tsv" with Cube Programmer: "STM32_Programmer_CLI -c port=USB1 -w flashlayout_octavo-image-weston/trusted/FlashLayout_emmc_stm32mp157c-osd32mp1-red-trusted_user_raw.tsv". This will program a binary image that contains partitions FIP, ROOTFS, VENDORFS and USERFS to the eMMC without running into an error.
-
Since you now have all the partitions needed on the eMMC, you should be able to boot from the eMMC.