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.

RTOS/PROCESSOR-SDK-AM437X: MMCSD multi block R/W fail

Part Number: PROCESSOR-SDK-AM437X

Tool/software: TI-RTOS

Hi,

Is issue for multi block write known in pdk_am437x_1_0_6?

        if (numBlks > 1U)
        {
            transaction.cmd = MMCSD_CMD(25U);
            transaction.flags |= MMCSD_CMDRSP_ABORT;
        }
        else
        {
            transaction.cmd = MMCSD_CMD(24U);
        }

        ret = MMCSD_v1_transfer(handle, &transaction);

If MMCSD_CMD(25U) is used, I get timeout inside MMCSD_v1_transfer function?

A also try with DMA but it stuck in initialization... it newer call MMCSDDMA_rxIsrHandler

Any idea?

p.s. I will be also happy if I gat respond on e2e.ti.com/.../676155

Best regards,

Mare

  • Another info if make sense:

    I produce timeout on MMCSD write with using FAT-fs f_write().

    I change now handling with interrupt and now fail on writing trying to write 1536B (before on polling mode it failed on writing 1289B)

  • Another think:

    I also add in function MMCSD_v1_write() delay(10U); after sending stop command:

        if(MMCSD_OK == ret)
        {
    		/* Send a STOP */
            if (transaction.blockCount > 1U)
            {
    			memset(&transaction,0,sizeof(transaction));
    			transaction.cmd  = MMCSD_CMD(12U);
                transaction.flags = MMCSD_CMDRSP_BUSY;
                transaction.arg = 0U;
    
                ret = MMCSD_v1_transfer(handle, &transaction);
                delay(10U);
            }
        }


    And now I can write up to ~100kB ... but goal is 5MB+ :)

    Is this delay helping to MMCSD periphery or to SD card?

    Best regards, Mare

  • Hi Mare,

    Can you try the latest Processor SDK RTOS 5.2 for AM437x if that helps? The 1.0.6 was about 2 years old. If you still see the problem, can you explain what EVM, test application and if any changes to the test code to reproduce your issue?

    Regards, Eric
  • Hi Eric!


    Sorry but Processor SDK RTOS change is impossible because of almost finish project and we use SDK PRP/HSR.
    I know that 1.0.6 is old, but we need to go through....
    I see some fixed issues in the release note... like PRSDK-3520. Is possible to see online that changes?

    Regards, Mare

  • Hi,

    The PRSDK-3520 fix spread in several files and was provided in PRSDK 4.3 release. You may download it from here: software-dl.ti.com/.../index_FDS.html

    Then compare the drv/mmcsd folder source code to what you have in 1.0.6.

    Regards, Eric