123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- /*
- * Copyright (C) 2004-2006 Atmel Corporation
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
- #ifndef __ASM_AVR32_MMC_H
- #define __ASM_AVR32_MMC_H
- 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;
- };
- /* MMC Command numbers */
- #define MMC_CMD_GO_IDLE_STATE 0
- #define MMC_CMD_SEND_OP_COND 1
- #define MMC_CMD_ALL_SEND_CID 2
- #define MMC_CMD_SET_RELATIVE_ADDR 3
- #define MMC_CMD_SD_SEND_RELATIVE_ADDR 3
- #define MMC_CMD_SET_DSR 4
- #define MMC_CMD_SELECT_CARD 7
- #define MMC_CMD_SEND_CSD 9
- #define MMC_CMD_SEND_CID 10
- #define MMC_CMD_SEND_STATUS 13
- #define MMC_CMD_SET_BLOCKLEN 16
- #define MMC_CMD_READ_SINGLE_BLOCK 17
- #define MMC_CMD_READ_MULTIPLE_BLOCK 18
- #define MMC_CMD_WRITE_BLOCK 24
- #define MMC_CMD_APP_CMD 55
- #define MMC_ACMD_SD_SEND_OP_COND 41
- #define R1_ILLEGAL_COMMAND (1 << 22)
- #define R1_APP_CMD (1 << 5)
- #endif /* __ASM_AVR32_MMC_H */
|