Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations
lpfc.h File Reference
#include <scsi/scsi_host.h>

Go to the source code of this file.

Data Structures

struct  lpfc_dmabuf
 
struct  lpfc_dma_pool
 
struct  hbq_dmabuf
 
struct  lpfc_vpd
 
struct  lpfc_stats
 
struct  lpfc_vport
 
struct  hbq_s
 
struct  unsol_rcv_ct_ctx
 
struct  lpfc_mbox_ext_buf_ctx
 
struct  lpfc_hba
 

Macros

#define ELX_MODEL_NAME_SIZE   80
 
#define LPFC_PCI_DEV_LP   0x1
 
#define LPFC_PCI_DEV_OC   0x2
 
#define LPFC_SLI_REV2   2
 
#define LPFC_SLI_REV3   3
 
#define LPFC_SLI_REV4   4
 
#define LPFC_MAX_TARGET   4096 /* max number of targets supported */
 
#define LPFC_MAX_DISC_THREADS
 
#define LPFC_MAX_NS_RETRY
 
#define LPFC_CMD_PER_LUN   3 /* max outstanding cmds per lun */
 
#define LPFC_DEFAULT_SG_SEG_CNT   64 /* sg element count per scsi cmnd */
 
#define LPFC_DEFAULT_MENLO_SG_SEG_CNT
 
#define LPFC_DEFAULT_PROT_SG_SEG_CNT   4096 /* sg protection elements count */
 
#define LPFC_MAX_SG_SEG_CNT   4096 /* sg element count per scsi cmnd */
 
#define LPFC_MAX_SGE_SIZE   0x80000000 /* Maximum data allowed in a SGE */
 
#define LPFC_MAX_PROT_SG_SEG_CNT   4096 /* prot sg element count per scsi cmd*/
 
#define LPFC_IOCB_LIST_CNT   2250 /* list of IOCBs for fast-path usage. */
 
#define LPFC_Q_RAMP_UP_INTERVAL   120 /* lun q_depth ramp up interval */
 
#define LPFC_VNAME_LEN   100 /* vport symbolic name length */
 
#define LPFC_TGTQ_INTERVAL
 
#define LPFC_TGTQ_RAMPUP_PCENT   5 /* Target queue rampup in percentage */
 
#define LPFC_MIN_TGT_QDEPTH   10
 
#define LPFC_MAX_TGT_QDEPTH   0xFFFF
 
#define LPFC_MAX_BUCKET_COUNT
 
#define QUEUE_RAMP_DOWN_INTERVAL   (1 * HZ) /* 1 Second */
 
#define QUEUE_RAMP_UP_INTERVAL   (300 * HZ) /* 5 minutes */
 
#define LPFC_DISC_IOCB_BUFF_COUNT   20
 
#define LPFC_HB_MBOX_INTERVAL   5 /* Heart beat interval in seconds. */
 
#define LPFC_HB_MBOX_TIMEOUT   30 /* Heart beat timeout in seconds. */
 
#define LPFC_LOOK_AHEAD_OFF   0 /* Look ahead logic is turned off */
 
#define LPFC_ERATT_POLL_INTERVAL   5 /* EATT poll interval in seconds */
 
#define putPaddrLow(addr)   ((uint32_t) (0xffffffff & (u64)(addr)))
 
#define putPaddrHigh(addr)   ((uint32_t) (0xffffffff & (((u64)(addr))>>32)))
 
#define getPaddr(high, low)
 
#define LPFC_DRVR_TIMEOUT   16 /* driver iocb timeout value in sec */
 
#define FC_MAX_ADPTMSG   64
 
#define MAX_HBAEVT   32
 
#define LPFC_MSIX_VECTORS   2
 
#define LPFC_DATA_READY   (1<<0)
 
#define LPFC_LBUF_SZ   128
 
#define LPFC_MBX_NO_WAIT   0
 
#define LPFC_MBX_WAIT   1
 
#define MEM_PRI   0x100
 
#define LPFC_PHYSICAL_PORT   1
 
#define LPFC_NPIV_PORT   2
 
#define LPFC_FABRIC_PORT   3
 
#define LPFC_VPI_REGISTERED   0x1
 
#define FC_PT2PT   0x1 /* pt2pt with no fabric */
 
#define FC_PT2PT_PLOGI   0x2 /* pt2pt initiate PLOGI */
 
#define FC_DISC_TMO   0x4 /* Discovery timer running */
 
