diff options
Diffstat (limited to 'drivers/scsi/lpfc/lpfc.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/scsi/lpfc/lpfc.h b/drivers/scsi/lpfc/lpfc.h index e35a4c7..3482d5a 100644 --- a/drivers/scsi/lpfc/lpfc.h +++ b/drivers/scsi/lpfc/lpfc.h @@ -20,7 +20,6 @@ *******************************************************************/ #include <scsi/scsi_host.h> - struct lpfc_sli2_slim; #define LPFC_PCI_DEV_LP 0x1 @@ -49,7 +48,7 @@ struct lpfc_sli2_slim; #define LPFC_TGTQ_INTERVAL 40000 /* Min amount of time between tgt queue depth change in millisecs */ #define LPFC_TGTQ_RAMPUP_PCENT 5 /* Target queue rampup in percentage */ -#define LPFC_MIN_TGT_QDEPTH 100 +#define LPFC_MIN_TGT_QDEPTH 10 #define LPFC_MAX_TGT_QDEPTH 0xFFFF #define LPFC_MAX_BUCKET_COUNT 20 /* Maximum no. of buckets for stat data @@ -376,6 +375,7 @@ struct lpfc_vport { #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 */ struct timer_list fc_fdmitmo; struct timer_list els_tmofunc; @@ -400,6 +400,7 @@ struct lpfc_vport { uint32_t cfg_max_luns; uint32_t cfg_enable_da_id; uint32_t cfg_max_scsicmpl_time; + uint32_t cfg_tgt_queue_depth; uint32_t dev_loss_tmo_changed; @@ -510,9 +511,9 @@ struct lpfc_hba { void (*lpfc_stop_port) (struct lpfc_hba *); int (*lpfc_hba_init_link) - (struct lpfc_hba *); + (struct lpfc_hba *, uint32_t); int (*lpfc_hba_down_link) - (struct lpfc_hba *); + (struct lpfc_hba *, uint32_t); /* SLI4 specific HBA data structure */ struct lpfc_sli4_hba sli4_hba; @@ -525,7 +526,6 @@ struct lpfc_hba { #define LPFC_SLI3_NPIV_ENABLED 0x02 #define LPFC_SLI3_VPORT_TEARDOWN 0x04 #define LPFC_SLI3_CRP_ENABLED 0x08 -#define LPFC_SLI3_INB_ENABLED 0x10 #define LPFC_SLI3_BG_ENABLED 0x20 #define LPFC_SLI3_DSS_ENABLED 0x40 uint32_t iocb_cmd_size; @@ -557,9 +557,6 @@ struct lpfc_hba { MAILBOX_t *mbox; uint32_t *mbox_ext; - uint32_t *inb_ha_copy; - uint32_t *inb_counter; - uint32_t inb_last_counter; uint32_t ha_copy; struct _PCB *pcb; struct _IOCB *IOCBs; @@ -628,6 +625,7 @@ struct lpfc_hba { uint32_t cfg_hostmem_hgp; uint32_t cfg_log_verbose; uint32_t cfg_aer_support; + uint32_t cfg_iocb_cnt; uint32_t cfg_suppress_link_up; #define LPFC_INITIALIZE_LINK 0 /* do normal init_link mbox */ #define LPFC_DELAY_INIT_LINK 1 /* layered driver hold off */ @@ -816,6 +814,9 @@ struct lpfc_hba { uint8_t menlo_flag; /* menlo generic flags */ #define HBA_MENLO_SUPPORT 0x1 /* HBA supports menlo commands */ + uint32_t iocb_cnt; + uint32_t iocb_max; + atomic_t sdev_cnt; }; static inline struct Scsi_Host * |