Lines Matching defs:lpfc_sli4_hba
762 struct lpfc_sli4_hba { struct
763 void __iomem *conf_regs_memmap_p; /* Kernel memory mapped address for
766 void __iomem *ctrl_regs_memmap_p; /* Kernel memory mapped address for
769 void __iomem *drbl_regs_memmap_p; /* Kernel memory mapped address for
772 void __iomem *dpp_regs_memmap_p; /* Kernel memory mapped address for
775 union {
800 } u;
803 void __iomem *PSMPHRregaddr;
806 void __iomem *SLIINTFregaddr;
809 void __iomem *ISRregaddr; /* HST_ISR register */
810 void __iomem *IMRregaddr; /* HST_IMR register */
811 void __iomem *ISCRregaddr; /* HST_ISCR register */
813 void __iomem *RQDBregaddr; /* RQ_DOORBELL register */
814 void __iomem *WQDBregaddr; /* WQ_DOORBELL register */
815 void __iomem *CQDBregaddr; /* CQ_DOORBELL register */
816 void __iomem *EQDBregaddr; /* EQ_DOORBELL register */
817 void __iomem *MQDBregaddr; /* MQ_DOORBELL register */
818 void __iomem *BMBXregaddr; /* BootStrap MBX register */
820 uint32_t ue_mask_lo;
821 uint32_t ue_mask_hi;
822 uint32_t ue_to_sr;
823 uint32_t ue_to_rp;
824 struct lpfc_register sli_intf;
825 struct lpfc_pc_sli4_params pc_sli4_params;
826 struct lpfc_bbscn_params bbscn_params;
827 struct lpfc_hba_eq_hdl *hba_eq_hdl; /* HBA per-WQ handle */
829 void (*sli4_eq_clr_intr)(struct lpfc_queue *q);
830 void (*sli4_write_eq_db)(struct lpfc_hba *phba, struct lpfc_queue *eq,
832 void (*sli4_write_cq_db)(struct lpfc_hba *phba, struct lpfc_queue *cq,
836 struct lpfc_sli4_hdw_queue *hdwq;
837 struct list_head lpfc_wq_list;
840 struct lpfc_queue **nvmet_cqset; /* Fast-path NVMET CQ Set queues */
841 struct lpfc_queue **nvmet_mrq_hdr; /* Fast-path NVMET hdr MRQs */
842 struct lpfc_queue **nvmet_mrq_data; /* Fast-path NVMET data MRQs */
844 struct lpfc_queue *mbx_cq; /* Slow-path mailbox complete queue */
845 struct lpfc_queue *els_cq; /* Slow-path ELS response complete queue */
846 struct lpfc_queue *nvmels_cq; /* NVME LS complete queue */
847 struct lpfc_queue *mbx_wq; /* Slow-path MBOX work queue */
848 struct lpfc_queue *els_wq; /* Slow-path ELS work queue */
849 struct lpfc_queue *nvmels_wq; /* NVME LS work queue */
850 struct lpfc_queue *hdr_rq; /* Slow-path Header Receive queue */
851 struct lpfc_queue *dat_rq; /* Slow-path Data Receive queue */
853 struct lpfc_name wwnn;
854 struct lpfc_name wwpn;
856 uint32_t fw_func_mode; /* FW function protocol mode */
857 uint32_t ulp0_mode; /* ULP0 protocol mode */
858 uint32_t ulp1_mode; /* ULP1 protocol mode */
861 uint64_t oas_next_lun;
862 uint8_t oas_next_tgt_wwpn[8];
863 uint8_t oas_next_vpt_wwpn[8];
866 int eq_esize;
867 int eq_ecount;
868 int cq_esize;
869 int cq_ecount;
870 int wq_esize;
871 int wq_ecount;
872 int mq_esize;
873 int mq_ecount;
874 int rq_esize;
875 int rq_ecount;
879 uint32_t intr_enable;
880 struct lpfc_bmbx bmbx;
881 struct lpfc_max_cfg_param max_cfg_param;
882 uint16_t extents_in_use; /* must allocate resource extents. */
883 uint16_t rpi_hdrs_in_use; /* must post rpi hdrs if set. */
884 uint16_t next_xri; /* last_xri - max_cfg_param.xri_base = used */
885 uint16_t next_rpi;
886 uint16_t io_xri_max;
887 uint16_t io_xri_cnt;
888 uint16_t io_xri_start;
889 uint16_t els_xri_cnt;
890 uint16_t nvmet_xri_cnt;
891 uint16_t nvmet_io_wait_cnt;
892 uint16_t nvmet_io_wait_total;
893 uint16_t cq_max;
894 struct lpfc_queue **cq_lookup;
895 struct list_head lpfc_els_sgl_list;
896 struct list_head lpfc_abts_els_sgl_list;
897 spinlock_t abts_io_buf_list_lock; /* list of aborted SCSI IOs */
898 struct list_head lpfc_abts_io_buf_list;
899 struct list_head lpfc_nvmet_sgl_list;
900 spinlock_t abts_nvmet_buf_list_lock; /* list of aborted NVMET IOs */
901 struct list_head lpfc_abts_nvmet_ctx_list;
902 spinlock_t t_active_list_lock; /* list of active NVMET IOs */
903 struct list_head t_active_ctx_list;
904 struct list_head lpfc_nvmet_io_wait_list;
905 struct lpfc_nvmet_ctx_info *nvmet_ctx_info;
906 struct lpfc_sglq **lpfc_sglq_active_list;
907 struct list_head lpfc_rpi_hdr_list;
908 unsigned long *rpi_bmask;
909 uint16_t *rpi_ids;
910 uint16_t rpi_count;
911 struct list_head lpfc_rpi_blk_list;
912 unsigned long *xri_bmask;
913 uint16_t *xri_ids;
914 struct list_head lpfc_xri_blk_list;
915 unsigned long *vfi_bmask;
916 uint16_t *vfi_ids;
917 uint16_t vfi_count;
918 struct list_head lpfc_vfi_blk_list;
919 struct lpfc_sli4_flags sli4_flags;
920 struct list_head sp_queue_event;
921 struct list_head sp_cqe_event_pool;
922 struct list_head sp_asynce_work_queue;
923 struct list_head sp_fcp_xri_aborted_work_queue;
924 struct list_head sp_els_xri_aborted_work_queue;
925 struct list_head sp_unsol_work_queue;
926 struct lpfc_sli4_link link_state;
927 struct lpfc_sli4_lnk_info lnk_info;
928 uint32_t pport_name_sta;
931 struct lpfc_iov iov;
932 spinlock_t sgl_list_lock; /* list of aborted els IOs */
933 spinlock_t nvmet_io_wait_lock; /* IOs waiting for ctx resources */
934 uint32_t physical_port;
937 struct lpfc_vector_map_info *cpu_map;
938 uint16_t num_possible_cpu;
939 uint16_t num_present_cpu;
940 struct cpumask irq_aff_mask;
941 uint16_t curr_disp_cpu;
942 struct lpfc_eq_intr_info __percpu *eq_info;
944 struct lpfc_hdwq_stat __percpu *c_stat;
946 struct lpfc_idle_stat *idle_stat;
947 uint32_t conf_trunk;