#define FC_PUBLIC_LOOP   0x8 /* Public loop */
 
#define FC_LBIT   0x10 /* LOGIN bit in loopinit set */
 
#define FC_RSCN_MODE   0x20 /* RSCN cmd rcv'ed */
 
#define FC_NLP_MORE   0x40 /* More node to process in node tbl */
 
#define FC_OFFLINE_MODE   0x80 /* Interface is offline for diag */
 
#define FC_FABRIC   0x100 /* We are fabric attached */
 
#define FC_VPORT_LOGO_RCVD   0x200 /* LOGO received on vport */
 
#define FC_RSCN_DISCOVERY   0x400 /* Auth all devices after RSCN */
 
#define FC_LOGO_RCVD_DID_CHNG   0x800 /* FDISC on phys port detect DID chng*/
 
#define FC_SCSI_SCAN_TMO   0x4000 /* scsi scan timer running */
 
#define FC_ABORT_DISCOVERY   0x8000 /* we want to abort discovery */
 
#define FC_NDISC_ACTIVE   0x10000 /* NPort discovery active */
 
#define FC_BYPASSED_MODE   0x20000 /* NPort is in bypassed mode */
 
#define FC_VPORT_NEEDS_REG_VPI   0x80000 /* Needs to have its vpi registered */
 
#define FC_RSCN_DEFERRED   0x100000 /* A deferred RSCN being processed */
 
#define FC_VPORT_NEEDS_INIT_VPI   0x200000 /* Need to INIT_VPI before FDISC */
 
#define FC_VPORT_CVL_RCVD   0x400000 /* VLink failed due to CVL */
 
#define FC_VFI_REGISTERED   0x800000 /* VFI is registered */
 
#define FC_FDISC_COMPLETED   0x1000000/* FDISC completed */
 
#define FC_DISC_DELAYED   0x2000000/* Delay NPort discovery */
 
#define FC_CT_RFF_ID   0x1 /* RFF_ID accepted by switch */
 
#define FC_CT_RNN_ID   0x2 /* RNN_ID accepted by switch */
 
#define FC_CT_RSNN_NN   0x4 /* RSNN_NN accepted by switch */
 
#define FC_CT_RSPN_ID   0x8 /* RSPN_ID accepted by switch */
 
#define FC_CT_RFT_ID   0x10 /* RFT_ID accepted by switch */
 
#define WORKER_DISC_TMO   0x1 /* vport: Discovery timeout */
 
#define WORKER_ELS_TMO   0x2 /* vport: ELS timeout */
 
#define WORKER_FDMI_TMO   0x4 /* vport: FDMI timeout */
 
#define WORKER_DELAYED_DISC_TMO   0x8 /* vport: delayed discovery */
 
#define WORKER_MBOX_TMO   0x100 /* hba: MBOX timeout */
 
#define WORKER_HB_TMO   0x200 /* hba: Heart beat timeout */
 
#define WORKER_FABRIC_BLOCK_TMO   0x400 /* hba: fabric block timeout */
 
#define WORKER_RAMP_DOWN_QUEUE   0x800 /* hba: Decrease Q depth */
 
#define WORKER_RAMP_UP_QUEUE   0x1000 /* hba: Increase Q depth */
 
#define WORKER_SERVICE_TXQ   0x2000 /* hba: IOCBs on the txq */
 
#define FC_LOADING   0x1 /* HBA in process of loading drvr */
 
#define FC_UNLOADING   0x2 /* HBA in process of unloading drvr */
 
#define STATIC_VPORT   1
 
#define LPFC_MAX_HBQS   4
 
#define LPFC_ELS_HBQ   0
 
#define LPFC_EXTRA_HBQ   1
 
#define UNSOL_VALID   0x00000001
 
#define LPFC_USER_LINK_SPEED_AUTO   0 /* auto select (default)*/
 
#define LPFC_USER_LINK_SPEED_1G   1 /* 1 Gigabaud */
 
#define LPFC_USER_LINK_SPEED_2G   2 /* 2 Gigabaud */
 
#define LPFC_USER_LINK_SPEED_4G   4 /* 4 Gigabaud */
 
#define LPFC_USER_LINK_SPEED_8G   8 /* 8 Gigabaud */
 
#define LPFC_USER_LINK_SPEED_10G   10 /* 10 Gigabaud */
 
#define LPFC_USER_LINK_SPEED_16G   16 /* 16 Gigabaud */
 
