Part Number:AM2432
在SDIO模式下,4Bit数据线宽度,使用CMD53命令读写数据,已经打开了DATA_CRC中断,为何测试不到DATA_CRC错误?
SDIO_halNormalIntrSigEnable(sdioAttrs->ctrlBaseAddr,0xffff);
SDIO_halNormalIntrStatusEnable(sdioAttrs->ctrlBaseAddr,0xffff);
SDIO_halErrorIntrSigEnable(sdioAttrs->ctrlBaseAddr,0xffff);
SDIO_halErrorIntrStatusEnable(sdioAttrs->ctrlBaseAddr,0xffff);
const CSL_mmc_ctlcfgRegs *pReg = (const CSL_mmc_ctlcfgRegs *)(sdioAttrs->ctrlBaseAddr);
// Clear transfer mode and command registers
CSL_REG16_WR(&pReg->TRANSFER_MODE, 0U);
CSL_REG16_WR(&pReg->TIMEOUT_CONTROL, 0x02U);
CSL_REG16_FINS(&pReg->TRANSFER_MODE, MMC_CTLCFG_TRANSFER_MODE_RESP_TYPE, CSL_MMC_CTLCFG_TRANSFER_MODE_RESP_TYPE_VAL_R5);
CSL_REG16_FINS(&pReg->TRANSFER_MODE, MMC_CTLCFG_TRANSFER_MODE_RESP_INTR_DIS, CSL_MMC_CTLCFG_TRANSFER_MODE_RESP_INTR_DIS_VAL_DISABLE);
CSL_REG16_FINS(&pReg->TRANSFER_MODE, MMC_CTLCFG_TRANSFER_MODE_RESP_ERR_CHK_ENA, CSL_MMC_CTLCFG_TRANSFER_MODE_RESP_ERR_CHK_ENA_VAL_ENABLE);
CSL_REG16_FINS(&pReg->TRANSFER_MODE, MMC_CTLCFG_TRANSFER_MODE_DMA_ENA, 1);
// CSL_REG64_FINS(&pReg->CAPABILITIES, MMC_CTLCFG_CAPABILITIES_SDMA_SUPPORT, 1);
CSL_REG16_FINS(&pReg->HOST_CONTROL2, MMC_CTLCFG_HOST_CONTROL2_HOST_VER40_ENA, 0);
CSL_REG8_FINS(&pReg->HOST_CONTROL1, MMC_CTLCFG_HOST_CONTROL1_DMA_SELECT, 0); //0-SDMA
CSL_REG16_FINS(&pReg->BLOCK_SIZE, MMC_CTLCFG_BLOCK_SIZE_SDMA_BUF_SIZE, 0); //0-4KB
测试时,从设备少发几个数据,MMCD设置多收几个数据,制造CRC错误,寄存器pReg->ERROR_INTR_STS,始终看不到DATA_CRC错误,请问什么问题?是否有例程参考
li ljch:
用MMCSD1_DATA_PORT读写方式,会有DATA_CRC错误,DMA方式就没有DATA_CRC错误,请问是什么原因
,
Shine:
已咨询e2e产品线工程师,请关注下面帖子的回复。https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1269221/am2432-data_crc-can-t-be-detected-in-dma-mode
,
li ljch:
好的,谢谢
,
Shine:
不客气~
,
li ljch:
你好,请问贵公司,技术专家,有回复吗
,
Shine:
抱歉还没有,我去催一下哈
,
Shine:
请看下面e2e工程师的回复。We have never tested SDIO mode in the SDK. So I am not sure what issues could be expected while enabling it. Nevertheless, can you let me know some more details? Like is it a custom board on which the customer is trying it, or is it a TI board? Also, is the SDIO mode successfully turned ON? We've had issues in the past trying to enable it. If I can get a diff of the modifications done, it will be helpful to reproduce it at my end.