linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / drivers / scsi / lpfc / lpfc_hw.h
index eedf988..1ea565e 100644 (file)
@@ -1,7 +1,7 @@
 /*******************************************************************
  * This file is part of the Emulex Linux Device Driver for         *
  * Fibre Channel Host Bus Adapters.                                *
- * Copyright (C) 2004-2006 Emulex.  All rights reserved.           *
+ * Copyright (C) 2004-2005 Emulex.  All rights reserved.           *
  * EMULEX and SLI are trademarks of Emulex.                        *
  * www.emulex.com                                                  *
  *                                                                 *
@@ -449,19 +449,15 @@ struct serv_parm {        /* Structure is in Big Endian format */
 #define ELS_CMD_RRQ       0x12000000
 #define ELS_CMD_PRLI      0x20100014
 #define ELS_CMD_PRLO      0x21100014
-#define ELS_CMD_PRLO_ACC  0x02100014
 #define ELS_CMD_PDISC     0x50000000
 #define ELS_CMD_FDISC     0x51000000
 #define ELS_CMD_ADISC     0x52000000
 #define ELS_CMD_FARP      0x54000000
 #define ELS_CMD_FARPR     0x55000000
-#define ELS_CMD_RPS       0x56000000
-#define ELS_CMD_RPL       0x57000000
 #define ELS_CMD_FAN       0x60000000
 #define ELS_CMD_RSCN      0x61040000
 #define ELS_CMD_SCR       0x62000000
 #define ELS_CMD_RNID      0x78000000
-#define ELS_CMD_LIRR      0x7A000000
 #else  /*  __LITTLE_ENDIAN_BITFIELD */
 #define ELS_CMD_MASK      0xffff
 #define ELS_RSP_MASK      0xff
@@ -485,19 +481,15 @@ struct serv_parm {        /* Structure is in Big Endian format */
 #define ELS_CMD_RRQ       0x12
 #define ELS_CMD_PRLI      0x14001020
 #define ELS_CMD_PRLO      0x14001021
-#define ELS_CMD_PRLO_ACC  0x14001002
 #define ELS_CMD_PDISC     0x50
 #define ELS_CMD_FDISC     0x51
 #define ELS_CMD_ADISC     0x52
 #define ELS_CMD_FARP      0x54
 #define ELS_CMD_FARPR     0x55
-#define ELS_CMD_RPS       0x56
-#define ELS_CMD_RPL       0x57
 #define ELS_CMD_FAN       0x60
 #define ELS_CMD_RSCN      0x0461
 #define ELS_CMD_SCR       0x62
 #define ELS_CMD_RNID      0x78
-#define ELS_CMD_LIRR      0x7A
 #endif
 
 /*
@@ -766,40 +758,12 @@ typedef struct _RNID {            /* Structure is in Big Endian format */
        } un;
 } RNID;
 
-typedef struct  _RPS {         /* Structure is in Big Endian format */
-       union {
-               uint32_t portNum;
-               struct lpfc_name portName;
-       } un;
-} RPS;
-
-typedef struct  _RPS_RSP {     /* Structure is in Big Endian format */
-       uint16_t rsvd1;
-       uint16_t portStatus;
-       uint32_t linkFailureCnt;
-       uint32_t lossSyncCnt;
-       uint32_t lossSignalCnt;
-       uint32_t primSeqErrCnt;
-       uint32_t invalidXmitWord;
-       uint32_t crcCnt;
-} RPS_RSP;
-
-typedef struct  _RPL {         /* Structure is in Big Endian format */
-       uint32_t maxsize;
-       uint32_t index;
-} RPL;
-
-typedef struct  _PORT_NUM_BLK {
-       uint32_t portNum;
-       uint32_t portID;
-       struct lpfc_name portName;
-} PORT_NUM_BLK;
-
-typedef struct  _RPL_RSP {     /* Structure is in Big Endian format */
-       uint32_t listLen;
-       uint32_t index;
-       PORT_NUM_BLK port_num_blk;
-} RPL_RSP;
+typedef struct _RRQ {          /* Structure is in Big Endian format */
+       uint32_t SID;
+       uint16_t Oxid;
+       uint16_t Rxid;
+       uint8_t resv[32];       /* optional association hdr */
+} RRQ;
 
 /* This is used for RSCN command */
 typedef struct _D_ID {         /* Structure is in Big Endian format */
@@ -840,6 +804,7 @@ typedef struct _ELS_PKT {   /* Structure is in Big Endian format */
                FARP farp;      /* Payload for FARP/ACC */
                FAN fan;        /* Payload for FAN */
                SCR scr;        /* Payload for SCR/ACC */
+               RRQ rrq;        /* Payload for RRQ */
                RNID rnid;      /* Payload for RNID */
                uint8_t pad[128 - 4];   /* Pad out to payload of 128 bytes */
        } un;
@@ -1235,9 +1200,7 @@ typedef struct {          /* FireFly BIU registers */
 #define MBX_SET_MASK        0x20
 #define MBX_SET_SLIM        0x21
 #define MBX_UNREG_D_ID      0x23
-#define MBX_KILL_BOARD      0x24
 #define MBX_CONFIG_FARP     0x25
-#define MBX_BEACON          0x2A
 
 #define MBX_LOAD_AREA       0x81
 #define MBX_RUN_BIU_DIAG64  0x84
@@ -1541,7 +1504,6 @@ typedef struct {
 
 #define FLAGS_TOPOLOGY_FAILOVER      0x0400    /* Bit 10 */
 #define FLAGS_LINK_SPEED             0x0800    /* Bit 11 */
-#define FLAGS_IMED_ABORT             0x04000   /* Bit 14 */
 
        uint32_t link_speed;
 #define LINK_SPEED_AUTO 0       /* Auto selection */
@@ -1714,13 +1676,13 @@ typedef struct {
        uint32_t rttov;
        uint32_t altov;
        uint32_t lmt;
-#define LMT_RESERVED  0x000    /* Not used */
-#define LMT_1Gb       0x004
-#define LMT_2Gb       0x008
-#define LMT_4Gb       0x040
-#define LMT_8Gb       0x080
-#define LMT_10Gb      0x100
-
+#define LMT_RESERVED    0x0    /* Not used */
+#define LMT_266_10bit   0x1    /* 265.625 Mbaud 10 bit iface  */
+#define LMT_532_10bit   0x2    /* 531.25  Mbaud 10 bit iface  */
+#define LMT_1063_20bit  0x3    /* 1062.5   Mbaud 20 bit iface */
+#define LMT_1063_10bit  0x4    /* 1062.5   Mbaud 10 bit iface */
+#define LMT_2125_10bit  0x8    /* 2125     Mbaud 10 bit iface */
+#define LMT_4250_10bit  0x40   /* 4250     Mbaud 10 bit iface */
 
        uint32_t rsvd2;
        uint32_t rsvd3;