#define LPFC_USER_LINK_SPEED_MAX   LPFC_USER_LINK_SPEED_16G
 
#define LPFC_USER_LINK_SPEED_BITMAP
 
#define LPFC_LINK_SPEED_STRING   "0, 1, 2, 4, 8, 10, 16"
 
#define LPFC_BSG_MBOX_IDLE   0
 
#define LPFC_BSG_MBOX_HOST   1
 
#define LPFC_BSG_MBOX_PORT   2
 
#define LPFC_BSG_MBOX_DONE   3
 
#define LPFC_BSG_MBOX_ABTS   4
 
#define LPFC_SLI3_HBQ_ENABLED   0x01
 
#define LPFC_SLI3_NPIV_ENABLED   0x02
 
#define LPFC_SLI3_VPORT_TEARDOWN   0x04
 
#define LPFC_SLI3_CRP_ENABLED   0x08
 
#define LPFC_SLI3_BG_ENABLED   0x20
 
#define LPFC_SLI3_DSS_ENABLED   0x40
 
#define LPFC_SLI4_PERFH_ENABLED   0x80
 
#define LPFC_SLI4_PHWQ_ENABLED   0x100
 
#define LS_LOOPBACK_MODE   0x1 /* NPort is in Loopback mode */
 
#define LS_NPIV_FAB_SUPPORTED   0x2 /* Fabric supports NPIV */
 
#define LS_IGNORE_ERATT   0x4 /* intr handler should ignore ERATT */
 
#define HBA_ERATT_HANDLED   0x1 /* This flag is set when eratt handled */
 
#define DEFER_ERATT   0x2 /* Deferred error attention in progress */
 
#define HBA_FCOE_MODE   0x4 /* HBA function in FCoE Mode */
 
#define HBA_SP_QUEUE_EVT   0x8 /* Slow-path qevt posted to worker thread*/
 
#define HBA_POST_RECEIVE_BUFFER   0x10 /* Rcv buffers need to be posted */
 
#define FCP_XRI_ABORT_EVENT   0x20
 
#define ELS_XRI_ABORT_EVENT   0x40
 
#define ASYNC_EVENT   0x80
 
#define LINK_DISABLED   0x100 /* Link disabled by user */
 
#define FCF_TS_INPROG   0x200 /* FCF table scan in progress */
 
#define FCF_RR_INPROG   0x400 /* FCF roundrobin flogi in progress */
 
#define HBA_FIP_SUPPORT   0x800 /* FIP support in HBA */
 
#define HBA_AER_ENABLED   0x1000 /* AER enabled with HBA */
 
#define HBA_DEVLOSS_TMO   0x2000 /* HBA in devloss timeout */
 
#define HBA_RRQ_ACTIVE   0x4000 /* process the rrq active list */
 
#define HBA_FCP_IOQ_FLUSH   0x8000 /* FCP I/O queues being flushed */
 
#define LPFC_FCF_FOV   1 /* Fast fcf failover */
 
#define LPFC_FCF_PRIORITY   2 /* Priority fcf failover */
 
#define LPFC_INITIALIZE_LINK   0 /* do normal init_link mbox */
 
#define LPFC_DELAY_INIT_LINK   1 /* layered driver hold off */
 
#define LPFC_DELAY_INIT_LINK_INDEFINITELY   2 /* wait, manual intervention */
 
#define VPD_MODEL_DESC   0x1 /* valid vpd model description */
 
#define VPD_MODEL_NAME   0x2 /* valid vpd model name */
 
#define VPD_PROGRAM_TYPE   0x4 /* valid vpd program type */
 
#define VPD_PORT   0x8 /* valid vpd port data */
 
#define VPD_MASK   0xf /* mask for any vpd data */
 
#define LPFC_INTR_ERROR   0xFFFFFFFF
 
#define LPFC_MAX_VPI   0xFFFF /* Max number of VPI supported */
 
#define FABRIC_COMANDS_BLOCKED   0
 
#define QUE_BUFTAG_BIT   (1<<31)
 
#define LPFC_NO_BUCKET   0
 
#define LPFC_LINEAR_BUCKET   1
 
#define LPFC_POWER2_BUCKET   2
 
#define LPFC_MAX_EVT_COUNT   512
 
#define HBA_MENLO_SUPPORT   0x1 /* HBA supports menlo commands */
 

Typedefs

typedef struct lpfc_vpd lpfc_vpd_t
 

Enumerations

