2024-01-06 12:46 AM
We have set SDMMC1 pin muxing like below. How can we boot from emmc on SDMMC1 interface??? Where should I do partitioning for emmc??
Kindly give solution-
D14 | PC8 | SDMMC1_D0 |
A16 | PC9 | SDMMC1_D1 |
B14 | PC10 | SDMMC1_D2 |
C14 | PC11 | SDMMC1_D3 |
A13 | PB14 | SDMMC1_D4 |
D9 | PB12 | SDMMC1_D5 |
B11 | PC6 | SDMMC1_D6 |
A11 | PC7 | SDMMC1_D7 |
A15 | PD2 | SDMMC1_CMD |
B15 | PC12 | SDMMC1_CK |
Solved! Go to Solution.
2024-01-07 11:33 PM
As eMMC default is SDMMC2, you should tell the BootROM to use SDMMC1 and related pins (only CLK, CMD and D0 is needed for BootROM stage, then pinmux is defined by Device Tree). To do this, you should program the OTP.
https://wiki.st.com/stm32mpu/wiki/How_to_update_OTP_with_U-Boot
https://wiki.st.com/stm32mpu/wiki/STM32CubeProgrammer_OTP_management
Assuming you are using STM32MP15, this post might help you to understand values you should put according to your HW.
https://community.st.com/t5/stm32-mpus-products/how-to-change-emmc-interface/td-p/344994
See also AN5031 (for STM32MP15) or AN5474 (STM32MP13)
wiki give some information too:
https://wiki.st.com/stm32mpu/wiki/STM32_MPU_ROM_code_overview#Boot_from_e-E2-80-A2MMC-E2-84-A2
https://wiki.st.com/stm32mpu/wiki/STM32MP15_OTP_mapping#AFmux_configuration or https://wiki.st.com/stm32mpu/wiki/STM32MP13_OTP_mapping#AFmux_configuration
Regards.
2024-01-06 05:30 AM - edited 2024-01-06 09:09 AM
Booting from eMMC doesn't make sense in this context. The MCU doesn't run an operating system that need to load various files, like a computer does.
Edit: I now see this was posted in the "STM32 MPUs" forum, yet with a tag of "STM32Cube MCU Packages," hence my answer. I suspect it's meant to be an MPU-specific question but who knows. No chip specified.
2024-01-07 11:33 PM
As eMMC default is SDMMC2, you should tell the BootROM to use SDMMC1 and related pins (only CLK, CMD and D0 is needed for BootROM stage, then pinmux is defined by Device Tree). To do this, you should program the OTP.
https://wiki.st.com/stm32mpu/wiki/How_to_update_OTP_with_U-Boot
https://wiki.st.com/stm32mpu/wiki/STM32CubeProgrammer_OTP_management
Assuming you are using STM32MP15, this post might help you to understand values you should put according to your HW.
https://community.st.com/t5/stm32-mpus-products/how-to-change-emmc-interface/td-p/344994
See also AN5031 (for STM32MP15) or AN5474 (STM32MP13)
wiki give some information too:
https://wiki.st.com/stm32mpu/wiki/STM32_MPU_ROM_code_overview#Boot_from_e-E2-80-A2MMC-E2-84-A2
https://wiki.st.com/stm32mpu/wiki/STM32MP15_OTP_mapping#AFmux_configuration or https://wiki.st.com/stm32mpu/wiki/STM32MP13_OTP_mapping#AFmux_configuration
Regards.
2024-01-10 09:18 AM
Thanks Patrick, after following steps and changing my AFmux config I am able to boot from emmc.