亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? sdiocontrollerbase.h

?? 三星2440 cpu WINCE 5.00板級支持包
?? H
?? 第 1 頁 / 共 2 頁
字號:

    virtual BOOL InterpretCapabilities( LPCTSTR pszRegistryPath );
    void OnPowerUp();
    void OnPowerDown();
    void PreDeinit();

protected:
    // override to customize for specific hardware
    virtual BOOL InitializeHardware( BOOL bOnPowerUp = FALSE ) = 0;
    virtual void DeinitializeHardware( BOOL bOnPowerDown = FALSE ) = 0;
    virtual BOOL CustomSetup( LPCTSTR pszRegistryPath ) = 0;
    virtual BOOL IsCardWriteProtected() = 0;
    virtual BOOL IsCardPresent() = 0;

protected:

    volatile S3C2440X_SDI_REG    *vm_pSDIReg;                // pointer to the SDI special registers
    volatile S3C2440X_IOPORT_REG *vm_pIOPreg;                // pointer to the GPIO control registers
    volatile S3C2440X_CLKPWR_REG *vm_pCLKPWR;                // pointer to the clock control register
    volatile S3C2440X_DMA_REG    *vm_pDMAreg;                // pointer to the DMA special registers

    DWORD                   m_dwSDIOIrq;                     // SDIO IRQ
    DWORD                   m_dwSDIOSysIntr;                 // SDIO SysIntr

    PBYTE                   m_pDMABuffer;                    // pointer to buffers used for DMA transfers
    PHYSICAL_ADDRESS        m_pDMABufferPhys;                // physical address of the SMA buffer
    DWORD                   m_dwDMAChannel;                  // DMA channel to use for data transfers
    DWORD                   m_dwDMAIrq;                      // DMA IRQ
    DWORD                   m_dwDMASysIntr;                  // DMA SysIntr

    DWORD                   m_dwPollingTimeout;              // card detect thread polling timeout

    char                    m_chCardDetectGPIO;              // GPIO used for card detection
    DWORD                   m_dwCardDetectMask;
    DWORD                   m_dwCardDetectFlag;
    DWORD                   m_dwCardDetectControlMask;
    DWORD                   m_dwCardDetectControlFlag;
    DWORD                   m_dwCardDetectPullupMask;
    DWORD                   m_dwCardDetectPullupFlag;

    char                    m_chCardReadWriteGPIO;           // GPIO used for card read/write detection
    DWORD                   m_dwCardReadWriteMask;
    DWORD                   m_dwCardReadWriteFlag;
    DWORD                   m_dwCardReadWriteControlMask;
    DWORD                   m_dwCardReadWriteControlFlag;
    DWORD                   m_dwCardReadWritePullupMask;
    DWORD                   m_dwCardReadWritePullupFlag;

    PSDCARD_HC_CONTEXT      m_pHCContext;                    // the host controller context
    HANDLE                  m_hResponseReceivedEvent;		 // Used to post command response info asynchronously

    int                     m_nCardDetectIstThreadPriority;  // controller IST thread priority
    HANDLE                  m_hCardInsertInterruptEvent;     // card insert/remove interrupt event
    HANDLE                  m_hCardInsertInterruptThread;    // card insert/remove interrupt event

    int                     m_nSDIOIstThreadPriority;        // SDIO IST thread priority
    HANDLE                  m_hSDIOInterruptEvent;           // SDIO Interrupt event
    HANDLE                  m_hSDIOInterruptThread;          // SDIO Interrupt Thread Event

    int                     m_nControllerIstThreadPriority;  // controller IST thread priority
    HANDLE                  m_hControllerInterruptEvent;     // controller interrupt event
    HANDLE                  m_hControllerInterruptThread;    // controller interrupt thread

    int                     m_DMAIstThreadPriority;		     // DMA IST thread priority
    HANDLE                  m_hDMAInterruptEvent;			 // DMA interrupt event
    HANDLE                  m_hDMAInterruptThread;		     // DMA interrupt thread   

    BOOL                    m_bReinsertTheCard;              // Indicates if a card insertion should be simulated now
    BOOL                    m_bUseDMAForTransfer;			 // Indicates whether DMA is used for I/O requests
    BOOL                    m_bDriverShutdown;               // controller shutdown
    CRITICAL_SECTION        m_ControllerCriticalSection;     // controller critical section 
    BOOL                    m_bDevicePresent;                // indicates if device is present in the slot											  
    WCHAR                   m_rgchRegPath[256];              // reg path  
    SDHCDSTATE              m_CurrentState;                  // current transfer state
    BOOL                    m_bSendInitClocks;               // indicates if this is the first command sent
    DWORD			        m_dwLastTypeOfTransfer;          // inidcates the last type of data transfer initiated

    DWORD			        m_dwNumBytesToTransfer;          // # of bytes that still need to be transferred
    DWORD			        m_dwNumBytesUnaligned;           // # of bytes from a DWORD-aligned address
    DWORD			        m_dwNumBytesExtra;               // # of extra bytes in buffer that aren't a multiple of sizeof(DWORD)

    DWORD			        m_dwSDIBusWidth;                 // SD data transfer mode (1 bit or 4 bit) flag
    DWORD                   m_dwClockRate;                   // current clock rate

    BOOL                    m_fCardInTheSlot;				 // TRUE - a card is inserted in the slot, FALSE otherwise
    BOOL                    m_fHandleBusyCheckOnCommand38;
    DWORD                   m_dwDMATransferTimeoutFactor;
    DWORD                   m_dwDMATransferTimeoutConstant;

    SD_API_STATUS	SendCommand(UINT16 Cmd, UINT32 Arg, UINT16 respType, BOOL bDataTransfer);
    SD_API_STATUS   GetCommandResponse(PSD_BUS_REQUEST pRequest);
    DWORD           SetClockRate(DWORD dwClockRate);
    BOOL			IsCardBusy(UINT16 inData);

    BOOL			SetupDmaXfer(PSD_BUS_REQUEST pRequest);

    BOOL			SetupPollingXfer(PSD_BUS_REQUEST pRequest);
    BOOL			PollingTransmit(PSD_BUS_REQUEST pRequest, DWORD dwLen);
    BOOL			PollingReceive(PSD_BUS_REQUEST pRequest, DWORD dwLen);

    inline void     MMC_Hardware_PowerUp();
    inline void     MMC_Hardware_PowerDown();
    inline void     Stop_SDI_Hardware();
    inline void     Set_SDI_Bus_Width_1Bit();
    inline void     Set_SDI_Bus_Width_4Bit();
    inline DWORD    Get_SDI_Bus_Width();
    inline void     Wait_80_SDI_Clock_Cycles();
    inline void     Start_SDI_Clock();
    inline void     Stop_SDI_Clock();
    inline BOOL     Is_SDI_Clock_Running();
    inline void     Enable_SDIO_Interrupts();
    inline void     Disable_SDIO_Interrupts();
    inline BOOL     Is_SDIO_Interrupt_Enabled();
    inline void     Ack_SDIO_Interrupts();
    inline void     Enable_SDIO_DMA_Channel();
    inline void     Disable_SDIO_DMA_Channel();
    inline void     Stop_SDIO_DMA_Channel();

    // thread routines
    virtual DWORD   CardDetectThread();
    virtual DWORD   IOInterruptIstThread();
    virtual DWORD   TransferIstThread();

    // implementation of the callbacks for the SD Bus driver
    SD_API_STATUS	Deinitialize();
    SD_API_STATUS	Initialize();
    BOOLEAN			CancelIoHandler(DWORD dwSlot, PSD_BUS_REQUEST pRequest);
    SD_API_STATUS	BusRequestHandler(DWORD dwSlot, PSD_BUS_REQUEST pRequest);
    SD_API_STATUS	SlotOptionHandler(DWORD dwSlot, SD_SLOT_OPTION_CODE Option, PVOID pData, ULONG OptionSize);

    // thread start routines
    static DWORD            SD_CardDetectThread(CSDIOControllerBase *pController);
    static DWORD            SD_IOInterruptIstThread(CSDIOControllerBase *pController);
    static DWORD            SD_TransferIstThread(CSDIOControllerBase *pController);

    // SD Bus driver callback functions
    static SD_API_STATUS	SDHCDDeinitialize(PSDCARD_HC_CONTEXT pHCContext);
    static SD_API_STATUS	SDHCDInitialize(PSDCARD_HC_CONTEXT pHCContext);
    static BOOLEAN			SDHCDCancelIoHandler(PSDCARD_HC_CONTEXT pHCContext, DWORD dwSlot, PSD_BUS_REQUEST pRequest);
    static SD_API_STATUS	SDHCDBusRequestHandler(PSDCARD_HC_CONTEXT pHCContext, DWORD dwSlot, PSD_BUS_REQUEST pRequest);
    static SD_API_STATUS	SDHCDSlotOptionHandler(PSDCARD_HC_CONTEXT pHCContext, DWORD dwSlot, 
									    SD_SLOT_OPTION_CODE Option, PVOID pData, ULONG OptionSize);
};