enum  lpfc_polling_flags { ENABLE_FCP_RING_POLLING = 0x1, DISABLE_FCP_RING_INT = 0x2 }
 
enum  discovery_state {
  LPFC_VPORT_UNKNOWN = 0, LPFC_VPORT_FAILED = 1, LPFC_LOCAL_CFG_LINK = 6, LPFC_FLOGI = 7,
  LPFC_FDISC = 8, LPFC_FABRIC_CFG_LINK = 9, LPFC_NS_REG = 10, LPFC_NS_QRY = 11,
  LPFC_BUILD_DISC_LIST = 12, LPFC_DISC_AUTH = 13, LPFC_VPORT_READY = 32
}
 
enum  hba_state {
  LPFC_LINK_UNKNOWN = 0, LPFC_WARM_START = 1, LPFC_INIT_START = 2, LPFC_INIT_MBX_CMDS = 3,
  LPFC_LINK_DOWN = 4, LPFC_LINK_UP = 5, LPFC_CLEAR_LA = 6, LPFC_HBA_READY = 32,
  LPFC_HBA_ERROR = -1
}
 
enum  hba_temp_state { HBA_NORMAL_TEMP, HBA_OVER_TEMP }
 
enum  intr_type_t { NONE = 0, INTx, MSI, MSIX }
 
enum  nemb_type { nemb_mse = 1, nemb_hbd }
 
enum  mbox_type { mbox_rd = 1, mbox_wr }
 
enum  dma_type { dma_mbox = 1, dma_ebuf }
 
enum  sta_type { sta_pre_addr = 1, sta_pos_addr }
 

Macro Definition Documentation

#define ASYNC_EVENT   0x80

Definition at line 620 of file lpfc.h.

#define DEFER_ERATT   0x2 /* Deferred error attention in progress */

Definition at line 614 of file lpfc.h.

#define ELS_XRI_ABORT_EVENT   0x40

Definition at line 619 of file lpfc.h.

#define ELX_MODEL_NAME_SIZE   80

Definition at line 30 of file lpfc.h.

#define FABRIC_COMANDS_BLOCKED   0

Definition at line 836 of file lpfc.h.

#define FC_ABORT_DISCOVERY   0x8000 /* we want to abort discovery */

Definition at line 318 of file lpfc.h.

#define FC_BYPASSED_MODE   0x20000 /* NPort is in bypassed mode */

Definition at line 320 of file lpfc.h.

#define FC_CT_RFF_ID   0x1 /* RFF_ID accepted by switch */

Definition at line 330 of file lpfc.h.

#define FC_CT_RFT_ID   0x10 /* RFT_ID accepted by switch */

Definition at line 334 of file lpfc.h.

#define FC_CT_RNN_ID   0x2 /* RNN_ID accepted by switch */

Definition at line 331 of file lpfc.h.

#define FC_CT_RSNN_NN   0x4 /* RSNN_NN accepted by switch */

Definition at line 332 of file lpfc.h.

#define FC_CT_RSPN_ID   0x8 /* RSPN_ID accepted by switch */

Definition at line 333 of file lpfc.h.

#define FC_DISC_DELAYED   0x2000000/* Delay NPort discovery */

Definition at line 327 of file lpfc.h.

#define FC_DISC_TMO   0x4 /* Discovery timer running */

Definition at line 307 of file lpfc.h.

#define FC_FABRIC   0x100 /* We are fabric attached */

Definition at line 313 of file lpfc.h.

#define FC_FDISC_COMPLETED   0x1000000/* FDISC completed */

Definition at line 326 of file lpfc.h.

#define FC_LBIT   0x10 /* LOGIN bit in loopinit set */

Definition at line 309 of file lpfc.h.

#define FC_LOADING   0x1 /* HBA in process of loading drvr */

Definition at line 393 of file lpfc.h.

#define FC_LOGO_RCVD_DID_CHNG   0x800 /* FDISC on phys port detect DID chng*/

Definition at line 316 of file lpfc.h.

#define FC_MAX_ADPTMSG   64

Definition at line 84 of file lpfc.h.

#define FC_NDISC_ACTIVE   0x10000 /* NPort discovery active */

Definition at line 319 of file lpfc.h.

#define FC_NLP_MORE   0x40 /* More node to process in node tbl */

Definition at line 311 of file lpfc.h.

#define FC_OFFLINE_MODE   0x80 /* Interface is offline for diag */

Definition at line 312 of file lpfc.h.

#define FC_PT2PT   0x1 /* pt2pt with no fabric */

