diff options
author | Andy Fleming <afleming@freescale.com> | 2008-10-30 16:31:39 -0500 |
---|---|---|
committer | Andy Fleming <afleming@freescale.com> | 2009-02-16 18:07:41 -0600 |
commit | 1de97f9856f697380cc504126ab92561ed238803 (patch) | |
tree | 21120db558baf8b6bfe58c7bf745d80b76e1a505 /include/mmc.h | |
parent | abb5466ccf4ce50f412d459586f4f4b81cb73ac3 (diff) | |
download | bootable_bootloader_goldelico_gta04-1de97f9856f697380cc504126ab92561ed238803.zip bootable_bootloader_goldelico_gta04-1de97f9856f697380cc504126ab92561ed238803.tar.gz bootable_bootloader_goldelico_gta04-1de97f9856f697380cc504126ab92561ed238803.tar.bz2 |
Eliminated arch-specific mmc header requirement
The current MMC infrastructure relies on the existence of an
arch-specific header file. This isn't necessary, and a couple
drivers were forced to implement dummy files to meet this requirement.
Instead, we move the stuff in those header files into a more appropriate
place, and eliminate the stubs and the #include of asm/arch/mmc.h
Signed-off-by: Andy Fleming <afleming@freescale.com>
Diffstat (limited to 'include/mmc.h')
-rw-r--r-- | include/mmc.h | 53 |
1 files changed, 52 insertions, 1 deletions
diff --git a/include/mmc.h b/include/mmc.h index 47cc053..e41033f 100644 --- a/include/mmc.h +++ b/include/mmc.h @@ -23,7 +23,6 @@ #ifndef _MMC_H_ #define _MMC_H_ -#include <asm/arch/mmc.h> /* MMC command numbers */ #define MMC_CMD_GO_IDLE_STATE 0 @@ -49,8 +48,60 @@ #define SD_CMD_APP_SET_BUS_WIDTH 6 #define SD_CMD_APP_SEND_OP_COND 41 +#define R1_ILLEGAL_COMMAND (1 << 22) +#define R1_APP_CMD (1 << 5) + int mmc_legacy_init(int verbose); int mmc_read(ulong src, uchar *dst, int size); int mmc_write(uchar *src, ulong dst, int size); +struct mmc_cid { + unsigned long psn; + unsigned short oid; + unsigned char mid; + unsigned char prv; + unsigned char mdt; + char pnm[7]; +}; + +struct mmc_csd +{ + u8 csd_structure:2, + spec_vers:4, + rsvd1:2; + u8 taac; + u8 nsac; + u8 tran_speed; + u16 ccc:12, + read_bl_len:4; + u64 read_bl_partial:1, + write_blk_misalign:1, + read_blk_misalign:1, + dsr_imp:1, + rsvd2:2, + c_size:12, + vdd_r_curr_min:3, + vdd_r_curr_max:3, + vdd_w_curr_min:3, + vdd_w_curr_max:3, + c_size_mult:3, + sector_size:5, + erase_grp_size:5, + wp_grp_size:5, + wp_grp_enable:1, + default_ecc:2, + r2w_factor:3, + write_bl_len:4, + write_bl_partial:1, + rsvd3:5; + u8 file_format_grp:1, + copy:1, + perm_write_protect:1, + tmp_write_protect:1, + file_format:2, + ecc:2; + u8 crc:7; + u8 one:1; +}; + #endif /* _MMC_H_ */ |