typedef CSDIOControllerBase *PCSDIOControllerBase;

#define GET_PCONTROLLER_FROM_HCD(pHCDContext) \
    GetExtensionFromHCDContext(PCSDIOControllerBase, pHCDContext)

CSDIOControllerBase *CreateSDIOController( PSDCARD_HC_CONTEXT pHCContext );

#define SDHC_INTERRUPT_ZONE    SDCARD_ZONE_0
#define SDHC_SEND_ZONE         SDCARD_ZONE_1
#define SDHC_RESPONSE_ZONE     SDCARD_ZONE_2
#define SDHC_RECEIVE_ZONE      SDCARD_ZONE_3
#define SDHC_CLOCK_ZONE        SDCARD_ZONE_4
#define SDHC_TRANSMIT_ZONE     SDCARD_ZONE_5

#define SDHC_INTERRUPT_ZONE_ON ZONE_ENABLE_0
#define SDHC_SEND_ZONE_ON      ZONE_ENABLE_1
#define SDHC_RESPONSE_ZONE_ON  ZONE_ENABLE_2
#define SDHC_RECEIVE_ZONE_ON   ZONE_ENABLE_3
#define SDHC_CLOCK_ZONE_ON     ZONE_ENABLE_4
#define SDHC_TRANSMIT_ZONE_ON  ZONE_ENABLE_5

