Tool/software: TI-RTOS
Hello,
I'm using AM572x IDK board with TI-RTOS SDK 05.01.00.11.
I debugged my fatfs application that working with an onboard eMMC0 chip (MMC2 processor slot).
When I'm debugging it, I see, that MMCSD_iodelayFxn() function must select configured MMC mode. It almost correct selects the mmcMode variable value (what about DDR mode select with Pad loopback?). Then it calls BoardMmcCtrlPadConfig() function with that instance number (2 for MMC2 processor slot). OK, that's good.
In BoardMmcCtrlPadConfig() function: it calls BoardGetMmcCtrlPadPinmuxTable() function with non-changed instance argument (value 2 for MMC2 processor slot).
But function BoardGetMmcCtrlPadPinmuxTable() was defined by the pinmux tool and returns configuration modes for MMC3 chip (because of C language has array indexing from 0).
That's why boardGetPinmuxCfg() cannot find required config and skip if(ctrlPadCfg != NULL) body. But when I fixed indexing issue (I passed decremented instance number in BoardGetMmcCtrlPadPinmuxTable() function), rebuilt PDK and project.
But a project cannot config required speed config (default from your pinmux file for the board) and crashes with Data abort exception while returns from BoardCtrlPadIoDelayConfig() function (in my project).
I start only A15_0 core on the processor (without SMP mode).
How should I fix that bug? I need to speed up the eMMC interface.
Also, what about DDR mode select of MMC2 with Pad loopback config?
With regards,
Alex