Definition at line 305 of file lpfc.h.

#define FC_PT2PT_PLOGI   0x2 /* pt2pt initiate PLOGI */

Definition at line 306 of file lpfc.h.

#define FC_PUBLIC_LOOP   0x8 /* Public loop */

Definition at line 308 of file lpfc.h.

#define FC_RSCN_DEFERRED   0x100000 /* A deferred RSCN being processed */

Definition at line 322 of file lpfc.h.

#define FC_RSCN_DISCOVERY   0x400 /* Auth all devices after RSCN */

Definition at line 315 of file lpfc.h.

#define FC_RSCN_MODE   0x20 /* RSCN cmd rcv'ed */

Definition at line 310 of file lpfc.h.

#define FC_SCSI_SCAN_TMO   0x4000 /* scsi scan timer running */

Definition at line 317 of file lpfc.h.

#define FC_UNLOADING   0x2 /* HBA in process of unloading drvr */

Definition at line 394 of file lpfc.h.

#define FC_VFI_REGISTERED   0x800000 /* VFI is registered */

Definition at line 325 of file lpfc.h.

#define FC_VPORT_CVL_RCVD   0x400000 /* VLink failed due to CVL */

Definition at line 324 of file lpfc.h.

#define FC_VPORT_LOGO_RCVD   0x200 /* LOGO received on vport */

Definition at line 314 of file lpfc.h.

#define FC_VPORT_NEEDS_INIT_VPI   0x200000 /* Need to INIT_VPI before FDISC */

Definition at line 323 of file lpfc.h.

#define FC_VPORT_NEEDS_REG_VPI   0x80000 /* Needs to have its vpi registered */

Definition at line 321 of file lpfc.h.

#define FCF_RR_INPROG   0x400 /* FCF roundrobin flogi in progress */

Definition at line 623 of file lpfc.h.

#define FCF_TS_INPROG   0x200 /* FCF table scan in progress */

Definition at line 622 of file lpfc.h.

#define FCP_XRI_ABORT_EVENT   0x20

Definition at line 618 of file lpfc.h.

#define getPaddr (   high,
  low 
)
Value:
(( (u64)(high)<<16 ) << 16)|( (u64)(low))))

Definition at line 80 of file lpfc.h.

#define HBA_AER_ENABLED   0x1000 /* AER enabled with HBA */

Definition at line 625 of file lpfc.h.

#define HBA_DEVLOSS_TMO   0x2000 /* HBA in devloss timeout */

Definition at line 626 of file lpfc.h.

#define HBA_ERATT_HANDLED   0x1 /* This flag is set when eratt handled */

Definition at line 613 of file lpfc.h.

#define HBA_FCOE_MODE   0x4 /* HBA function in FCoE Mode */

Definition at line 615 of file lpfc.h.

#define HBA_FCP_IOQ_FLUSH   0x8000 /* FCP I/O queues being flushed */

Definition at line 628 of file lpfc.h.

#define HBA_FIP_SUPPORT   0x800 /* FIP support in HBA */

Definition at line 624 of file lpfc.h.

#define HBA_MENLO_SUPPORT   0x1 /* HBA supports menlo commands */

Definition at line 937 of file lpfc.h.

#define HBA_POST_RECEIVE_BUFFER   0x10 /* Rcv buffers need to be posted */

Definition at line 617 of file lpfc.h.

#define HBA_RRQ_ACTIVE   0x4000 /* process the rrq active list */

Definition at line 627 of file lpfc.h.

#define HBA_SP_QUEUE_EVT   0x8 /* Slow-path qevt posted to worker thread*/

Definition at line 616 of file lpfc.h.

#define LINK_DISABLED   0x100 /* Link disabled by user */

Definition at line 621 of file lpfc.h.

#define LPFC_BSG_MBOX_ABTS   4

Definition at line 515 of file lpfc.h.

#define LPFC_BSG_MBOX_DONE   3

Definition at line 514 of file lpfc.h.

#define LPFC_BSG_MBOX_HOST   1

Definition at line 512 of file lpfc.h.

#define LPFC_BSG_MBOX_IDLE   0

Definition at line 511 of file lpfc.h.

#define LPFC_BSG_MBOX_PORT   2

Definition at line 513 of file lpfc.h.

#define LPFC_CMD_PER_LUN   3 /* max outstanding cmds per lun */

Definition at line 42 of file lpfc.h.

#define LPFC_DATA_READY   (1<<0)

