50.12.32 SDMMC Host Control 2 Register (SD_SDIO)
Name: | SDMMC_HC2R (SD_SDIO) |
Offset: | 0x3E |
Reset: | 0x0000 |
Property: | Read/Write |
Bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | |
PVALEN | ASINTEN | ||||||||
Access | R/W | R/W | |||||||
Reset | 0 | 0 |
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
SCLKSEL | EXTUN | DRVSEL[1:0] | VS18EN | UHSMS[2:0] | |||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit 15 – PVALEN Preset Value Enable
As the operating SDCLK frequency and I/O driver strength depend on the system implementation, it is difficult to determine these parameters in the standard host driver. When PVALEN is set to 1, automatic SDCLK frequency generation and driver strength selection are performed without considering system-specific conditions. This bit enables the functions defined in SDMMC_PVR.
If this bit is set to 0, SDMMC_HC2R.DRVSEL, SDMMC_CCR.SDCLKFSEL and SDMMC_CCR.CLKGSEL are set by the user.
If this bit is set to 1, SDMMC_HC2R.DRVSEL, SDMMC_CCR.SDCLKFSEL and SDMMC_CCR.CLKGSEL are set by the SDMMC as specified in SDMMC_PVR.
Value | Description |
---|---|
0 | SDCLK and Driver strength are controlled by the user. |
1 | Automatic selection by Preset Value is enabled. |
Bit 14 – ASINTEN Asynchronous Interrupt Enable
This bit can be set to 1 if a card supports asynchronous interrupts and Asynchronous Interrupt Support (ASINTSUP) is set to 1 in SDMMC_CA0R. Asynchronous interrupt is effective when DAT[1] interrupt is used in 4-bit SD mode. If this bit is set to 1, the user can stop the SDCLK during the asynchronous interrupt period to save power. During this period, the SDMMC continues to deliver the Card Interrupt to the host when it is asserted by the card.
Value | Description |
---|---|
0 | Disabled |
1 | Enabled |
Bit 7 – SCLKSEL Sampling Clock Select
The SDMMC uses this bit to select the sampling clock to receive CMD and DAT.
This bit is set by the tuning procedure and is valid after completion of tuning (when EXTUN is cleared). Setting 1 means that tuning is completed successfully and setting 0 means that tuning has failed.
Writing 1 to this bit is meaningless and ignored. A tuning circuit is reset by writing to 0. This bit can be cleared by setting EXTUN to 1. Once the tuning circuit is reset, it takes time to complete the tuning sequence. Therefore, the user should keep this bit to 1 to perform a retuning sequence to complete a retuning sequence in a short time. Changing this bit is not allowed while the SDMMC is receiving a response or a read data block. See Figure 2.29 in the “SD Host Controller Simplified Specification V3.00”.
Value | Description |
---|---|
0 |
The fixed clock is used to sample data. |
1 |
The tuned clock is used to sample data. |
Bit 6 – EXTUN Execute Tuning
This bit is set to 1 to start the tuning procedure and is automatically cleared when the tuning procedure is completed. The result of tuning is indicated to Sampling Clock Select (SCLKSEL). The tuning procedure is aborted by writing 0. See Figure 2.29 in the “SD Host Controller Simplified Specification V3.00”.
Value | Description |
---|---|
0 |
Not tuned or tuning completed. |
1 |
Execute tuning. |
Bits 5:4 – DRVSEL[1:0] Driver Strength Select
The SDMMC output driver in 1.8V signaling is selected by this bit. In 3.3V signaling, this field is not effective. This field can be set according to the Driver Type A, C and D support bits in SDMMC_CA1R.
This field depends on the setting of Preset Value Enable (PVALEN):
– PVALEN = 0: This field is set by the user.
– PVALEN = 1: This field is automatically set by a value specified in one of the SDMMC_PVRx.
Value | Name | Description |
---|---|---|
0 | TYPEB |
Driver Type B is selected (Default) |
1 | TYPEA |
Driver Type A is selected |
2 | TYPEC |
Driver Type C is selected |
3 | TYPED |
Driver Type D is selected |
Bit 3 – VS18EN 1.8V Signaling Enable
This bit controls the SDMMC_1V8SEL output, which in turn may control an external voltage regulator for the I/O cell and card I/Os. 3.3V or some other fixed voltage is supplied to the card/device regardless of the signaling voltage.
Setting this bit from 0 to 1 starts changing the signal voltage from 3.3V to 1.8V. The 1.8V regulator output must be stable within 5 ms.
Clearing this bit from 1 to 0 starts changing the signal voltage from 1.8V to 3.3V. The 3.3V regulator output must be stable within 5 ms.
The user can set this bit to 1 when the SDMMC supports 1.8V signaling (one of the support bits is set to 1: SDR50SUP, SDR104SUP or DDR50SUP in SDMMC_CA1R) and the card or device supports UHS-I (S18A = 1. See “Bus Switch Voltage Switch Sequence in the “Physical Layer Simplified Specification V3.01” ).
Value | Description |
---|---|
0 |
3.3V signaling. |
1 |
1.8V signaling. |
Bits 2:0 – UHSMS[2:0] UHS Mode Select
This field is used to select one of the UHS-I modes and is effective when 1.8V Signal Enable (VS18EN) is set to 1.
This field is effective only if SDMMC_MC1R.DDR is set to 0.
If Preset Value Enable is set to 1, the SDMMC sets SDCLK Frequency Select (SDCLKFSEL), Clock Generator Select (CLKGSEL) in SDMMC_CCR and Driver Strength Select (DRVSEL) according to SDMMC_PVR. In this case, one of the preset value registers is selected by this field. The user needs to reset SD Clock Enable (SDCLKEN) before changing this field to avoid generating a clock glitch. After setting this field, the user sets SDCLKEN to 1 again.
Value | Name | Description |
---|---|---|
0 | SDR12 |
UHS SDR12 Mode |
1 | SDR25 |
UHS SDR25 Mode |
2 | SDR50 |
UHS SDR50 Mode |
3 | SDR104 |
UHS SDR104 Mode |
4 | DDR50 |
UHS DDR50 Mode |