This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3352: How to control SD/MMC card power-supply

Part Number: AM3352
Other Parts Discussed in Thread: TPS65910

Hello team,

 

We received inquiries about SD/MMC card power-supply. For SD/MMC implementation, customer plans to develop their system, like TRM(https://www.ti.com/lit/pdf/spruh73)'s figure 18-2. Customer would like to control power supply control(On/Off) for MMC/SD cards. According to AM335x GP EVM's schematic(https://www.ti.com/lit/zip/sprr164), however, MMC0_POW pin is not used and I believe PMIC(TPS65910A3) is controlling power supply control(On/Off) for MMC/SD cards. For card detection, AM335x seems handling by AM335X_SPI0_CS1(MMC0_SDCD). According to this e2e thread(https://e2e.ti.com/support/processors/f/791/t/257671?mmc0-pow-pin-in-AM3359), we understand MMC0_POW hasn't been used in any of the reference designs. Could you elaborate how AM3335x is control power supply control(On/Off) for MMC/SD cards, please?

Customer is using Linux Processor SDK.

Previously, customer has been developing their system with AM437x. Regarding AM437x device, customer remembered AM437x was controlling power supply control(On/Off) for MMC/SD cards with MMC_POW terminal. It means, AM437x turned on power supply when SD/MMC was inserted. And then, AM437x turned off power supply when SD/MMC was removed.

It will be appreciated if you will be able to share your advice/comments on this.

 

Best regards,

Miyazaki

  • I forwarded your question to someone that has experience with MMC interface on AM335x and AM437x.  They have never seen the POW signal used and recommended the product designer use a GPIO to control the SD Card power source via software. 

    Regards,
    Paul

  • Hello Paul,

    Regarding AM335x GP RVM, first of all, I’d like to confirm if AM335x turned on/off power supply when SD/MMC card is inserted/removed. I believe AM335x is controlling power supply via PMIC /GPIO. Is that correct?

    If it is true, Could you elaborate how customer should implement this power-supply controlling (Hardware/software)?

    Best regards,

    Miyazaki

     

  • I have reviewed the AM335x GP EVM schematic and confirmed the SD Card power is sourced by the PMIC.  So software has the option of turning the SD Card power on/off via I2C commands.

    I do not know if the software you are using turns power on/off as the card is inserted/removed.  The primary reason for being able to cycle power to the SD Card is to reset it when it is not responding to commands.  Power cycle is required to reset the SD Card since there is no reset signal and cycling power is the only way to reset the card.

    If the customer is not using a PMIC with this capability, they can select a 3.3V power switch that can be controlled by a general purpose output from the processor and have software toggle this output rather than send I2C commands to the PMIC.

    I only support hardware question and not able to answer any software related questions. I will need to reassign the thread if you have software questions.

    Regards,
    Paul

  • Hello Paul,

    Thanks for your clarification.

    Regarding AM335x GP EVM/Linux SDK, I believe SD card power is controlled through PMIC via I2C commands, as you mentioned. Therefore, Would you be able to reassign this thread to software-team, please?

    I’d like to share which files are related this SD power-control with our customer.

    Best regards, Miyazaki

  • Miyazaki-san,

    In Linux software, the only thing the customer needs to do is to pick a GPIO and define it in "cd-gpios" property and its pinmx as in &mmc1 in am335x-evm.dts, The Linux kernel will take care of the SD card power control - it power off when SD card is removed, and power on when a card is inserted.

  • Hello Bin,

    Thank you for clarification. I'll share your comments with customer and I'd like to wait for customer's feedback for a while.

    Best regards, Miyazaki

  • Please also note that if the customer want to use a different PMIC from TPS65910, they have to ensure kernel has a driver supporting that PMIC; otherwise, kernel doesn't know how to communicate to its VMMC regulator.