Definition at line 92 of file lpfc.h.

#define LPFC_DEFAULT_MENLO_SG_SEG_CNT
Value:
128 /* sg element count per scsi
cmnd for menlo needs nearly twice as for firmware
downloads using bsg */

Definition at line 44 of file lpfc.h.

#define LPFC_DEFAULT_PROT_SG_SEG_CNT   4096 /* sg protection elements count */

Definition at line 45 of file lpfc.h.

#define LPFC_DEFAULT_SG_SEG_CNT   64 /* sg element count per scsi cmnd */

Definition at line 43 of file lpfc.h.

#define LPFC_DELAY_INIT_LINK   1 /* layered driver hold off */

Definition at line 714 of file lpfc.h.

#define LPFC_DELAY_INIT_LINK_INDEFINITELY   2 /* wait, manual intervention */

Definition at line 715 of file lpfc.h.

#define LPFC_DISC_IOCB_BUFF_COUNT   20

Definition at line 67 of file lpfc.h.

#define LPFC_DRVR_TIMEOUT   16 /* driver iocb timeout value in sec */

Definition at line 83 of file lpfc.h.

#define LPFC_ELS_HBQ   0

Definition at line 448 of file lpfc.h.

#define LPFC_ERATT_POLL_INTERVAL   5 /* EATT poll interval in seconds */

Definition at line 75 of file lpfc.h.

#define LPFC_EXTRA_HBQ   1

Definition at line 449 of file lpfc.h.

#define LPFC_FABRIC_PORT   3

Definition at line 293 of file lpfc.h.

#define LPFC_FCF_FOV   1 /* Fast fcf failover */

Definition at line 682 of file lpfc.h.

#define LPFC_FCF_PRIORITY   2 /* Priority fcf failover */

Definition at line 683 of file lpfc.h.

#define LPFC_HB_MBOX_INTERVAL   5 /* Heart beat interval in seconds. */

Definition at line 69 of file lpfc.h.

#define LPFC_HB_MBOX_TIMEOUT   30 /* Heart beat timeout in seconds. */

Definition at line 70 of file lpfc.h.

#define LPFC_INITIALIZE_LINK   0 /* do normal init_link mbox */

Definition at line 713 of file lpfc.h.

#define LPFC_INTR_ERROR   0xFFFFFFFF

Definition at line 811 of file lpfc.h.

#define LPFC_IOCB_LIST_CNT   2250 /* list of IOCBs for fast-path usage. */

Definition at line 49 of file lpfc.h.

#define LPFC_LBUF_SZ   128

Definition at line 95 of file lpfc.h.

#define LPFC_LINEAR_BUCKET   1

Definition at line 912 of file lpfc.h.

#define LPFC_LINK_SPEED_STRING   "0, 1, 2, 4, 8, 10, 16"

Definition at line 487 of file lpfc.h.

#define LPFC_LOOK_AHEAD_OFF   0 /* Look ahead logic is turned off */

Definition at line 72 of file lpfc.h.

#define LPFC_MAX_BUCKET_COUNT
Value:
20 /* Maximum no. of buckets for stat data
collection. */

Definition at line 57 of file lpfc.h.

#define LPFC_MAX_DISC_THREADS
Value:
64 /* max outstanding discovery els
requests */

Definition at line 40 of file lpfc.h.

#define LPFC_MAX_EVT_COUNT   512

Definition at line 919 of file lpfc.h.

#define LPFC_MAX_HBQS   4

Definition at line 446 of file lpfc.h.

#define LPFC_MAX_NS_RETRY
Value:
3 /* Number of retry attempts to contact
the NameServer before giving up. */

Definition at line 41 of file lpfc.h.

#define LPFC_MAX_PROT_SG_SEG_CNT   4096 /* prot sg element count per scsi cmd*/

Definition at line 48 of file lpfc.h.

#define LPFC_MAX_SG_SEG_CNT   4096 /* sg element count per scsi cmnd */

Definition at line 46 of file lpfc.h.

#define LPFC_MAX_SGE_SIZE   0x80000000 /* Maximum data allowed in a SGE */

Definition at line 47 of file lpfc.h.

#define LPFC_MAX_TARGET   4096 /* max number of targets supported */

Definition at line 39 of file lpfc.h.

#define LPFC_MAX_TGT_QDEPTH   0xFFFF

Definition at line 55 of file lpfc.h.

#define LPFC_MAX_VPI   0xFFFF /* Max number of VPI supported */

