Skip to main content
Lead
August 13, 2024
Solved

Card did not respond to voltage select! : -110 How to check if the eMMC is working

  • August 13, 2024
  • 1 reply
  • 5637 views

I have only one MMC, in this case it's an eMMC on SDMMC2. I have some issues when I loading over the TF-A and the FIP.bin file.

Update:

I have change the clock frequency to 49.5 MHz and measured the v3v3 signal to 3.3V and the vdd signal to 3.3V as well. I got still the same issue.

 

 

&sdmmc2{
	pinctrl-names = "default", "opendrain", "sleep";
	pinctrl-0 = <&sdmmc2_pins_mx>;
	pinctrl-1 = <&sdmmc2_opendrain_pins_mx>;
	pinctrl-2 = <&sdmmc2_sleep_pins_mx>;
	status = "okay";

	/* USER CODE BEGIN sdmmc2 */
	non-removable;
	no-sd;
	no-sdio;
	st,neg-edge;
	bus-width = <8>;
	vmmc-supply = <&v3v3>;
	vqmmc-supply = <&vdd>;
	mmc-ddr-3_3v;
	/* USER CODE END sdmmc2 */
};

 

 

This is the debug output. Here we can see that I have only one eMMC. I don't know if the log says that the eMMC is mounted on 0, or if it's the first index. Second suspect is "Loading Enviroment from nowhere... OK". So that means...what? An empty system?

 

 

Core: 104 devices, 38 uclasses, devicetree: board
smcwd watchdog: Init failed
NAND: 0 MiB
MMC: STM32 SD/MMC: 0
Loading Environment from nowhere... OK
In: serial
Out: serial
Err: serial
invalid MAC address 0 in OTP 00:00:00:00:00:00
Error: ethernet@5800a000 address not set.
No ethernet found.
Card did not respond to voltage select! : -110
No EFI system partition
Error: ethernet@5800a000 address not set.
Hit any key to stop autoboot: 1  0 
DFU alt info setting: done
crq->brequest:0x0

 

 

 

The third problem would be "Card did not respond to voltage select". So that means it could be bad soldering, because I have solder the eMMC by using a hot air soldering station. But I don't think it could be bad soldering because it was very easy to solder that eMMC and it seems to be inside the top silk screen of the PCB.

The fourth problem would be "No EFI system partition". 

Is it possible to check if I can have connection with the eMMC? U-boot seems to work for me, but only loading over to the SYSRAM. I have no errors or panic in my log.

Best answer by DMårt

Here is the solution:

 

  • Set the SDMMC1,2 clock to about 9.9 MHz. Lower than 26 MHz according to the data sheet. U-boot will then tune it to 52 MHz when booting.
  • Set the speed of the data signals + clock + command to Medium if you're using DDR-setup for the SDMMC2.
  • Set pull-up on clock, command and data0 for the sdmmc2

Done!

Now it's working!

1 reply

DMårtAuthorBest answer
Lead
August 14, 2024

Here is the solution:

 

  • Set the SDMMC1,2 clock to about 9.9 MHz. Lower than 26 MHz according to the data sheet. U-boot will then tune it to 52 MHz when booting.
  • Set the speed of the data signals + clock + command to Medium if you're using DDR-setup for the SDMMC2.
  • Set pull-up on clock, command and data0 for the sdmmc2

Done!

Now it's working!

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-ComputerSTM32MP257FAK3 custom board with STM64-OS as operating system: https://github.com/DanielMartensson/STM64-Computer