Lines Matching defs:isci_host
149 struct isci_host { struct
150 struct sci_base_state_machine sm;
152 struct sci_timer timer;
154 struct sci_user_parameters user_parameters;
156 struct sci_oem_params oem_parameters;
157 struct sci_port_configuration_agent port_agent;
158 struct isci_remote_device *device_table[SCI_MAX_REMOTE_DEVICES];
159 struct sci_remote_node_table available_remote_nodes;
160 struct sci_power_control power_control;
161 u8 io_request_sequence[SCI_MAX_IO_REQUESTS];
162 struct scu_task_context *task_context_table;
163 dma_addr_t tc_dma;
164 union scu_remote_node_context *remote_node_context_table;
165 dma_addr_t rnc_dma;
166 u32 *completion_queue;
167 dma_addr_t cq_dma;
168 u32 completion_queue_get;
169 u32 logical_port_entries;
170 u32 remote_node_entries;
171 u32 task_context_entries;
172 void *ufi_buf;
173 dma_addr_t ufi_dma;
174 struct sci_unsolicited_frame_control uf_control;
177 struct sci_timer phy_timer;
179 bool phy_startup_timer_pending;
180 u32 next_phy_to_start;
182 u8 invalid_phy_mask;
185 u16 interrupt_coalesce_number;
186 u32 interrupt_coalesce_timeout;
187 struct smu_registers __iomem *smu_registers;
188 struct scu_registers __iomem *scu_registers;
190 u16 tci_head;
191 u16 tci_tail;
192 u16 tci_pool[SCI_MAX_IO_REQUESTS];
194 int id; /* unique within a given pci device */
195 struct isci_phy phys[SCI_MAX_PHYS];
196 struct isci_port ports[SCI_MAX_PORTS + 1]; /* includes dummy port */
197 struct asd_sas_port sas_ports[SCI_MAX_PORTS];
198 struct sas_ha_struct sas_ha;
200 struct pci_dev *pdev;
204 unsigned long flags;
205 wait_queue_head_t eventq;
206 struct tasklet_struct completion_tasklet;
207 spinlock_t scic_lock;
208 struct isci_request *reqs[SCI_MAX_IO_REQUESTS];
209 struct isci_remote_device devices[SCI_MAX_REMOTE_DEVICES];