lun.h
上传用户:sourcesun
上传日期:2013-09-23
资源大小:362k
文件大小:2k
源码类别:

DNA

开发平台:

Asm

  1. /*************************************************************************
  2.  *
  3.  *    Used with ICCARM and AARM.
  4.  *
  5.  *    (c) Copyright IAR Systems 2005
  6.  *
  7.  *    File name   : lun.h
  8.  *    Description : LUN common definitions module
  9.  *
  10.  *    History :
  11.  *    1. Data        : November 15, 2005
  12.  *       Author      : Stanimir Bonev
  13.  *       Description : Create
  14.  *
  15.  *    $Revision: 1.2.2.1 $
  16. **************************************************************************/
  17. #include <arm_comm.h>
  18. #include <includes.h>
  19. #ifndef __LUN_H
  20. #define __LUN_H
  21. #ifdef  LUN_GOBALS
  22. #define LUN_EXTERN
  23. #else
  24. #define LUN_EXTERN extern
  25. #endif
  26. typedef enum
  27. {
  28.   LunCommandDecode = 0, LunRead, LunWrite, LunVerify
  29. } LunState_t;
  30. typedef enum
  31. {
  32.   LunInitMsg = 0, LunResetReqMsg, LunInquiryReqMsg,
  33.   LunTestUntilReadyReqMsg,LunModeSense6ReqMsg, LunReadCapacity10ReqMsg,
  34.   LunRead10ReqMsg, LunWrite10ReqMsg,
  35.   LunVerify10ReqMsg, LunVerify10BytChkReqMsg,
  36.   LunReadFormatCapacityReqMsg,
  37.   LunDataReadyMsg
  38. } LunMessages_t;
  39. typedef struct
  40. {
  41.   DiskInitFpnt_t   DiskInitFpnt;
  42.   DiskInfoFpnt_t   DiskInfoFpnt;
  43.   DiskStatusFpnt_t DiskStatusFpnt;
  44.   DiskIoFpnt_t     DiskIoFpnt;
  45. } LunFpnt_t, *pLunFpnt_t;
  46. /*************************************************************************
  47.  * Function Name: LunInit
  48.  * Parameters: Int32U LunInd,
  49.  *             DiskInitFpnt_t DiskInitFpnt, DiskInfoFpnt_t DiskInfoFpnt,
  50.  *             DiskStatusFpnt_t DiskStatusFpnt, DiskIoFpnt_t, DiskIoFpnt
  51.  *
  52.  * Return: none
  53.  *
  54.  * Description: LUN Init
  55.  *
  56.  *************************************************************************/
  57. void LunInit (Int32U LunInd,
  58.               DiskInitFpnt_t DiskInitFpnt, DiskInfoFpnt_t DiskInfoFpnt,
  59.               DiskStatusFpnt_t DiskStatusFpnt, DiskIoFpnt_t DiskIoFpnt);
  60. /*************************************************************************
  61.  * Function Name: LunImp
  62.  * Parameters:  Int32U DiskInd
  63.  *
  64.  * Return: none
  65.  *
  66.  * Description: LUN commands implementation
  67.  *
  68.  *************************************************************************/
  69. void LunImp (Int32U DiskInd);
  70. #endif //__LUN_H