
Go to the source code of this file.
MMC Control Register | |
| #define | MCI_CR_OFF 0x00000000 |
| Control register offset. | |
| #define | MCI_CR (MCI_BASE + MCI_CR_OFF) |
| Control register address. | |
| #define | MCI_MCIEN 0x00000001 |
| Interface enable. | |
| #define | MCI_MCIDIS 0x00000002 |
| Interface disable. | |
| #define | MCI_PWSEN 0x00000004 |
| Power save mode enable. | |
| #define | MCI_PWSDIS 0x00000008 |
| Power save mode disable. | |
| #define | MCI_SWRST 0x00000080 |
| Software reset. | |
MMC Mode Register | |
| #define | MCI_MR_OFF 0x00000004 |
| Mode register offset. | |
| #define | MCI_MR (MCI_BASE + MCI_MR_OFF) |
| Mode register address. | |
| #define | MCI_CLKDIV 0x000000FF |
| Clock divider mask. | |
| #define | MCI_CLKDIV_LSB 0 |
| Clock divider LSB. | |
| #define | MCI_PWSDIV 0x00000700 |
| Power saving divider mask. | |
| #define | MCI_PWSDIV_LSB 8 |
| Power saving divider LSB. | |
| #define | MCI_RDPROOF 0x00000800 |
| Enable read proof. | |
| #define | MCI_WRPROOF 0x00001000 |
| Enable write proof. | |
| #define | MCI_PDCFBYTE 0x00002000 |
| Force PDC byte transfer. | |
| #define | MCI_PDCPADV 0x00004000 |
| PDC padding value. | |
| #define | MCI_PDCMODE 0x00008000 |
| PDC-oriented mode. | |
| #define | MCI_BLKLEN 0xFFFF0000 |
| Data block length mask. | |
| #define | MCI_BLKLEN_LSB 16 |
| Data block length LSB. | |
MMC Data Timeout Register | |
| #define | MCI_DTOR_OFF 0x00000008 |
| Data timeout register offset. | |
| #define | MCI_DTOR (MCI_BASE + MCI_DTOR_OFF) |
| Data timeout register address. | |
| #define | MCI_DTOCYC 0x0000000F |
| Data timeout cycle number mask. | |
| #define | MCI_DTOCYC_LSB 0 |
| Data timeout cycle number LSB. | |
| #define | MCI_DTOMUL 0x00000070 |
| Data timeout multiplier mask. | |
| #define | MCI_DTOMUL_1 0x00000000 |
| Data timeout multiplier 1. | |
| #define | MCI_DTOMUL_16 0x00000010 |
| Data timeout multiplier 16. | |
| #define | MCI_DTOMUL_128 0x00000020 |
| Data timeout multiplier 128. | |
| #define | MCI_DTOMUL_256 0x00000030 |
| Data timeout multiplier 256. | |
| #define | MCI_DTOMUL_1K 0x00000040 |
| Data timeout multiplier 1024. | |
| #define | MCI_DTOMUL_4K 0x00000050 |
| Data timeout multiplier 4096. | |
| #define | MCI_DTOMUL_64K 0x00000060 |
| Data timeout multiplier 65536. | |
| #define | MCI_DTOMUL_1M 0x00000070 |
| Data timeout multiplier 1048576. | |
MMC SDCard/SDIO Register | |
| #define | MCI_SDCR_OFF 0x0000000C |
| SDC/SDIO register offset. | |
| #define | MCI_SDCR (MCI_BASE + MCI_SDCR_OFF) |
| SDC/SDIO register address. | |
| #define | MCI_SDCSEL 0x00000003 |
| SDC/SDIO slot mask. | |
| #define | MCI_SDCSEL_SLOTA 0x00000000 |
| Slot A selected. | |
| #define | MCI_SDCSEL_SLOTB 0x00000001 |
| Slot B selected. | |
| #define | MCI_SDCBUS 0x00000080 |
| SDC/SDIO 4-bit bus. | |
MMC Argument Register | |
| #define | MCI_ARGR_OFF 0x00000010 |
| Argument register offset. | |
| #define | MCI_ARGR (MCI_BASE + MCI_ARGR_OFF) |
| Argument register address. | |
MMC Command Register | |
| #define | MCI_CMDR_OFF 0x00000014 |
| Command register offset. | |
| #define | MCI_CMDR (MCI_BASE + MCI_CMDR_OFF) |
| Command register address. | |
| #define | MCI_CMDNB 0x0000003F |
| Command number mask. | |
| #define | MCI_CMDNB_LSB 0 |
| Command number LSB. | |
| #define | MCI_RSPTYP 0x000000C0 |
| Response type mask. | |
| #define | MCI_RSPTYP_NONE 0x00000000 |
| No response. | |
| #define | MCI_RSPTYP_48 0x00000040 |
| 48-bit response. | |
| #define | MCI_RSPTYP_136 0x00000080 |
| 136-bit response. | |
| #define | MCI_SPCMD 0x00000700 |
| Special command mask. | |
| #define | MCI_SPCMD_NONE 0x00000000 |
| Not a special command. | |
| #define | MCI_SPCMD_INIT 0x00000100 |
| Initialization command. | |
| #define | MCI_SPCMD_SYNC 0x00000200 |
| Synchronized command. | |
| #define | MCI_SPCMD_ICMD 0x00000400 |
| Interrupt command. | |
| #define | MCI_SPCMD_IRSP 0x00000500 |
| Interrupt response. | |
| #define | MCI_OPDCMD 0x00000800 |
| Open drain command. | |
| #define | MCI_OPCMD MCI_OPDCMD |
| Open drain command. Deprecated spelling. | |
| #define | MCI_MAXLAT 0x00001000 |
| Maximum latency for command to response. | |
| #define | MCI_TRCMD 0x00030000 |
| Transfer command mask. | |
| #define | MCI_TRCMD_NONE 0x00000000 |
| No data transfer. | |
| #define | MCI_TRCMD_START 0x00010000 |
| Start data transfer. | |
| #define | MCI_TRCMD_STOP 0x00020000 |
| Stop data transfer. | |
| #define | MCI_TRDIR 0x00040000 |
| Read transfer. | |
| #define | MCI_TRTYP 0x00380000 |
| Transfer type mask. | |
| #define | MCI_TRTYP_MMC_SBLK 0x00000000 |
| MMC/SDC single block transfer. | |
| #define | MCI_TRTYP_MMC_MBLK 0x00080000 |
| MMC/SDC multiple block transfer. | |
| #define | MCI_TRTYP_MMC_STREAM 0x00100000 |
| MMC stream transfer. | |
| #define | MCI_TRTYP_SDIO_BYTE 0x00200000 |
| SDIO byte transfer. | |
| #define | MCI_TRTYP_SDIO_BLK 0x00280000 |
| SDIO block transfer. | |
| #define | MCI_IOSPCMD 0x03000000 |
| Specila SDIO command mask. | |
| #define | MCI_IOSPCMD_NONE 0x00000000 |
| Not a special SDIO command. | |
| #define | MCI_IOSPCMD_SUSPEND 0x01000000 |
| SDIO suspend command. | |
| #define | MCI_IOSPCMD_RESUME 0x02000000 |
| SDIO resume command. | |
MMC Block Register | |
| #define | MCI_BLKR_OFF 0x00000018 |
| Block register offset. | |
| #define | MCI_BLKR (MCI_BASE + MCI_BLKR_OFF) |
| Block register address. | |
| #define | MCI_BCNT 0x0000FFFF |
| MMC/SDIO block count or SDIO byte count mask. | |
| #define | MCI_BCNT_LSB 0 |
| MMC/SDIO block count or SDIO byte count LSB. | |
MMC Response Register | |
| #define | MCI_RSPR_OFF 0x00000020 |
| Response register offset. | |
| #define | MCI_RSPR (MCI_BASE + MCI_RSPR_OFF) |
| Response register address. | |
MMC Receive Data Register | |
| #define | MCI_RDR_OFF 0x00000030 |
| Receive data register offset. | |
| #define | MCI_RDR (MCI_BASE + MCI_RDR_OFF) |
| Receive data register address. | |
MMC Transmit Data Register | |
| #define | MCI_TDR_OFF 0x00000034 |
| Transmit data register offset. | |
| #define | MCI_TDR (MCI_BASE + MCI_TDR_OFF) |
| Transmit data register address. | |
MMC Interrupt and Status Registers | |
| #define | MCI_SR_OFF 0x00000040 |
| Status register offset. | |
| #define | MCI_SR (MCI_BASE + MCI_SR_OFF) |
| Status register address. | |
| #define | MCI_IER_OFF 0x00000044 |
| Enable register offset. | |
| #define | MCI_IER (MCI_BASE + MCI_IER_OFF) |
| Enable register address. | |
| #define | MCI_IDR_OFF 0x00000048 |
| Disable register offset. | |
| #define | MCI_IDR (MCI_BASE + MCI_IDR_OFF) |
| Disable register address. | |
| #define | MCI_IMR_OFF 0x0000004C |
| Mask register offset. | |
| #define | MCI_IMR (MCI_BASE + MCI_IMR_OFF) |
| Mask register address. | |
| #define | MCI_CMDRDY 0x00000001 |
| Command ready. | |
| #define | MCI_RXRDY 0x00000002 |
| Receiver ready. | |
| #define | MCI_TXRDY 0x00000004 |
| Transmit ready. | |
| #define | MCI_BLKE 0x00000008 |
| Data block ended. | |
| #define | MCI_DTIP 0x00000010 |
| Data transfer in progress. | |
| #define | MCI_NOTBUSY 0x00000020 |
| MCI not busy. | |
| #define | MCI_ENDRX 0x00000040 |
| End of receive buffer. | |
| #define | MCI_ENDTX 0x00000080 |
| End of transmit buffer. | |
| #define | MCI_SDIOIRQA 0x00000100 |
| Undocumented. | |
| #define | MCI_SDIOIRQB 0x00000200 |
| Undocumented. | |
| #define | MCI_RXBUFF 0x00004000 |
| Receive buffer full. | |
| #define | MCI_TXBUFE 0x00008000 |
| Transmit buffer empty. | |
| #define | MCI_RINDE 0x00010000 |
| Response index error. | |
| #define | MCI_RDIRE 0x00020000 |
| Response direction error. | |
| #define | MCI_RCRCE 0x00040000 |
| Response CRC error. | |
| #define | MCI_RENDE 0x00080000 |
| Response end bit error. | |
| #define | MCI_RTOE 0x00100000 |
| Response timeout error. | |
| #define | MCI_DCRCE 0x00200000 |
| Data CRC error. | |
| #define | MCI_DTOE 0x00400000 |
| Date timeout error. | |
| #define | MCI_OVRE 0x40000000 |
| Overrun error. | |
| #define | MCI_UNRE 0x80000000 |
| Underrun error. | |