Hello guys,
I'm debugging standard tuning procedure for MMC card on S32G. After switching the card to HS200 mode, I followed the steps described in the S32G manual as below:
I observed these:
I'd like to ask if anyone face this problem before, or if you have success with tuning procedure on S32G, please drop me a hint.
Thanks and Best Regards,
Thomas
已解决! 转到解答。
What you were attempting was the sequence in Rev 3 of the RM, which has been updated in Rev 4.
Rev 4 has still to be formally released but the new sequence is :
By default, lower frequency operation, a fixed sampling clock is used to receive signals on CMD and DAT[3:0]. Before using the
HS200, HS400, SDR104, or SDR50 modes, the Host Driver executes the tuning procedure at the mode switch sequence.
AUTOCMD12_ERR_STATUS[EXECUTE_TUNING] to 1.
Status (AUTOCMD12_ERR_STATUS) settings.
repeat 5~6. If AUTOCMD12_ERR_STATUS[EXECUTE_TUNING] = 0, standard tuning has completed, or the tuning
has not completed within 40 attempts. The Host Driver might abort this loop if the number of loops exceeds 40 or 150ms
timeout occurs. In this case, a fixed sampling clock should be used, (AUTOCMD12_ERR_STATUS[SMP_CLK_SEL] =
0).
AUTOCMD12_ERR_STATUS[EXECUTE_TUNING] has changed from 1 to 0.
AUTOCMD12_ERR_STATUS[SMP_CLK_SEL] = 1, indicates tuning procedure passed.
AUTOCMD12_ERR_STATUS[SMP_CLK_SEL] = 0, indicates tuning procedure failed. The tuning result is applied to the
delay chain, CLK Tuning Control and Status (CLK_TUNE_CTRL_STATUS) [30:16], upon successful tuning procedure
completion.
Can you try this out
What you were attempting was the sequence in Rev 3 of the RM, which has been updated in Rev 4.
Rev 4 has still to be formally released but the new sequence is :
By default, lower frequency operation, a fixed sampling clock is used to receive signals on CMD and DAT[3:0]. Before using the
HS200, HS400, SDR104, or SDR50 modes, the Host Driver executes the tuning procedure at the mode switch sequence.
AUTOCMD12_ERR_STATUS[EXECUTE_TUNING] to 1.
Status (AUTOCMD12_ERR_STATUS) settings.
repeat 5~6. If AUTOCMD12_ERR_STATUS[EXECUTE_TUNING] = 0, standard tuning has completed, or the tuning
has not completed within 40 attempts. The Host Driver might abort this loop if the number of loops exceeds 40 or 150ms
timeout occurs. In this case, a fixed sampling clock should be used, (AUTOCMD12_ERR_STATUS[SMP_CLK_SEL] =
0).
AUTOCMD12_ERR_STATUS[EXECUTE_TUNING] has changed from 1 to 0.
AUTOCMD12_ERR_STATUS[SMP_CLK_SEL] = 1, indicates tuning procedure passed.
AUTOCMD12_ERR_STATUS[SMP_CLK_SEL] = 0, indicates tuning procedure failed. The tuning result is applied to the
delay chain, CLK Tuning Control and Status (CLK_TUNE_CTRL_STATUS) [30:16], upon successful tuning procedure
completion.
Can you try this out