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.

AM2632: How to configure and handle the data[1] interrupt

Part Number: AM2632

Tool/software:

On my end, for the SDIO transfer, I need to use the Data[1] interrupt. I noticed that there is a similar (MMC_AC12  AI_ENABLE) in the SOC Registers, but I haven't found any example routines for its usage and handling.
Can this meet my requirements? Are there any relevant instructions?

  • Hi Feiyun,

    In order to allow the SDIO card to interrupt the host, an interrupt function is added to a pin on the DAT[1] line to signal the card’s interrupt to the host. The interrupts are enabled via CON and CTRL registers from host side. From my understanding, the interrupts for SDIO card through DAT[1] pin are not enabled in the example of SDK. 

  • Hi Wang,
    Which registers do I need to set? If there is a DAT[1] interrupt, is it the same interrupt function (App_MMCSD_ISR), and which register should be read to determine if it is a DAT[1] interrupt?
    BR!

  • Hi Feiyun,

    By using the DAT[1] IRQ interrupt, the MCU does not have to continually check the status of SDIO card, and SDIO card will raise an IRQ when the condition occurs. For example, if SDIO card is receiving signals from an external device, the IRQ might signal MCU that the data is available, or if the SDIO card is outputting data which is loaded from the MCU, the IRQ might indicate that the SDIO card can accept a further data.

    1. For sync interrupt, the card clock should be maintained active even out of transaction period

         MMC_SYSCTL.CEN = 1

         MMC_CON.CLKEXTFREE = 1

    2. Keep the input buffer DAT[1] active outside of transaction     

        MMC_CON.CTPL =1

    3. For async interrupt, AI_Enable should be set

        MMC_AC12.AI_ENABLE = 1;

    4. The SDIO card should have a register to enable or disable the interrupt. Please check your card manual for more information.

    Once there is a SDIO interrupt input, the card interrupt flag in MMCSD status register should be set,

  • Hi Wang,

    Is MMC_AC12.AI_ENABLE always set? Or can it only be enabled when there is no data transmission? The "card interrupt flag in MMCSD status register should be set" refers to which flag bit?

  • Hi Feiyun,

    I just checked the capacities register (MMC_CAPA) and noticed that the AIS bit [29th bit] is zero which means that Asynchronous Interrupt Is Not Supported. 

    Is async interrupt supported in SDIO 2.0?