cancel
Showing results for 
Search instead for 
Did you mean: 

How to change emmc interface

SChen.11
Associate III

Hi everyone,

The stm32mp1 use SDMMC2 as default emmc controller. Now, I need use SDMMC1 to connect emmc flash. And I saw the OTP need changed. Bud I am confuse about IOs of SDMMC1. Does it also need setting some OTP bits to pinmux CK, CMD, D0?

This picture show need change bit to chose SDMMC1.

0690X000008As5SQAS.png

This picture is confused me. When I use SDMMC1, is it need configure CMD, CK,D0 to default pinmux on SDMMC1? If it is needed, where to configure those?

0690X000008As5cQAC.png

16 REPLIES 16
PatrickF
ST Employee

Hi, hard to give any clues without more details.

If reboot, I assume there is message on the console UART. Could you share ?

Btw, do you use STPMIC1 ?

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
SMich.1
Senior

on the console i got nothing nothing and yes i use STPMIC1.

with the old eMMC the board jumped to usb boot and flashed the A13 red led . now woth the TOSHIBA eMMC there only resets.

Hi,

Do you succeed to flash the eMMC using CubeProgrammer and your customized TF-A and uBoot (especially for the interface and pin changes for eMMC) ?

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

yes, i managed to boot with usb to uboot and then upload the kernel from the emmc to ddr and start linux. everything working except from boot with boot pins from emmc.

We suspect that our PMIC have some issues with power to emmc may be something with power sequence.

Hi,

need to clarify the behavior during you boot. You mention 'only resets'. I think the reset is correctly released, but your TF-A is hanging (as the BootROM does not fallback to USB).

Do you confirm that your using USB you loaded the same TF-A and uBoot which you have flashed ? Are least check that the TF-A UART console was working during this stage.

You should have a look to your TF-A DT or code. One common pitfall could be a bad HSE setting (which might work during Flash programming as uses the BootROM HSE autodetection used for USB DFU connection). Our boards uses an external 24MHz oscillator, and if your board have a crystal, DT settings should be adapted. See https://wiki.st.com/stm32mpu/wiki/Clock_device_tree_configuration_-_Bootloader_specific#DT_configuration_for_HSE.

More generally, https://wiki.st.com/stm32mpu/wiki/How_to_create_your_board_device_tree should help.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

OK I will check it , i flashed the basic not trusted TF-A to the eMMC

Hi @SMich.1​ 

As a reminder you may know that the basic boot chain is not supported/promoted by STMicroelectronics to make products, it is only provided to support the DDR Tuning Tool and the U-Boot developments.

It has been provided in V1.x ecosystem with very limited feature set, see :

https://wiki.st.com/stm32mpu-ecosystem-v1/wiki/Boot_chains_overview#Boot_chains_features_set

And it's no longer supported in new V2.0 version.

I fully recommend to adopt trusted boot chain to benefit from full feature set and relevant support from ST.

Olivier

Olivier GALLIEN
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.