| /linux-6.15/drivers/scsi/libsas/ |
| H A D | sas_host_smp.c | 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() 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() 144 if (phy_id >= sas_ha->num_phys) { in sas_report_phy_sata() 151 if (!sas_ha->sas_phy[phy_id]->port) in sas_report_phy_sata() 185 to_sas_internal(sas_ha->shost->transportt); in sas_phy_control() 189 if (phy_id >= sas_ha->num_phys) { in sas_phy_control() 194 asd_phy = sas_ha->sas_phy[phy_id]; in sas_phy_control() [all …]
|
| H A D | sas_init.c | 100 sas_hash_addr(sas_ha->hashed_sas_addr, sas_ha->sas_addr); in sas_register_ha() 103 spin_lock_init(&sas_ha->lock); in sas_register_ha() 126 if (!sas_ha->event_q) in sas_register_ha() 131 if (!sas_ha->disco_q) in sas_register_ha() 142 sas_unregister_ports(sas_ha); in sas_register_ha() 155 spin_lock_irq(&sas_ha->lock); in sas_disable_events() 157 spin_unlock_irq(&sas_ha->lock); in sas_disable_events() 158 __sas_drain_work(sas_ha); in sas_disable_events() 164 sas_disable_events(sas_ha); in sas_unregister_ha() 165 sas_unregister_ports(sas_ha); in sas_unregister_ha() [all …]
|
| H A D | sas_port.c | 17 struct sas_ha_struct *sas_ha = phy->ha; in phy_is_wideport_member() local 122 wake_up(&sas_ha->eh_wait_q); in sas_form_port() 135 port = sas_ha->sas_port[i]; in sas_form_port() 148 if (i == sas_ha->num_phys) { in sas_form_port() 150 port = sas_ha->sas_port[i]; in sas_form_port() 162 if (i >= sas_ha->num_phys) { in sas_form_port() 198 flush_workqueue(sas_ha->disco_q); in sas_form_port() 266 flush_workqueue(sas_ha->disco_q); in sas_deform_port() 336 port->ha = sas_ha; in sas_init_port() 349 sas_init_port(port, sas_ha, i); in sas_register_ports() [all …]
|
| H A D | sas_phy.c | 38 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 …]
|
| H A D | sas_discover.c | 172 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()
|
| H A D | sas_ata.c | 79 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() 825 struct sas_ha_struct *sas_ha = SHOST_TO_SAS_HA(shost); in sas_ata_strategy_handler() local 837 sas_disable_revalidation(sas_ha); in sas_ata_strategy_handler() 839 spin_lock_irq(&sas_ha->phy_port_lock); in sas_ata_strategy_handler() 840 for (i = 0; i < sas_ha->num_phys; i++) { in sas_ata_strategy_handler() 841 struct asd_sas_port *port = sas_ha->sas_port[i]; in sas_ata_strategy_handler() 859 spin_unlock_irq(&sas_ha->phy_port_lock); in sas_ata_strategy_handler() [all …]
|
| H A D | sas_internal.h | 56 int sas_register_phys(struct sas_ha_struct *sas_ha); 65 int sas_register_ports(struct sas_ha_struct *sas_ha); 66 void sas_unregister_ports(struct sas_ha_struct *sas_ha);
|
| H A D | sas_scsi_host.c | 205 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()
|
| /linux-6.15/drivers/scsi/isci/ |
| H A D | init.c | 134 struct isci_host *ihost = container_of(sas_ha, typeof(*ihost), sas_ha); in isci_show_id() 219 struct sas_ha_struct *sas_ha = &(isci_host->sas_ha); in isci_register_sas_ha() local 235 sas_ha->sas_ha_name = DRV_NAME; in isci_register_sas_ha() 243 sas_ha->sas_phy = sas_phys; in isci_register_sas_ha() 244 sas_ha->sas_port = sas_ports; in isci_register_sas_ha() 245 sas_ha->num_phys = SCI_MAX_PHYS; in isci_register_sas_ha() 247 sas_ha->strict_wide_ports = 1; in isci_register_sas_ha() 249 return sas_register_ha(sas_ha); in isci_register_sas_ha() 495 ihost->sas_ha.lldd_ha = ihost; in isci_host_alloc() 558 ihost->sas_ha.shost = shost; in isci_host_alloc() [all …]
|
| H A D | host.h | 198 struct sas_ha_struct sas_ha; member 309 return ihost->sas_ha.shost; in to_shost()
|
| H A D | host.c | 2789 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()
|
| H A D | phy.c | 1404 iphy->sas_phy.ha = &ihost->sas_ha; in isci_phy_init()
|
| /linux-6.15/Documentation/scsi/ |
| H A D | libsas.rst | 154 struct sas_ha_struct sas_ha; 244 my_ha->sas_ha.sas_addr = &my_ha->sas_addr[0]; 251 my_ha->sas_ha.sas_phy = sas_phys; 252 my_ha->sas_ha.sas_port = sas_ports; 253 my_ha->sas_ha.num_phys = MAX_PHYS; 255 my_ha->sas_ha.lldd_port_formed = my_port_formed; 257 my_ha->sas_ha.lldd_dev_found = my_dev_found; 258 my_ha->sas_ha.lldd_dev_gone = my_dev_gone; 265 my_ha->sas_ha.lldd_I_T_nexus_reset= NULL; (2) 266 my_ha->sas_ha.lldd_lu_reset = my_lu_reset; [all …]
|
| /linux-6.15/drivers/scsi/aic94xx/ |
| H A D | aic94xx_init.c | 663 asd_ha->sas_ha.sas_phy = sas_phys; in asd_register_sas_ha() 664 asd_ha->sas_ha.sas_port= sas_ports; in asd_register_sas_ha() 665 asd_ha->sas_ha.num_phys= ASD_MAX_PHYS; in asd_register_sas_ha() 667 return sas_register_ha(&asd_ha->sas_ha); in asd_register_sas_ha() 674 err = sas_unregister_ha(&asd_ha->sas_ha); in asd_unregister_sas_ha() 676 sas_remove_host(asd_ha->sas_ha.shost); in asd_unregister_sas_ha() 677 scsi_host_put(asd_ha->sas_ha.shost); in asd_unregister_sas_ha() 679 kfree(asd_ha->sas_ha.sas_phy); in asd_unregister_sas_ha() 680 kfree(asd_ha->sas_ha.sas_port); in asd_unregister_sas_ha() 720 asd_ha->sas_ha.lldd_ha = asd_ha; in asd_pci_probe() [all …]
|
| H A D | aic94xx_scb.c | 245 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()
|
| H A D | aic94xx.h | 70 int asd_clear_nexus_ha(struct sas_ha_struct *sas_ha);
|
| H A D | aic94xx_tmf.c | 115 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()
|
| H A D | aic94xx_hwi.h | 184 struct sas_ha_struct sas_ha; member
|
| H A D | aic94xx_hwi.c | 31 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()
|
| /linux-6.15/include/scsi/ |
| H A D | libsas.h | 677 extern void sas_prep_resume_ha(struct sas_ha_struct *sas_ha); 678 extern void sas_resume_ha(struct sas_ha_struct *sas_ha); 679 extern void sas_resume_ha_no_sync(struct sas_ha_struct *sas_ha); 680 extern void sas_suspend_ha(struct sas_ha_struct *sas_ha);
|
| /linux-6.15/drivers/scsi/hisi_sas/ |
| H A D | hisi_sas_main.c | 1277 struct sas_ha_struct *sas_ha = sas_phy->ha; in hisi_sas_control_phy() local 1278 struct hisi_hba *hisi_hba = sas_ha->lldd_ha; in hisi_sas_control_phy() 1812 struct sas_ha_struct *sas_ha = &hisi_hba->sha; in hisi_sas_debug_I_T_nexus_reset() local 1822 sas_ha->sas_phy[local_phy->number]; in hisi_sas_debug_I_T_nexus_reset() 1840 sas_ha->sas_phy[local_phy->number]; in hisi_sas_debug_I_T_nexus_reset() 1970 static int hisi_sas_clear_nexus_ha(struct sas_ha_struct *sas_ha) in hisi_sas_clear_nexus_ha() argument 1972 struct hisi_hba *hisi_hba = sas_ha->lldd_ha; in hisi_sas_clear_nexus_ha()
|
| /linux-6.15/drivers/scsi/mvsas/ |
| H A D | mv_sas.c | 1059 struct sas_ha_struct *sas_ha = sas_phy->ha; in mvs_port_notify_formed() local 1068 while (sas_ha->sas_phy[i]) { in mvs_port_notify_formed() 1069 if (sas_ha->sas_phy[i] == sas_phy) in mvs_port_notify_formed() 1073 hi = i/((struct mvs_prv_info *)sas_ha->lldd_ha)->n_phy; in mvs_port_notify_formed() 1074 mvi = ((struct mvs_prv_info *)sas_ha->lldd_ha)->mvi[hi]; in mvs_port_notify_formed()
|
| /linux-6.15/drivers/scsi/pm8001/ |
| H A D | pm8001_sas.c | 1212 struct sas_ha_struct *sas_ha = sas_phy->ha; in pm8001_port_formed() local 1213 struct pm8001_hba_info *pm8001_ha = sas_ha->lldd_ha; in pm8001_port_formed()
|
| H A D | pm8001_hwi.c | 3516 struct sas_ha_struct *sas_ha = pm8001_ha->sas; in mpi_hw_event() local 3518 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in mpi_hw_event()
|
| H A D | pm80xx_hwi.c | 3417 struct sas_ha_struct *sas_ha = pm8001_ha->sas; in mpi_hw_event() local 3420 struct asd_sas_phy *sas_phy = sas_ha->sas_phy[phy_id]; in mpi_hw_event()
|