cancel
Showing results for 
Search instead for 
Did you mean: 

CMD Line Disable on STM32MP131

Stnoobs
Associate II

I am using the SDMMC1 interface without an SD card, utilizing only the data lines. Therefore, the CMD line is not needed, and I have deactivated the CMD pin. However, the HAL_SDMMC library sends CMD data and expects a response from the SD card, causing errors.

Even though I have commented out all the sections related to response error handling, it still does not work. Is there a way to use only the data lines and deactivate the CMD line?

Thank you for your assistance.

1 ACCEPTED SOLUTION

Accepted Solutions

I cannot be sure about HW limitations, but at least it has not been done and tested without CMD (and the HAL not built for that).

Maybe it could be possible to hack the HAL very deeply (or rewrite most to fit your needs) to do what you want (need deep analysis of documentation and some trials to confirm), but ST cannot commit it will work (seems your trials already show it is at least not straightforward).

Regards.

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.

View solution in original post

3 REPLIES 3
PatrickF
ST Employee

Hi,

as per eMMC or SD-Card standard, the CMD line is mandatory as this line convey all the command and status to/from the card (e.g. initial negotiation of operating voltage and mode, request read, write, select block, erase, etc...).

All the protocol is using CMD line everytime.

e.g. eMMC read

PatrickF_1-1717053841861.png

There is state machine defined in the standard which must be followed by the SW.

e.g. for eMMC.

PatrickF_0-1717053655945.png

 

I think for HW SDMMC IP, there is no way to bypass this way of working. At least we cannot provide any support for this very specific case.

Maybe worth to look another interface more suitable to your needs (or uses CMD line as required).

Regards,

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.

Thank you for your assistance.

I have tried removing all error handling sections of the SDMMC HAL library and initializing the error flags.

From what I understand from your response, is it correct that it is hardware-wise impossible to activate the SDMMC1 interface and deactivate only the CMD line?

I cannot be sure about HW limitations, but at least it has not been done and tested without CMD (and the HAL not built for that).

Maybe it could be possible to hack the HAL very deeply (or rewrite most to fit your needs) to do what you want (need deep analysis of documentation and some trials to confirm), but ST cannot commit it will work (seems your trials already show it is at least not straightforward).

Regards.

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.