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

📄 mx27_ioctl.h

📁 Microsoft WinCE 6.0 BSP FINAL release source code for use with the i.MX27ADS TO2 WCE600_FINAL_MX27_S
💻 H
字号:
//------------------------------------------------------------------------------
//
//  Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
//  Use of this source code is subject to the terms of the Microsoft end-user
//  license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
//  If you did not accept the terms of the EULA, you are not authorized to use
//  this source code. For a copy of the EULA, please see the LICENSE.RTF on your
//  install media.
//
//------------------------------------------------------------------------------
//
//  Copyright (C) 2004, MOTOROLA, INC. All Rights Reserved
//  THIS SOURCE CODE IS CONFIDENTIAL AND PROPRIETARY AND MAY NOT
//  BE USED OR DISTRIBUTED WITHOUT THE WRITTEN PERMISSION OF
//  MOTOROLA, INC.
//
//------------------------------------------------------------------------------
//
//  Copyright (C) 2004-2006, Freescale Semiconductor, Inc. All Rights Reserved.
//  THIS SOURCE CODE, AND ITS USE AND DISTRIBUTION, IS SUBJECT TO THE TERMS
//  AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENT
//
//------------------------------------------------------------------------------
//
//  File:  mx27_ioctl.h
//
//  This header contains common IOCTL definitions that are specific to the
//  Freescale ARM27.
//
//------------------------------------------------------------------------------
#ifndef __MX27_IOCTL_H
#define __MX27_IOCTL_H

//------------------------------------------------------------------------------
// MX27 IOCTL DEFINITIONS
// Kernel IOCTLs based on FILE_DEVICE_HAL
// Note that function codes 0-2047 are reserved for Microsoft Corporation, and
// 2048-4095 are reserved for OEM.
//------------------------------------------------------------------------------
#define IOCTL_HAL_IRQ2SYSINTR  \
    CTL_CODE(FILE_DEVICE_HAL, 2048, METHOD_BUFFERED, FILE_ANY_ACCESS)

#define IOCTL_HAL_FORCE_IRQ  \
    CTL_CODE(FILE_DEVICE_HAL, 2049, METHOD_BUFFERED, FILE_ANY_ACCESS)

#define IOCTL_HAL_UNFORCE_IRQ  \
    CTL_CODE(FILE_DEVICE_HAL, 2050, METHOD_BUFFERED, FILE_ANY_ACCESS)
    
 // IOCTL for NANDFC configuration
#define IOCTL_HAL_SET_NANDFC_CFG   \
    CTL_CODE(FILE_DEVICE_HAL, 2051, METHOD_BUFFERED, FILE_ANY_ACCESS)
    
#define IOCTL_HAL_GET_NANDFC_CFG   \
    CTL_CODE(FILE_DEVICE_HAL, 2052, METHOD_BUFFERED, FILE_ANY_ACCESS)
    
// IOCTL for software workaround for MPEG4
#define IOCTL_HAL_SET_ESDMISC_LH   \
    CTL_CODE(FILE_DEVICE_HAL, 2053, METHOD_BUFFERED, FILE_ANY_ACCESS)

//------------------------------------------------------------------------------
// NANDFC related IOCTL defines
//------------------------------------------------------------------------------
// Struct used by IOCTL_HAL_SET_NANDFC_CFG and IOCTL_HAL_GET_NANDFC_CFG
typedef struct  {
    UINT32 clock;       // desired NAND flash clock
    BOOL page2048;      // NAND flash page size. TRUE for 2048b, FALSE for 512b
    BOOL access16Bit;   // NAND flash access size. TRUE for 16bit, FALSE for 8bit.
} NANDFC_IOCTL_CFG, *PNANDFC_IOCTL_CFG;


//------------------------------------------------------------------------------
// MX27 IOCTL PROTOTYPES
//------------------------------------------------------------------------------
BOOL OALIoCtlHalIrq2Sysintr(UINT32 code, VOID *pInpBuffer,
    UINT32 inpSize, VOID *pOutBuffer, UINT32 outSize, UINT32 *pOutSize);

BOOL OALIoCtlHalRequestDmaIrqMap(UINT32 code, VOID *pInpBuffer,
    UINT32 inpSize, VOID *pOutBuffer, UINT32 outSize, UINT32 *pOutSize);

BOOL OALIoCtlHalForceIrq(UINT32 code, VOID *pInpBuffer,
    UINT32 inpSize, VOID *pOutBuffer, UINT32 outSize, UINT32 *pOutSize);

BOOL OALIoCtlHalUnforceIrq(UINT32 code, VOID *pInpBuffer,
    UINT32 inpSize, VOID *pOutBuffer, UINT32 outSize, UINT32 *pOutSize);

BOOL OALIoCtlQueryDispSettings(UINT32 code, VOID *lpInBuf, 
    UINT32 nInBufSize, VOID *lpOutBuf, UINT32 nOutBufSize, UINT32 *lpBytesReturned);

BOOL OALIoCtlHalSetNANDFCCfg(UINT32 code, VOID *pInpBuffer,
    UINT32 inpSize, VOID *pOutBuffer, UINT32 outSize, UINT32 *pOutSize);
    
BOOL OALIoCtlHalGetNANDFCCfg(UINT32 code, VOID *pInpBuffer,
    UINT32 inpSize, VOID *pOutBuffer, UINT32 outSize, UINT32 *pOutSize);


BOOL OALIoCtlHalGetHWEntropy(UINT32, VOID*, UINT32, VOID*, UINT32, UINT32*);
BOOL OALIoCtlHalGetRandomSeed(UINT32, VOID *, UINT32, VOID *, UINT32, UINT32 *);
BOOL OALIoCtlHalGetRegSecureKeys(UINT32, VOID *, UINT32, VOID *, UINT32, UINT32 *);
BOOL OALIoCtlHalSetEsdramcLatencyHiding(UINT32, VOID *, UINT32, VOID *, UINT32, UINT32 *);
//------------------------------------------------------------------------------

#endif // __MX27_IOCTL_H

⌨️ 快捷键说明

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