Definition at line 817 of file lpfc.h.

#define LPFC_MBX_NO_WAIT   0

Definition at line 98 of file lpfc.h.

#define LPFC_MBX_WAIT   1

Definition at line 99 of file lpfc.h.

#define LPFC_MIN_TGT_QDEPTH   10

Definition at line 54 of file lpfc.h.

#define LPFC_MSIX_VECTORS   2

Definition at line 89 of file lpfc.h.

#define LPFC_NO_BUCKET   0

Definition at line 911 of file lpfc.h.

#define LPFC_NPIV_PORT   2

Definition at line 292 of file lpfc.h.

#define LPFC_PCI_DEV_LP   0x1

Definition at line 32 of file lpfc.h.

#define LPFC_PCI_DEV_OC   0x2

Definition at line 33 of file lpfc.h.

#define LPFC_PHYSICAL_PORT   1

Definition at line 291 of file lpfc.h.

#define LPFC_POWER2_BUCKET   2

Definition at line 913 of file lpfc.h.

#define LPFC_Q_RAMP_UP_INTERVAL   120 /* lun q_depth ramp up interval */

Definition at line 50 of file lpfc.h.

#define LPFC_SLI3_BG_ENABLED   0x20

Definition at line 597 of file lpfc.h.

#define LPFC_SLI3_CRP_ENABLED   0x08

Definition at line 596 of file lpfc.h.

#define LPFC_SLI3_DSS_ENABLED   0x40

Definition at line 598 of file lpfc.h.

#define LPFC_SLI3_HBQ_ENABLED   0x01

Definition at line 593 of file lpfc.h.

#define LPFC_SLI3_NPIV_ENABLED   0x02

Definition at line 594 of file lpfc.h.

#define LPFC_SLI3_VPORT_TEARDOWN   0x04

Definition at line 595 of file lpfc.h.

#define LPFC_SLI4_PERFH_ENABLED   0x80

Definition at line 599 of file lpfc.h.

#define LPFC_SLI4_PHWQ_ENABLED   0x100

Definition at line 600 of file lpfc.h.

#define LPFC_SLI_REV2   2

Definition at line 35 of file lpfc.h.

#define LPFC_SLI_REV3   3

Definition at line 36 of file lpfc.h.

#define LPFC_SLI_REV4   4

Definition at line 37 of file lpfc.h.

#define LPFC_TGTQ_INTERVAL
Value:
40000 /* Min amount of time between tgt
queue depth change in millisecs */

Definition at line 52 of file lpfc.h.

#define LPFC_TGTQ_RAMPUP_PCENT   5 /* Target queue rampup in percentage */

Definition at line 53 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_10G   10 /* 10 Gigabaud */

Definition at line 477 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_16G   16 /* 16 Gigabaud */

Definition at line 478 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_1G   1 /* 1 Gigabaud */

Definition at line 473 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_2G   2 /* 2 Gigabaud */

Definition at line 474 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_4G   4 /* 4 Gigabaud */

Definition at line 475 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_8G   8 /* 8 Gigabaud */

Definition at line 476 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_AUTO   0 /* auto select (default)*/

Definition at line 472 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_BITMAP
Value:

Definition at line 480 of file lpfc.h.

#define LPFC_USER_LINK_SPEED_MAX   LPFC_USER_LINK_SPEED_16G

Definition at line 479 of file lpfc.h.

#define LPFC_VNAME_LEN   100 /* vport symbolic name length */

Definition at line 51 of file lpfc.h.

#define LPFC_VPI_REGISTERED   0x1

Definition at line 299 of file lpfc.h.

#define LS_IGNORE_ERATT   0x4 /* intr handler should ignore ERATT */

Definition at line 610 of file lpfc.h.

#define LS_LOOPBACK_MODE   0x1 /* NPort is in Loopback mode */

Definition at line 606 of file lpfc.h.

#define LS_NPIV_FAB_SUPPORTED   0x2 /* Fabric supports NPIV */

Definition at line 609 of file lpfc.h.

#define MAX_HBAEVT   32

Definition at line 86 of file lpfc.h.

#define MEM_PRI   0x100

Definition at line 130 of file lpfc.h.

#define putPaddrHigh (   addr)    ((uint32_t) (0xffffffff & (((u64)(addr))>>32)))

Definition at line 79 of file lpfc.h.

#define putPaddrLow (   addr)    ((uint32_t) (0xffffffff & (u64)(addr)))

