Lines Matching defs:pmcraid_instance

658 struct pmcraid_instance {  struct
662 struct pmcraid_resource_entry *res_entries;
664 struct list_head free_res_q; /* res_entries lists for easy lookup */
665 struct list_head used_res_q; /* List of to be exposed resources */
666 spinlock_t resource_lock; /* spinlock to protect resource list */
668 void __iomem *mapped_dma_addr;
669 void __iomem *ioa_status; /* Iomapped IOA status register */
670 void __iomem *mailbox; /* Iomapped mailbox register */
671 void __iomem *ioarrin; /* IOmapped IOARR IN register */
673 struct pmcraid_interrupts int_regs;
674 struct pmcraid_chip_details *chip_cfg;
677 struct pmcraid_hostrcb ldn;
678 struct pmcraid_hostrcb ccn;
679 struct pmcraid_state_msg scn; /* controller state change msg */
683 dma_addr_t hrrq_start_bus_addr[PMCRAID_NUM_MSIX_VECTORS];
686 __le32 *hrrq_start[PMCRAID_NUM_MSIX_VECTORS];
689 __le32 *hrrq_end[PMCRAID_NUM_MSIX_VECTORS];
692 __le32 *hrrq_curr[PMCRAID_NUM_MSIX_VECTORS];
695 spinlock_t hrrq_lock[PMCRAID_NUM_MSIX_VECTORS];
697 struct pmcraid_inquiry_data *inq_data;
698 dma_addr_t inq_data_baddr;
700 struct pmcraid_timestamp_data *timestamp_data;
701 dma_addr_t timestamp_data_baddr;
704 u32 config_table_entry_size;
707 u8 host_toggle_bit[PMCRAID_NUM_MSIX_VECTORS];
711 wait_queue_head_t reset_wait_q;
712 struct pmcraid_cmd *reset_cmd;
715 struct fasync_struct *aen_queue;
716 struct mutex aen_queue_lock; /* lock for aen subscribers list */
717 struct cdev cdev;
719 struct Scsi_Host *host; /* mid layer interface structure handle */
720 struct pci_dev *pdev; /* PCI device structure handle */
723 u8 ioa_reset_attempts;
726 u8 current_log_level; /* default level for logging IOASC errors */
728 u8 num_hrrq; /* Number of interrupt vectors allocated */
729 u8 interrupt_mode; /* current interrupt mode legacy or msix */
730 dev_t dev; /* Major-Minor numbers for Char device */
733 struct pmcraid_isr_param hrrq_vector[PMCRAID_NUM_MSIX_VECTORS];
736 atomic_t last_message_id;
739 struct pmcraid_config_table *cfg_table;
740 dma_addr_t cfg_table_bus_addr;
743 struct kmem_cache *cmd_cachep; /* cache for cmd blocks */
744 struct dma_pool *control_pool; /* pool for control blocks */
745 char cmd_pool_name[64]; /* name of cmd cache */
746 char ctl_pool_name[64]; /* name of control cache */
748 struct pmcraid_cmd *cmd_list[PMCRAID_MAX_CMD];
750 struct list_head free_cmd_pool;
751 struct list_head pending_cmd_pool;
752 spinlock_t free_pool_lock; /* free pool lock */
753 spinlock_t pending_pool_lock; /* pending pool lock */
756 struct tasklet_struct isr_tasklet[PMCRAID_NUM_MSIX_VECTORS];
759 struct work_struct worker_q;
762 atomic_t outstanding_cmds;
765 atomic_t expose_resources;
769 u32 ioa_state:4; /* For IOA Reset sequence FSM */
779 u32 ioa_reset_in_progress:1; /* true if IOA reset is in progress */
780 u32 ioa_hard_reset:1; /* TRUE if Hard Reset is needed */
781 u32 ioa_unit_check:1; /* Indicates Unit Check condition */
782 u32 ioa_bringdown:1; /* whether IOA needs to be brought down */
783 u32 force_ioa_reset:1; /* force adapter reset ? */
784 u32 reinit_cfg_table:1; /* reinit config table due to lost CCN */
785 u32 ioa_shutdown_type:2;/* shutdown type used during reset */
789 u32 timestamp_error:1; /* indicate set timestamp for out of sync */