Lines Matching defs:hisi_sas_hw

216 struct hisi_sas_hw {  struct
217 int (*hw_init)(struct hisi_hba *hisi_hba);
218 void (*setup_itct)(struct hisi_hba *hisi_hba,
220 int (*slot_index_alloc)(struct hisi_hba *hisi_hba, int *slot_idx,
222 struct hisi_sas_device *(*alloc_dev)(struct domain_device *device);
223 void (*sl_notify)(struct hisi_hba *hisi_hba, int phy_no);
224 int (*get_free_slot)(struct hisi_hba *hisi_hba, struct hisi_sas_dq *dq);
225 void (*start_delivery)(struct hisi_sas_dq *dq);
226 void (*prep_ssp)(struct hisi_hba *hisi_hba,
228 void (*prep_smp)(struct hisi_hba *hisi_hba,
230 void (*prep_stp)(struct hisi_hba *hisi_hba,
232 void (*prep_abort)(struct hisi_hba *hisi_hba,
235 int (*slot_complete)(struct hisi_hba *hisi_hba,
237 void (*phys_init)(struct hisi_hba *hisi_hba);
238 void (*phy_start)(struct hisi_hba *hisi_hba, int phy_no);
239 void (*phy_disable)(struct hisi_hba *hisi_hba, int phy_no);
240 void (*phy_hard_reset)(struct hisi_hba *hisi_hba, int phy_no);
241 void (*get_events)(struct hisi_hba *hisi_hba, int phy_no);
242 void (*phy_set_linkrate)(struct hisi_hba *hisi_hba, int phy_no,
244 enum sas_linkrate (*phy_get_max_linkrate)(void);
245 void (*clear_itct)(struct hisi_hba *hisi_hba,
247 void (*free_device)(struct hisi_sas_device *sas_dev);
248 int (*get_wideport_bitmap)(struct hisi_hba *hisi_hba, int port_id);
249 void (*dereg_device)(struct hisi_hba *hisi_hba,
251 int (*soft_reset)(struct hisi_hba *hisi_hba);
252 u32 (*get_phys_state)(struct hisi_hba *hisi_hba);
253 int (*write_gpio)(struct hisi_hba *hisi_hba, u8 reg_type,
255 void (*wait_cmds_complete_timeout)(struct hisi_hba *hisi_hba,
257 int max_command_entries;
258 int complete_hdr_size;
259 struct scsi_host_template *sht;