Home
last modified time | relevance | path

Searched refs:sas_ha (Results 1 – 23 of 23) sorted by relevance

/drivers/scsi/libsas/
Dsas_init.c93 int sas_register_ha(struct sas_ha_struct *sas_ha) in sas_register_ha() argument
98 mutex_init(&sas_ha->disco_mutex); in sas_register_ha()
99 spin_lock_init(&sas_ha->phy_port_lock); in sas_register_ha()
100 sas_hash_addr(sas_ha->hashed_sas_addr, sas_ha->sas_addr); in sas_register_ha()
102 set_bit(SAS_HA_REGISTERED, &sas_ha->state); in sas_register_ha()
103 spin_lock_init(&sas_ha->lock); in sas_register_ha()
104 mutex_init(&sas_ha->drain_mutex); in sas_register_ha()
105 init_waitqueue_head(&sas_ha->eh_wait_q); in sas_register_ha()
106 INIT_LIST_HEAD(&sas_ha->defer_q); in sas_register_ha()
107 INIT_LIST_HEAD(&sas_ha->eh_dev_q); in sas_register_ha()
[all …]
Dsas_host_smp.c19 static void sas_host_smp_discover(struct sas_ha_struct *sas_ha, u8 *resp_data, in sas_host_smp_discover() argument
25 if (phy_id >= sas_ha->num_phys) { in sas_host_smp_discover()
31 phy = sas_ha->sas_phy[phy_id]->phy; in sas_host_smp_discover()
34 memcpy(resp_data + 16, sas_ha->sas_addr, SAS_ADDR_SIZE); in sas_host_smp_discover()
35 memcpy(resp_data + 24, sas_ha->sas_phy[phy_id]->attached_sas_addr, in sas_host_smp_discover()
42 if (!sas_ha->sas_phy[phy_id]->port || in sas_host_smp_discover()
43 !sas_ha->sas_phy[phy_id]->port->port_dev) in sas_host_smp_discover()
46 rphy = sas_ha->sas_phy[phy_id]->port->port_dev->rphy; in sas_host_smp_discover()
113 static int sas_host_smp_write_gpio(struct sas_ha_struct *sas_ha, u8 *resp_data, in sas_host_smp_write_gpio() argument
117 struct sas_internal *i = to_sas_internal(sas_ha->shost->transportt); in sas_host_smp_write_gpio()
[all …]
Dsas_port.c17 struct sas_ha_struct *sas_ha = phy->ha; in phy_is_wideport_member() local
20 SAS_ADDR_SIZE) != 0 || (sas_ha->strict_wide_ports && in phy_is_wideport_member()
30 struct sas_ha_struct *sas_ha = phy->ha; in sas_resume_port() local
31 struct sas_internal *si = to_sas_internal(sas_ha->shost->transportt); in sas_resume_port()
107 struct sas_ha_struct *sas_ha = phy->ha; in sas_form_port() local
111 to_sas_internal(sas_ha->shost->transportt); in sas_form_port()
122 wake_up(&sas_ha->eh_wait_q); in sas_form_port()
133 spin_lock_irqsave(&sas_ha->phy_port_lock, flags); in sas_form_port()
134 for (i = 0; i < sas_ha->num_phys; i++) { in sas_form_port()
135 port = sas_ha->sas_port[i]; in sas_form_port()
[all …]
Dsas_phy.c38 struct sas_ha_struct *sas_ha = phy->ha; in sas_phye_oob_error() local
41 to_sas_internal(sas_ha->shost->transportt); in sas_phye_oob_error()
67 struct sas_ha_struct *sas_ha = phy->ha; in sas_phye_spinup_hold() local
69 to_sas_internal(sas_ha->shost->transportt); in sas_phye_spinup_hold()
96 struct sas_ha_struct *sas_ha = phy->ha; in sas_phye_shutdown() local
98 to_sas_internal(sas_ha->shost->transportt); in sas_phye_shutdown()
116 int sas_register_phys(struct sas_ha_struct *sas_ha) in sas_register_phys() argument
121 for (i = 0; i < sas_ha->num_phys; i++) { in sas_register_phys()
122 struct asd_sas_phy *phy = sas_ha->sas_phy[i]; in sas_register_phys()
129 phy->ha = sas_ha; in sas_register_phys()
[all …]
Dsas_ata.c79 struct sas_ha_struct *sas_ha = dev->port->ha; in sas_ata_task_done() local
86 if (test_bit(SAS_HA_FROZEN, &sas_ha->state)) in sas_ata_task_done()
164 struct sas_ha_struct *sas_ha = dev->port->ha; in sas_ata_qc_issue() local
165 struct Scsi_Host *host = sas_ha->shost; in sas_ata_qc_issue()
828 struct sas_ha_struct *sas_ha = SHOST_TO_SAS_HA(shost); in sas_ata_strategy_handler() local
840 sas_disable_revalidation(sas_ha); in sas_ata_strategy_handler()
842 spin_lock_irq(&sas_ha->phy_port_lock); in sas_ata_strategy_handler()
843 for (i = 0; i < sas_ha->num_phys; i++) { in sas_ata_strategy_handler()
844 struct asd_sas_port *port = sas_ha->sas_port[i]; in sas_ata_strategy_handler()
862 spin_unlock_irq(&sas_ha->phy_port_lock); in sas_ata_strategy_handler()
[all …]
Dsas_discover.c172 struct sas_ha_struct *sas_ha = dev->port->ha; in sas_notify_lldd_dev_found() local
173 struct Scsi_Host *shost = sas_ha->shost; in sas_notify_lldd_dev_found()
182 dev_name(sas_ha->dev), in sas_notify_lldd_dev_found()
194 struct sas_ha_struct *sas_ha = dev->port->ha; in sas_notify_lldd_dev_gone() local
195 struct Scsi_Host *shost = sas_ha->shost; in sas_notify_lldd_dev_gone()
375 struct sas_ha_struct *sas_ha = dev->port->ha; in sas_abort_device_scsi_cmds() local
376 struct Scsi_Host *shost = sas_ha->shost; in sas_abort_device_scsi_cmds()
Dsas_internal.h44 int sas_register_phys(struct sas_ha_struct *sas_ha);
53 int sas_register_ports(struct sas_ha_struct *sas_ha);
54 void sas_unregister_ports(struct sas_ha_struct *sas_ha);
Dsas_scsi_host.c205 struct sas_ha_struct *sas_ha = SHOST_TO_SAS_HA(cmd->device->host); in sas_eh_finish_cmd() local
219 list_move_tail(&cmd->eh_entry, &sas_ha->eh_ata_q); in sas_eh_finish_cmd()
227 scsi_eh_finish_cmd(cmd, &sas_ha->eh_done_q); in sas_eh_finish_cmd()
/drivers/scsi/isci/
Dinit.c137 struct sas_ha_struct *sas_ha = SHOST_TO_SAS_HA(shost); in isci_show_id() local
138 struct isci_host *ihost = container_of(sas_ha, typeof(*ihost), sas_ha); in isci_show_id()
236 struct sas_ha_struct *sas_ha = &(isci_host->sas_ha); in isci_register_sas_ha() local
252 sas_ha->sas_ha_name = DRV_NAME; in isci_register_sas_ha()
253 sas_ha->sas_addr = &isci_host->phys[0].sas_addr[0]; in isci_register_sas_ha()
260 sas_ha->sas_phy = sas_phys; in isci_register_sas_ha()
261 sas_ha->sas_port = sas_ports; in isci_register_sas_ha()
262 sas_ha->num_phys = SCI_MAX_PHYS; in isci_register_sas_ha()
264 sas_ha->strict_wide_ports = 1; in isci_register_sas_ha()
266 return sas_register_ha(sas_ha); in isci_register_sas_ha()
[all …]
Dhost.h198 struct sas_ha_struct sas_ha; member
309 return ihost->sas_ha.shost; in to_shost()
Dhost.c2789 int isci_gpio_write(struct sas_ha_struct *sas_ha, u8 reg_type, u8 reg_index, in isci_gpio_write() argument
2792 struct isci_host *ihost = sas_ha->lldd_ha; in isci_gpio_write()
Dphy.c1404 iphy->sas_phy.ha = &ihost->sas_ha; in isci_phy_init()
/drivers/scsi/aic94xx/
Daic94xx_init.c669 asd_ha->sas_ha.sas_ha_name = (char *) asd_ha->name; in asd_register_sas_ha()
670 asd_ha->sas_ha.sas_addr = &asd_ha->hw_prof.sas_addr[0]; in asd_register_sas_ha()
677 asd_ha->sas_ha.sas_phy = sas_phys; in asd_register_sas_ha()
678 asd_ha->sas_ha.sas_port= sas_ports; in asd_register_sas_ha()
679 asd_ha->sas_ha.num_phys= ASD_MAX_PHYS; in asd_register_sas_ha()
681 return sas_register_ha(&asd_ha->sas_ha); in asd_register_sas_ha()
688 err = sas_unregister_ha(&asd_ha->sas_ha); in asd_unregister_sas_ha()
690 sas_remove_host(asd_ha->sas_ha.shost); in asd_unregister_sas_ha()
691 scsi_host_put(asd_ha->sas_ha.shost); in asd_unregister_sas_ha()
693 kfree(asd_ha->sas_ha.sas_phy); in asd_unregister_sas_ha()
[all …]
Daic94xx_scb.c245 struct sas_ha_struct *sas_ha = &asd_ha->sas_ha; in asd_link_reset_err_tasklet() local
246 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in asd_link_reset_err_tasklet()
298 struct sas_ha_struct *sas_ha = &ascb->ha->sas_ha; in asd_primitive_rcvd_tasklet() local
299 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in asd_primitive_rcvd_tasklet()
403 struct sas_ha_struct *sas_ha = &asd_ha->sas_ha; in escb_tasklet_complete() local
407 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in escb_tasklet_complete()
Daic94xx.h70 int asd_clear_nexus_ha(struct sas_ha_struct *sas_ha);
Daic94xx_tmf.c115 int asd_clear_nexus_ha(struct sas_ha_struct *sas_ha) in asd_clear_nexus_ha() argument
117 struct asd_ha_struct *asd_ha = sas_ha->lldd_ha; in asd_clear_nexus_ha()
Daic94xx_hwi.h184 struct sas_ha_struct sas_ha; member
Daic94xx_hwi.c31 return sas_request_addr(asd_ha->sas_ha.shost, in asd_get_user_sas_addr()
125 phy->sas_phy.ha = &asd_ha->sas_ha; in asd_init_phys()
/drivers/scsi/hisi_sas/
Dhisi_sas_main.c1233 struct sas_ha_struct *sas_ha = sas_phy->ha; in hisi_sas_control_phy() local
1234 struct hisi_hba *hisi_hba = sas_ha->lldd_ha; in hisi_sas_control_phy()
1745 struct sas_ha_struct *sas_ha = &hisi_hba->sha; in hisi_sas_debug_I_T_nexus_reset() local
1755 sas_ha->sas_phy[local_phy->number]; in hisi_sas_debug_I_T_nexus_reset()
1773 sas_ha->sas_phy[local_phy->number]; in hisi_sas_debug_I_T_nexus_reset()
1903 static int hisi_sas_clear_nexus_ha(struct sas_ha_struct *sas_ha) in hisi_sas_clear_nexus_ha() argument
1905 struct hisi_hba *hisi_hba = sas_ha->lldd_ha; in hisi_sas_clear_nexus_ha()
/drivers/scsi/mvsas/
Dmv_sas.c1069 struct sas_ha_struct *sas_ha = sas_phy->ha; in mvs_port_notify_formed() local
1078 while (sas_ha->sas_phy[i]) { in mvs_port_notify_formed()
1079 if (sas_ha->sas_phy[i] == sas_phy) in mvs_port_notify_formed()
1083 hi = i/((struct mvs_prv_info *)sas_ha->lldd_ha)->n_phy; in mvs_port_notify_formed()
1084 mvi = ((struct mvs_prv_info *)sas_ha->lldd_ha)->mvi[hi]; in mvs_port_notify_formed()
/drivers/scsi/pm8001/
Dpm8001_sas.c1162 struct sas_ha_struct *sas_ha = sas_phy->ha; in pm8001_port_formed() local
1163 struct pm8001_hba_info *pm8001_ha = sas_ha->lldd_ha; in pm8001_port_formed()
Dpm80xx_hwi.c3425 struct sas_ha_struct *sas_ha = pm8001_ha->sas; in mpi_hw_event() local
3428 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in mpi_hw_event()
Dpm8001_hwi.c3571 struct sas_ha_struct *sas_ha = pm8001_ha->sas; in mpi_hw_event() local
3573 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in mpi_hw_event()