⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mx2_mmcsd_def.h

📁 mmc 方式通讯的在CPU PXA270下的WINCE 5驱动
💻 H
字号:
/* * 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 * * Copyright (C) 2002 Motorola Semiconductors HK Ltd * */#ifndef  MMCSDLOCAL_H_adkf	/* PROTECT DOUBLE INCLUDE */#define  MMCSDLOCAL_H_adkf#define MMCSD_TYPE_MMC        1#define MMCSD_TYPE_SD         2#define MMCSD_TYPE_SDIO       3#define    MMCSD_REQUEST_SOURCE         21/*--------------------------------------------------------------------------*//*                          DEFINITIONS FOR CSD/CID                         *//*--------------------------------------------------------------------------*/#define    MMCSD_CSD_LEN        0x0080        /* BIT LENGTH OF CSD REGISTER */#define    MMCSD_CID_LEN        0x0080        /* BIT LENGTH OF CID REGISTER */#define    MMCSD_CSD_BYTESIZE        16        /* BYTE LENGTH OF CSD REGISTER */#define    MMCSD_CID_BYTESIZE        16        /* BYTE LENGTH OF CID REGISTER *//*--------------------------------------------------------------------------*//*                           DEFINE COMMANDS                                *//*--------------------------------------------------------------------------*/#define    MMCSD_CMD0                 0x00#define    MMCSD_CMD1                 0x01#define    MMCSD_CMD2                 0x02#define    MMCSD_CMD3                 0x03#define    MMCSD_CMD4                 0x04#define    MMCSD_CMD5                 0x05#define    MMCSD_CMD6                 0x06#define    MMCSD_CMD7                 0x07#define    MMCSD_CMD8                 0x08#define    MMCSD_CMD9                 0x09#define    MMCSD_CMD10                0x0A#define    MMCSD_CMD11                0x0B#define    MMCSD_CMD12                0x0C#define    MMCSD_CMD13                0x0D#define    MMCSD_CMD14                0x0E#define    MMCSD_CMD15                0x0F#define    MMCSD_CMD16                0x10#define    MMCSD_CMD17                0x11#define    MMCSD_CMD18                0x12#define    MMCSD_CMD19                0x13#define    MMCSD_CMD20                0x14#define    MMCSD_CMD21                0x15#define    MMCSD_CMD22                0x16#define    MMCSD_CMD23                0x17#define    MMCSD_CMD24                0x18#define    MMCSD_CMD25                0x19#define    MMCSD_CMD26                0x1A#define    MMCSD_CMD27                0x1B#define    MMCSD_CMD28                0x1C#define    MMCSD_CMD29                0x1D#define    MMCSD_CMD30                0x1E#define    MMCSD_CMD31                0x1F#define    MMCSD_CMD32                0x20#define    MMCSD_CMD33                0x21#define    MMCSD_CMD34                0x22#define    MMCSD_CMD35                0x23#define    MMCSD_CMD36                0x24#define    MMCSD_CMD37                0x25#define    MMCSD_CMD38                0x26#define    MMCSD_CMD39                0x27#define    MMCSD_CMD40                0x28#define    MMCSD_CMD41                0x29#define    MMCSD_CMD42                0x2A#define    MMCSD_CMD43                0x2B#define    MMCSD_CMD44                0x2C#define    MMCSD_CMD45                0x2D#define    MMCSD_CMD46                0x2E#define    MMCSD_CMD47                0x2F#define    MMCSD_CMD48                0x30#define    MMCSD_CMD49                0x31#define    MMCSD_CMD50                0x32#define    MMCSD_CMD51                0x33#define    MMCSD_CMD52                0x34#define    MMCSD_CMD53                0x35#define    MMCSD_CMD54                0x36#define    MMCSD_CMD55                0x37#define    MMCSD_CMD56                0x38#define    MMCSD_CMD57                0x39#define    MMCSD_CMD58                0x3A#define    MMCSD_CMD59                0x3B#define    MMCSD_CMD60                0x3C#define    MMCSD_CMD61                0x3D#define    MMCSD_CMD62                0x3E#define    MMCSD_CMD63                0x3F#define    MMCSD_ACMD6                      0x06#define           MMCSD_ACMD13                      0x0D#define    MMCSD_ACMD22               0x16#define    MMCSD_ACMD23               0x17#define    MMCSD_ACMD41               0x29#define    MMCSD_ACMD42               0x2A#define    MMCSD_ACMD51               0x33/*--------------------------------------------------------------------------*//*                         DEFINE CARD DOMAIN                               *//*--------------------------------------------------------------------------*/#define    MMCSD_CAPA4M               4        /* 4 MByte                     */#define    MMCSD_CAPA8M               8        /* 8 MByte                     */#define    MMCSD_CAPA16M             16        /* 16 MByte                    */#define    MMCSD_CAPA32M             32        /* 32 MByte                    */#define    MMCSD_CAPA48M             48        /* 48 MByte                    */#define    MMCSD_CAPA64M             64        /* 64 MByte                    */#define    MMCSD_CAPA128M           128        /* 128 MByte                   *//*--------------------------------------------------------------------------*//*                          DEFINE RESPONSES                                *//*--------------------------------------------------------------------------*/#define    MMCSD_RES1LEN              0x0030        /* (MMC)RESPONSE1BIT LENGTH  */#define    MMCSD_RES2LEN              0x0088        /* (MMC)RESPONSE2BIT LENGTH  */#define    MMCSD_RES3LEN              0x0030        /* (MMC)RESPONSE3BIT LENGTH  */#define    MMCSD_RES4LEN              0x0030        /* (MMC)RESPONSE4BIT LENGTH  */#define    MMCSD_RES5LEN              0x0030        /* (MMC)RESPONSE5BIT LENGTH  *//*--------------------------------------------------------------------------*//*                        DEFINE WAIT CLOCK                                 *//*--------------------------------------------------------------------------*/#define    MMCSD_WAIT_UNIT                8#define    MMCSD_NCS_MIN                  0*WAIT_UNIT#define    MMCSD_NCS_MAX                  1*WAIT_UNIT#define    MMCSD_NCR_MIN                  1*WAIT_UNIT#define    MMCSD_NCR_MAX                  8*WAIT_UNIT#define    MMCSD_NRC_MIN                  1*WAIT_UNIT#define    MMCSD_NRC_MAX                  1*WAIT_UNIT#define    MMCSD_NAC_MIN                  1*WAIT_UNIT#define    MMCSD_NAC_MAX                  16*WAIT_UNIT#define    MMCSD_NWR_MIN                  1*WAIT_UNIT#define    MMCSD_NWR_MAX                  1*WAIT_UNIT#define    MMCSD_BUSY_WAIT                0xFFFFFFFF        /* = 65535(decimal)            */#define                MMCSDB_R1                0x01#define         MMCSDB_R2                0x02#define         MMCSDB_R3                0x03#define         MMCSDB_R4                0x04#define         MMCSDB_R5                0x05#define         MMCSDB_R6                0x06#define         MMCSDB_DATEN             0x08#define         MMCSDB_WRRD              0x10#define         MMCSDB_STRBLK            0x20#define         MMCSDB_BSY               0x40#define         MMCSDB_INIT              0x80#define         MMCSD_BUS_4BIT           0x200/*-------------------- Mask Definitions --------------------------------------*/#define         MMCSD_CLOCK_MASK        0x0000003/*--------------------Finish wait condition--------------------------------------*/#define     MMCSD_CMD_DONE                  0x01#define     MMCSD_DATA_TRANS_DONE           0x02/*--------------------------------------------------------------------------*//*               ILLEGAL ERRORS THAT SOFTWARE CHECKS                        *//*--------------------------------------------------------------------------*/#define    MMCSD_CSD_MISS                 0x1000        /* ABNORMAL CSD               */#define    MMCSD_CID_MISS                 0x2000        /* ABNORMAL CID               */#define    MMCSD_MBR_ERROR                0x3000        /* ABNORMAL MBR DATA          */#define    MMCSD_BPB_ERROR                0x4000        /* ABNORMAL BPB DATA          */#define    MMCSD_NO_CARD                  0x5000        /* CANNOT IDENTIFY CARD       */#define    MMCSD_NOT_EXIST_AREA           0x6000        /* ACCESS TO NON-EXIST DOMAIN */#define    MMCSD_ILLEGAL_STATE            0x7000#define    MMCSD_ILLEGAL_ERROR_MASK                               0xF000#define    MMCSD_STATUS_NOERROR    0xFDFF0000#define                MMCSD_READ_TIMEOUT 0x1#define                MMCSD_CMD_TIMEOUT  0x2#define                MMCSD_WRITE_CRC    0x4#define                MMCSD_READ_CRC     0x8#define                MMCSD_HARDWARE_REV 0x10#define                MMCSD_RESP_CRC_ERR  0x20#define                MMCSD_END_CMD_RESP 0x2000#define                MMCSD_STATUS_ERR  (MMCSD_READ_TIMEOUT|MMCSD_CMD_TIMEOUT|MMCSD_WRITE_CRC)#define                MMCSD_STATUS         u32#define          MMCSD_MMC_CARD_VOLTAGE    0x00ff8000#define          MMCSD_CARD_VOLTAGE    0x00ff8000#define          MMCSD_CARD_SET_VOLTAGE    0x00008000/*--------------------------------------------------------------------------*//*               Pin Configuration                                          *//*--------------------------------------------------------------------------*/#define MX2STAT_CARD_PRESENCE   (1<<15)#define MX2STAT_SDIO_INT_ACTIVE            (1<<14)#define MX2STAT_END_CMD_RESP     (1<<13)#define MX2STAT_WRITE_OP_DONE      (1<<12)#define MX2STAT_DATA_TRANS_DONE              (1<<11)#define MX2STAT_WRITE_CRC_ERROR_CODE  ((1<<9) | (1<<10))#define MX2STAT_CARD_BUS_CLK_RUN      (1<< 8)#define MX2STAT_APPL_BUFF_FF     (1<< 7)#define MX2STAT_APPL_BUFF_FE     (1<< 6)#define MX2STAT_RESP_CRC_ERR    (1<< 5)#define MX2STAT_CRC_READ_ERR (1<< 3)#define MX2STAT_CRC_WRITE_ERR  (1<< 2)#define MX2STAT_TIME_OUT_RESP    (1<< 1)#define MX2STAT_TIME_OUT_READ   (1<< 0)#define MX2_AUTO_CARD_DETECT_MASK   0x3f#define MX2_DATA_EN_MASK   0x5f#define MX2_SDIO_MASK      0x6f#define MX2_BUF_READY_MASK   0x77#define MX2_END_CMD_RES_MASK   0x7b#define MX2_WRITE_OP_DONE_MASK  0x7d#define MX2_DATA_TRAN_MASK    0x7e#define MX2_ALL_MASK    0x7f#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -