00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _SLOT_IMX27_H
00010 #define _SLOT_IMX27_H
00011
00012
00013
00014
00015
00016 #define SDHC_STR_STP_CLK 0x00
00017 # define STR_STP_CLK_MMCSD_RESET 0x0008
00018 # define STR_STP_CLK_START_CLK 0x0002
00019 # define STR_STP_CLK_STOP_CLK 0x0001
00020
00021 #define SDHC_STATUS 0x04
00022 # define STATUS_CARD_PRESENCE 0x8000
00023 # define STATUS_SDIO_INT_ACTIVE 0x4000
00024 # define STATUS_END_CMD_RESP 0x2000
00025 # define STATUS_WRITE_OP_DONE 0x1000
00026 # define STATUS_READ_OP_DONE 0x0800
00027 # define STATUS_CARD_BUS_CLK_RUN 0x0100
00028 # define STATUS_APPL_BUFF_FF 0x0080
00029 # define STATUS_APPL_BUFF_FE 0x0040
00030 # define STATUS_RESP_CRC_ERR 0x0020
00031 # define STATUS_CRC_READ_ERR 0x0008
00032 # define STATUS_CRC_WRITE_ERR 0x0004
00033 # define STATUS_TIME_OUT_RESP 0x0002
00034 # define STATUS_TIME_OUT_READ 0x0001
00035 # define STATUS_ERR_CMD_MASK (STATUS_RESP_CRC_ERR | STATUS_TIME_OUT_RESP)
00036 # define STATUS_ERR_DATA_MASK (STATUS_CRC_READ_ERR | STATUS_CRC_WRITE_ERR | STATUS_TIME_OUT_READ)
00037 # define STATUS_ERR_MASK (STATUS_ERR_CMD_MASK | STATUS_ERR_DATA_MASK)
00038
00039 #define SDHC_CLK_RATE 0x08
00040
00041 #define SDHC_CMD_DAT_CTRL 0x0c
00042 # define CMD_DAT_CTRL_CMD_RESUME 0x8000
00043 # define CMD_DAT_CTRL_CMD_RESP_LONG_OFF 0x1000
00044 # define CMD_DAT_CTRL_STOP_READ_WAIT 0x0800
00045 # define CMD_DAT_CTRL_START_READ_WAIT 0x0400
00046 # define CMD_DAT_CTRL_BUS_WIDTH_4 0x0200
00047 # define CMD_DAT_CTRL_INIT 0x0080
00048 # define CMD_DAT_CTRL_WRITE 0x0010
00049 # define CMD_DAT_CTRL_DATA_ENABLE 0x0008
00050 # define CMD_DAT_CTRL_RESP_NONE 0x0000
00051 # define CMD_DAT_CTRL_RESP_R1_R5_R6 0x0001
00052 # define CMD_DAT_CTRL_RESP_R2 0x0002
00053 # define CMD_DAT_CTRL_RESP_R3_R4 0x0003
00054
00055 #define SDHC_RES_TO 0x10
00056
00057 #define SDHC_READ_TO 0x14
00058 # define READ_TO_RECOMMENDED 0x2db4
00059
00060 #define SDHC_BLK_LEN 0x18
00061
00062 #define SDHC_NOB 0x1c
00063
00064 #define SDHC_REV_NO 0x20
00065
00066 #define SDHC_INT_CTRL 0x24
00067 # define INT_CTRL_CARD_INSERTION_EN 0x8000
00068 # define INT_CTRL_SDIO_REMOVAL_EN 0x4000
00069 # define INT_CTRL_SDIO_IRQ_EN 0x2000
00070 # define INT_CTRL_DAT0_EN 0x1000
00071 # define INT_CTRL_BUF_READ_EN 0x0010
00072 # define INT_CTRL_BUF_WRITE_EN 0x0008
00073 # define INT_CTRL_END_CMD_RES 0x0004
00074 # define INT_CTRL_WRITE_OP_DONE 0x0002
00075 # define INT_CTRL_READ_OP_DONE 0x0001
00076 # define INT_CTRL_INT_EN_MASK 0xe01f
00077
00078 #define SDHC_CMD 0x28
00079
00080 #define SDHC_ARG 0x2c
00081
00082 #define SDHC_RES_FIFO 0x34
00083
00084 #define SDHC_BUFFER_ACCESS 0x38
00085
00086 #endif