Definition at line 78 of file lpfc.h.

#define QUE_BUFTAG_BIT   (1<<31)

Definition at line 906 of file lpfc.h.

#define QUEUE_RAMP_DOWN_INTERVAL   (1 * HZ) /* 1 Second */

Definition at line 63 of file lpfc.h.

#define QUEUE_RAMP_UP_INTERVAL   (300 * HZ) /* 5 minutes */

Definition at line 64 of file lpfc.h.

#define STATIC_VPORT   1

Definition at line 428 of file lpfc.h.

#define UNSOL_VALID   0x00000001

Definition at line 467 of file lpfc.h.

#define VPD_MASK   0xf /* mask for any vpd data */

Definition at line 770 of file lpfc.h.

#define VPD_MODEL_DESC   0x1 /* valid vpd model description */

Definition at line 766 of file lpfc.h.

#define VPD_MODEL_NAME   0x2 /* valid vpd model name */

Definition at line 767 of file lpfc.h.

#define VPD_PORT   0x8 /* valid vpd port data */

Definition at line 769 of file lpfc.h.

#define VPD_PROGRAM_TYPE   0x4 /* valid vpd program type */

Definition at line 768 of file lpfc.h.

#define WORKER_DELAYED_DISC_TMO   0x8 /* vport: delayed discovery */

Definition at line 377 of file lpfc.h.

#define WORKER_DISC_TMO   0x1 /* vport: Discovery timeout */

Definition at line 374 of file lpfc.h.

#define WORKER_ELS_TMO   0x2 /* vport: ELS timeout */

Definition at line 375 of file lpfc.h.

#define WORKER_FABRIC_BLOCK_TMO   0x400 /* hba: fabric block timeout */

Definition at line 381 of file lpfc.h.

#define WORKER_FDMI_TMO   0x4 /* vport: FDMI timeout */

Definition at line 376 of file lpfc.h.

#define WORKER_HB_TMO   0x200 /* hba: Heart beat timeout */

Definition at line 380 of file lpfc.h.

#define WORKER_MBOX_TMO   0x100 /* hba: MBOX timeout */

Definition at line 379 of file lpfc.h.

#define WORKER_RAMP_DOWN_QUEUE   0x800 /* hba: Decrease Q depth */

Definition at line 382 of file lpfc.h.

#define WORKER_RAMP_UP_QUEUE   0x1000 /* hba: Increase Q depth */

Definition at line 383 of file lpfc.h.

#define WORKER_SERVICE_TXQ   0x2000 /* hba: IOCBs on the txq */

Definition at line 384 of file lpfc.h.

Typedef Documentation

Enumeration Type Documentation

Enumerator:
LPFC_VPORT_UNKNOWN 
LPFC_VPORT_FAILED 
LPFC_LOCAL_CFG_LINK 
LPFC_FLOGI 
LPFC_FDISC 
LPFC_FABRIC_CFG_LINK 
LPFC_NS_REG 
LPFC_NS_QRY 
LPFC_BUILD_DISC_LIST 
LPFC_DISC_AUTH 
LPFC_VPORT_READY 

Definition at line 258 of file lpfc.h.

enum dma_type
Enumerator:
dma_mbox 
dma_ebuf 

Definition at line 499 of file lpfc.h.

enum hba_state
Enumerator:
LPFC_LINK_UNKNOWN 
LPFC_WARM_START 
LPFC_INIT_START 
LPFC_INIT_MBX_CMDS 
LPFC_LINK_DOWN 
LPFC_LINK_UP 
LPFC_CLEAR_LA 
LPFC_HBA_READY 
LPFC_HBA_ERROR 

Definition at line 274 of file lpfc.h.

Enumerator:
HBA_NORMAL_TEMP 
HBA_OVER_TEMP 

Definition at line 451 of file lpfc.h.

Enumerator:
NONE 
INTx 
MSI 
MSIX 

Definition at line 456 of file lpfc.h.

Enumerator:
ENABLE_FCP_RING_POLLING 
DISABLE_FCP_RING_INT 

Definition at line 101 of file lpfc.h.

enum mbox_type
Enumerator:
mbox_rd 
mbox_wr 

Definition at line 494 of file lpfc.h.

enum nemb_type
Enumerator:
nemb_mse 
nemb_hbd 

Definition at line 489 of file lpfc.h.

enum sta_type
Enumerator:
sta_pre_addr 
sta_pos_addr 

Definition at line 504 of file lpfc.h.