aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/lpfc/lpfc.h')
-rw-r--r--drivers/scsi/lpfc/lpfc.h24
1 files changed, 18 insertions, 6 deletions
diff --git a/drivers/scsi/lpfc/lpfc.h b/drivers/scsi/lpfc/lpfc.h
index 7706c99ec8bb..bcc56cac4fd8 100644
--- a/drivers/scsi/lpfc/lpfc.h
+++ b/drivers/scsi/lpfc/lpfc.h
@@ -46,10 +46,15 @@ struct lpfc_sli2_slim;
46#define LPFC_DEFAULT_MENLO_SG_SEG_CNT 128 /* sg element count per scsi 46#define LPFC_DEFAULT_MENLO_SG_SEG_CNT 128 /* sg element count per scsi
47 cmnd for menlo needs nearly twice as for firmware 47 cmnd for menlo needs nearly twice as for firmware
48 downloads using bsg */ 48 downloads using bsg */
49#define LPFC_DEFAULT_PROT_SG_SEG_CNT 4096 /* sg protection elements count */ 49
50#define LPFC_MIN_SG_SLI4_BUF_SZ 0x800 /* based on LPFC_DEFAULT_SG_SEG_CNT */
51#define LPFC_MAX_SG_SLI4_SEG_CNT_DIF 128 /* sg element count per scsi cmnd */
52#define LPFC_MAX_SG_SEG_CNT_DIF 512 /* sg element count per scsi cmnd */
50#define LPFC_MAX_SG_SEG_CNT 4096 /* sg element count per scsi cmnd */ 53#define LPFC_MAX_SG_SEG_CNT 4096 /* sg element count per scsi cmnd */
54#define LPFC_MAX_SGL_SEG_CNT 512 /* SGL element count per scsi cmnd */
55#define LPFC_MAX_BPL_SEG_CNT 4096 /* BPL element count per scsi cmnd */
56
51#define LPFC_MAX_SGE_SIZE 0x80000000 /* Maximum data allowed in a SGE */ 57#define LPFC_MAX_SGE_SIZE 0x80000000 /* Maximum data allowed in a SGE */
52#define LPFC_MAX_PROT_SG_SEG_CNT 4096 /* prot sg element count per scsi cmd*/
53#define LPFC_IOCB_LIST_CNT 2250 /* list of IOCBs for fast-path usage. */ 58#define LPFC_IOCB_LIST_CNT 2250 /* list of IOCBs for fast-path usage. */
54#define LPFC_Q_RAMP_UP_INTERVAL 120 /* lun q_depth ramp up interval */ 59#define LPFC_Q_RAMP_UP_INTERVAL 120 /* lun q_depth ramp up interval */
55#define LPFC_VNAME_LEN 100 /* vport symbolic name length */ 60#define LPFC_VNAME_LEN 100 /* vport symbolic name length */
@@ -66,8 +71,10 @@ struct lpfc_sli2_slim;
66 * queue depths when there are driver resource error or Firmware 71 * queue depths when there are driver resource error or Firmware
67 * resource error. 72 * resource error.
68 */ 73 */
69#define QUEUE_RAMP_DOWN_INTERVAL (1 * HZ) /* 1 Second */ 74/* 1 Second */
70#define QUEUE_RAMP_UP_INTERVAL (300 * HZ) /* 5 minutes */ 75#define QUEUE_RAMP_DOWN_INTERVAL (msecs_to_jiffies(1000 * 1))
76/* 5 minutes */
77#define QUEUE_RAMP_UP_INTERVAL (msecs_to_jiffies(1000 * 300))
71 78
72/* Number of exchanges reserved for discovery to complete */ 79/* Number of exchanges reserved for discovery to complete */
73#define LPFC_DISC_IOCB_BUFF_COUNT 20 80#define LPFC_DISC_IOCB_BUFF_COUNT 20
@@ -671,6 +678,7 @@ struct lpfc_hba {
671 uint32_t lmt; 678 uint32_t lmt;
672 679
673 uint32_t fc_topology; /* link topology, from LINK INIT */ 680 uint32_t fc_topology; /* link topology, from LINK INIT */
681 uint32_t fc_topology_changed; /* link topology, from LINK INIT */
674 682
675 struct lpfc_stats fc_stat; 683 struct lpfc_stats fc_stat;
676 684
@@ -701,9 +709,11 @@ struct lpfc_hba {
701 uint32_t cfg_poll_tmo; 709 uint32_t cfg_poll_tmo;
702 uint32_t cfg_use_msi; 710 uint32_t cfg_use_msi;
703 uint32_t cfg_fcp_imax; 711 uint32_t cfg_fcp_imax;
712 uint32_t cfg_fcp_cpu_map;
704 uint32_t cfg_fcp_wq_count; 713 uint32_t cfg_fcp_wq_count;
705 uint32_t cfg_fcp_eq_count; 714 uint32_t cfg_fcp_eq_count;
706 uint32_t cfg_fcp_io_channel; 715 uint32_t cfg_fcp_io_channel;
716 uint32_t cfg_total_seg_cnt;
707 uint32_t cfg_sg_seg_cnt; 717 uint32_t cfg_sg_seg_cnt;
708 uint32_t cfg_prot_sg_seg_cnt; 718 uint32_t cfg_prot_sg_seg_cnt;
709 uint32_t cfg_sg_dma_buf_size; 719 uint32_t cfg_sg_dma_buf_size;
@@ -804,8 +814,10 @@ struct lpfc_hba {
804 uint64_t bg_reftag_err_cnt; 814 uint64_t bg_reftag_err_cnt;
805 815
806 /* fastpath list. */ 816 /* fastpath list. */
807 spinlock_t scsi_buf_list_lock; 817 spinlock_t scsi_buf_list_get_lock; /* SCSI buf alloc list lock */
808 struct list_head lpfc_scsi_buf_list; 818 spinlock_t scsi_buf_list_put_lock; /* SCSI buf free list lock */
819 struct list_head lpfc_scsi_buf_list_get;
820 struct list_head lpfc_scsi_buf_list_put;
809 uint32_t total_scsi_bufs; 821 uint32_t total_scsi_bufs;
810 struct list_head lpfc_iocb_list; 822 struct list_head lpfc_iocb_list;
811 uint32_t total_iocbq_bufs; 823 uint32_t total_iocbq_bufs;