mmc.h (272cc70b211e945e4413122aa73868f6ada732a5) mmc.h (0b453ffe28bb9227d86ddbe0893bd19c93f04ed7)
1/*
2 * Copyright 2008, Freescale Semiconductor, Inc
3 * Andy Fleming
4 *
5 * Based (loosely) on the Linux code
6 *
7 * See file CREDITS for list of people who contributed to this
8 * project.

--- 77 unchanged lines hidden (view full) ---

86
87/* SCR definitions in different words */
88#define SD_HIGHSPEED_BUSY 0x00020000
89#define SD_HIGHSPEED_SUPPORTED 0x00020000
90
91#define MMC_HS_TIMING 0x00000100
92#define MMC_HS_52MHZ 0x2
93
1/*
2 * Copyright 2008, Freescale Semiconductor, Inc
3 * Andy Fleming
4 *
5 * Based (loosely) on the Linux code
6 *
7 * See file CREDITS for list of people who contributed to this
8 * project.

--- 77 unchanged lines hidden (view full) ---

86
87/* SCR definitions in different words */
88#define SD_HIGHSPEED_BUSY 0x00020000
89#define SD_HIGHSPEED_SUPPORTED 0x00020000
90
91#define MMC_HS_TIMING 0x00000100
92#define MMC_HS_52MHZ 0x2
93
94#define OCR_BUSY 0x80
94#define OCR_BUSY 0x80000000
95#define OCR_HCS 0x40000000
96
97#define MMC_VDD_165_195 0x00000080 /* VDD voltage 1.65 - 1.95 */
98#define MMC_VDD_20_21 0x00000100 /* VDD voltage 2.0 ~ 2.1 */
99#define MMC_VDD_21_22 0x00000200 /* VDD voltage 2.1 ~ 2.2 */
100#define MMC_VDD_22_23 0x00000400 /* VDD voltage 2.2 ~ 2.3 */
101#define MMC_VDD_23_24 0x00000800 /* VDD voltage 2.3 ~ 2.4 */
102#define MMC_VDD_24_25 0x00001000 /* VDD voltage 2.4 ~ 2.5 */

--- 115 unchanged lines hidden (view full) ---

218 u8 crc:7;
219 u8 one:1;
220};
221
222struct mmc_cmd {
223 ushort cmdidx;
224 uint resp_type;
225 uint cmdarg;
95#define OCR_HCS 0x40000000
96
97#define MMC_VDD_165_195 0x00000080 /* VDD voltage 1.65 - 1.95 */
98#define MMC_VDD_20_21 0x00000100 /* VDD voltage 2.0 ~ 2.1 */
99#define MMC_VDD_21_22 0x00000200 /* VDD voltage 2.1 ~ 2.2 */
100#define MMC_VDD_22_23 0x00000400 /* VDD voltage 2.2 ~ 2.3 */
101#define MMC_VDD_23_24 0x00000800 /* VDD voltage 2.3 ~ 2.4 */
102#define MMC_VDD_24_25 0x00001000 /* VDD voltage 2.4 ~ 2.5 */

--- 115 unchanged lines hidden (view full) ---

218 u8 crc:7;
219 u8 one:1;
220};
221
222struct mmc_cmd {
223 ushort cmdidx;
224 uint resp_type;
225 uint cmdarg;
226 char response[18];
226 uint response[4];
227 uint flags;
228};
229
230struct mmc_data {
231 union {
232 char *dest;
233 const char *src; /* src buffers don't get written to */
234 };

--- 13 unchanged lines hidden (view full) ---

248 int high_capacity;
249 uint bus_width;
250 uint clock;
251 uint card_caps;
252 uint host_caps;
253 uint ocr;
254 uint scr[2];
255 uint csd[4];
227 uint flags;
228};
229
230struct mmc_data {
231 union {
232 char *dest;
233 const char *src; /* src buffers don't get written to */
234 };

--- 13 unchanged lines hidden (view full) ---

248 int high_capacity;
249 uint bus_width;
250 uint clock;
251 uint card_caps;
252 uint host_caps;
253 uint ocr;
254 uint scr[2];
255 uint csd[4];
256 char cid[16];
256 uint cid[4];
257 ushort rca;
258 uint tran_speed;
259 uint read_bl_len;
260 uint write_bl_len;
261 u64 capacity;
262 block_dev_desc_t block_dev;
263 int (*send_cmd)(struct mmc *mmc,
264 struct mmc_cmd *cmd, struct mmc_data *data);

--- 15 unchanged lines hidden ---
257 ushort rca;
258 uint tran_speed;
259 uint read_bl_len;
260 uint write_bl_len;
261 u64 capacity;
262 block_dev_desc_t block_dev;
263 int (*send_cmd)(struct mmc *mmc,
264 struct mmc_cmd *cmd, struct mmc_data *data);

--- 15 unchanged lines hidden ---