#endif // __SDIOCONTROLLER_H

// DO NOT REMOVE --- END EXTERNALLY DEVELOPED SOURCE CODE ID --- DO NOT REMOVE

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲第一成人在线| 国产美女精品在线| 久久精品一区四区| 在线免费观看日本一区| 国产丶欧美丶日本不卡视频| 亚洲va韩国va欧美va精品| 久久久国产午夜精品| 欧美精品欧美精品系列| 日本韩国欧美三级| 成人免费看视频| 极品瑜伽女神91| 视频一区二区中文字幕| 亚洲国产中文字幕在线视频综合| 国产欧美综合色| 日韩欧美一级精品久久| 欧美精品在欧美一区二区少妇| 91首页免费视频| 成人av网址在线| 国产精品一区二区无线| 老司机免费视频一区二区三区| 亚洲成人av免费| 亚洲一区二区三区不卡国产欧美 | 成人avav在线| 精品综合久久久久久8888| 亚洲一区二区欧美| 一区二区三区在线视频观看58| 中文字幕中文在线不卡住| 久久久久久久综合色一本| 欧美videos大乳护士334| 3atv一区二区三区| 91精品国产综合久久久久久久| 欧美在线你懂得| 在线免费观看成人短视频| 色综合天天做天天爱| 一本色道久久综合亚洲aⅴ蜜桃| av日韩在线网站| 色偷偷成人一区二区三区91 | 日韩一区二区视频在线观看| 精品视频色一区| 欧美日本在线播放| 欧美一区二区视频在线观看2022 | 日韩影院在线观看| 日本va欧美va精品发布| 日韩va亚洲va欧美va久久| 三级欧美在线一区| 久久er99热精品一区二区| 九九九久久久精品| 高清av一区二区| 91丝袜美女网| 欧美天堂亚洲电影院在线播放| 欧美三级乱人伦电影| 在线不卡一区二区| 日韩一本二本av| 久久精品视频一区二区三区| 国产欧美日韩在线| 亚洲黄色小视频| 亚洲成av人片在www色猫咪| 日本欧美久久久久免费播放网| 黄一区二区三区| 成人动漫精品一区二区| 一本久道中文字幕精品亚洲嫩| 欧美裸体一区二区三区| 精品国产精品一区二区夜夜嗨| 中文在线免费一区三区高中清不卡| 亚洲靠逼com| 亚洲成人免费电影| 国产精品一区二区三区四区| 91亚洲精品久久久蜜桃| 欧美精品久久天天躁| 久久久亚洲国产美女国产盗摄| 国产精品国产精品国产专区不片| 亚洲一区av在线| 国产一区二区三区电影在线观看 | 国产福利一区二区| 在线观看网站黄不卡| 日韩欧美国产精品| 亚洲精品视频在线观看免费| 麻豆国产91在线播放| 波多野结衣在线一区| 欧美日韩国产综合一区二区三区| 久久久久久久久99精品| 亚洲在线一区二区三区| 国产精品中文欧美| 欧美精品九九99久久| 久久精品欧美日韩精品| 亚洲午夜久久久久久久久电影网 | 91影院在线免费观看| 欧美一区二区三区视频免费播放 | 成人激情动漫在线观看| 日韩一级完整毛片| 亚洲欧美日韩电影| 国产成人免费视频网站| 欧美精品久久久久久久久老牛影院| 国产精品伦一区| 理论电影国产精品| 欧美日韩日日摸| 亚洲欧洲无码一区二区三区| 久久se精品一区精品二区| 欧美日韩一区二区欧美激情| 国产精品久久久久天堂| 久久99国产精品久久| 91久久香蕉国产日韩欧美9色| 久久精品亚洲精品国产欧美kt∨| 午夜电影久久久| 色婷婷精品大在线视频| 国产精品进线69影院| 国产精品中文字幕欧美| 日韩免费看网站| 亚洲无人区一区| 91视频免费观看| 中文字幕一区二区三区四区| 狠狠网亚洲精品| 欧美成人一区二区三区片免费 | 懂色av中文一区二区三区| 欧美一区二区成人6969| 亚洲成人自拍网| 91网站在线播放| 中文字幕一区二区三区不卡在线| 国产一区二区三区久久久| 欧美电影免费观看高清完整版| 日韩精品午夜视频| 欧美二区三区的天堂| 亚洲福利视频一区二区| 精品视频一区二区不卡| 亚洲五码中文字幕| 在线亚洲高清视频| 亚洲亚洲精品在线观看| 91福利社在线观看| 亚洲成人动漫在线免费观看| 91麻豆福利精品推荐| 国产精品灌醉下药二区| av中文字幕亚洲| 综合激情成人伊人| 日本国产一区二区| 一区二区高清免费观看影视大全 | 蜜桃视频第一区免费观看| 欧美日韩大陆在线| 丝袜亚洲另类欧美| 日韩视频免费直播| 久久99国产精品久久99| 国产亚洲欧美日韩日本| 成人做爰69片免费看网站| 亚洲国产精华液网站w| youjizz国产精品| 亚洲欧美精品午睡沙发| 欧美日韩国产天堂| 奇米一区二区三区av| 欧美精品一区二区三区视频| 国产电影一区在线| 亚洲欧美乱综合| 欧美男生操女生| 国内国产精品久久| 中文字幕一区二区三区不卡在线| 色综合天天综合狠狠| 午夜精品一区二区三区免费视频 | 精品国偷自产国产一区| 国产激情一区二区三区四区| 亚洲人成在线播放网站岛国| 欧美少妇一区二区| 久久国产日韩欧美精品| 国产精品理论在线观看| 欧美日韩国产小视频| 国产在线乱码一区二区三区| 中文字幕中文在线不卡住| 欧美日韩免费一区二区三区| 精品一区二区三区蜜桃| 一区二区中文字幕在线| 欧美久久婷婷综合色| 国模娜娜一区二区三区| ...av二区三区久久精品| 欧美精品丝袜久久久中文字幕| 国产一区二区不卡在线| 一区二区三区四区在线免费观看| 欧美一区二区三区公司| 国产91精品精华液一区二区三区| 亚洲一区二区三区小说| 2021中文字幕一区亚洲| 99免费精品在线| 久久精工是国产品牌吗| 亚洲色图丝袜美腿| 欧美变态tickling挠脚心| 色综合中文字幕国产| 蜜臀av一区二区在线观看| 国产精品国产三级国产aⅴ中文| 日韩一区二区三区视频在线 | 亚洲欧洲日韩在线| 欧美www视频| 欧美丝袜丝交足nylons图片| 国产精品一区二区久久不卡 | 中文字幕av一区 二区| 在线观看一区日韩| 大胆欧美人体老妇| 久久精品国产久精国产爱| 夜夜爽夜夜爽精品视频| 久久精品一区四区| 日韩午夜在线播放| 欧美日韩国产影片| 在线免费av一区| zzijzzij亚洲日本少妇熟睡| 国产自产v一区二区三区c|