Print this page
Code review comments


  50                 U32 high;
  51         } u1;
  52 };
  53 
  54 typedef struct _LD_LOAD_BALANCE_INFO
  55 {
  56     U8      loadBalanceFlag;
  57     U8      reserved1;
  58     U16     raid1DevHandle[2];
  59     U16     scsi_pending_cmds[2];
  60     U64     last_accessed_block[2];
  61 } LD_LOAD_BALANCE_INFO, *PLD_LOAD_BALANCE_INFO;
  62 
  63 #pragma pack(1)
  64 typedef struct _MR_FW_RAID_MAP_ALL {
  65         MR_FW_RAID_MAP raidMap;
  66         MR_LD_SPAN_MAP ldSpanMap[MAX_LOGICAL_DRIVES - 1];
  67 } MR_FW_RAID_MAP_ALL;
  68 
  69 /*
  70  * Raid Context structure which describes MegaRAID specific IO Paramenters
  71  * This resides at offset 0x60 where the SGL normally starts in MPT IO Frames
  72  */
  73 typedef struct _MPI2_SCSI_IO_VENDOR_UNIQUE {
  74         U8 nsegType;            /* 0x00 nseg[7:4], Type[3:0] */
  75         U8 resvd0;              /* 0x01 */
  76         U16 timeoutValue;       /* 0x02 -0x03 */
  77         U8 regLockFlags;        /* 0x04 */
  78         U8 reservedForHw1;      /* 0x05 */
  79         U16 ldTargetId;         /* 0x06 - 0x07 */
  80         U64 regLockRowLBA;      /* 0x08 - 0x0F */
  81         U32 regLockLength;      /* 0x10 - 0x13 */
  82         U16 nextLMId;           /* 0x14 - 0x15 */
  83         U8 extStatus;           /* 0x16 */
  84         U8 status;              /* 0x17 status */
  85         U8 RAIDFlags;           /* 0x18 resvd[7:6], ioSubType[5:4], */
  86                                 /* resvd[3:1], preferredCpu[0] */
  87         U8 numSGE;              /* 0x19 numSge; not including chain entries */
  88         U16 configSeqNum;       /* 0x1A -0x1B */
  89         U8 spanArm;             /* 0x1C span[7:5], arm[4:0] */
  90         U8 resvd2[3];           /* 0x1D-0x1f */




  50                 U32 high;
  51         } u1;
  52 };
  53 
  54 typedef struct _LD_LOAD_BALANCE_INFO
  55 {
  56     U8      loadBalanceFlag;
  57     U8      reserved1;
  58     U16     raid1DevHandle[2];
  59     U16     scsi_pending_cmds[2];
  60     U64     last_accessed_block[2];
  61 } LD_LOAD_BALANCE_INFO, *PLD_LOAD_BALANCE_INFO;
  62 
  63 #pragma pack(1)
  64 typedef struct _MR_FW_RAID_MAP_ALL {
  65         MR_FW_RAID_MAP raidMap;
  66         MR_LD_SPAN_MAP ldSpanMap[MAX_LOGICAL_DRIVES - 1];
  67 } MR_FW_RAID_MAP_ALL;
  68 
  69 /*
  70  * Raid Context structure which describes MegaRAID specific IO Parameters
  71  * This resides at offset 0x60 where the SGL normally starts in MPT IO Frames
  72  */
  73 typedef struct _MPI2_SCSI_IO_VENDOR_UNIQUE {
  74         U8 nsegType;            /* 0x00 nseg[7:4], Type[3:0] */
  75         U8 resvd0;              /* 0x01 */
  76         U16 timeoutValue;       /* 0x02 -0x03 */
  77         U8 regLockFlags;        /* 0x04 */
  78         U8 reservedForHw1;      /* 0x05 */
  79         U16 ldTargetId;         /* 0x06 - 0x07 */
  80         U64 regLockRowLBA;      /* 0x08 - 0x0F */
  81         U32 regLockLength;      /* 0x10 - 0x13 */
  82         U16 nextLMId;           /* 0x14 - 0x15 */
  83         U8 extStatus;           /* 0x16 */
  84         U8 status;              /* 0x17 status */
  85         U8 RAIDFlags;           /* 0x18 resvd[7:6], ioSubType[5:4], */
  86                                 /* resvd[3:1], preferredCpu[0] */
  87         U8 numSGE;              /* 0x19 numSge; not including chain entries */
  88         U16 configSeqNum;       /* 0x1A -0x1B */
  89         U8 spanArm;             /* 0x1C span[7:5], arm[4:0] */
  90         U8 resvd2[3];           /* 0x1D-0x1f */