Lines Matching refs:phy_info

113 		struct mptsas_phyinfo *phy_info, struct sas_rphy *rphy);
121 struct mptsas_phyinfo *phy_info);
123 struct mptsas_phyinfo *phy_info);
389 if (port_info->phy_info[i].identify.handle == handle) { in mptsas_find_portinfo_by_handle()
419 if (port_info->phy_info[i].identify.sas_address == in mptsas_find_portinfo_by_sas_address()
454 struct mptsas_phyinfo *phy_info; in mptsas_port_delete() local
461 phy_info = port_info->phy_info; in mptsas_port_delete()
468 for (i = 0; i < port_info->num_phys; i++, phy_info++) { in mptsas_port_delete()
469 if(phy_info->port_details != port_details) in mptsas_port_delete()
471 memset(&phy_info->attached, 0, sizeof(struct mptsas_devinfo)); in mptsas_port_delete()
472 mptsas_set_rphy(ioc, phy_info, NULL); in mptsas_port_delete()
473 phy_info->port_details = NULL; in mptsas_port_delete()
479 mptsas_get_rphy(struct mptsas_phyinfo *phy_info) in mptsas_get_rphy() argument
481 if (phy_info->port_details) in mptsas_get_rphy()
482 return phy_info->port_details->rphy; in mptsas_get_rphy()
488 mptsas_set_rphy(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, struct sas_rphy *rphy) in mptsas_set_rphy() argument
490 if (phy_info->port_details) { in mptsas_set_rphy()
491 phy_info->port_details->rphy = rphy; in mptsas_set_rphy()
505 mptsas_get_port(struct mptsas_phyinfo *phy_info) in mptsas_get_port() argument
507 if (phy_info->port_details) in mptsas_get_port()
508 return phy_info->port_details->port; in mptsas_get_port()
514 mptsas_set_port(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, struct sas_port *port) in mptsas_set_port() argument
516 if (phy_info->port_details) in mptsas_set_port()
517 phy_info->port_details->port = port; in mptsas_set_port()
528 mptsas_get_starget(struct mptsas_phyinfo *phy_info) in mptsas_get_starget() argument
530 if (phy_info->port_details) in mptsas_get_starget()
531 return phy_info->port_details->starget; in mptsas_get_starget()
537 mptsas_set_starget(struct mptsas_phyinfo *phy_info, struct scsi_target * in mptsas_set_starget() argument
540 if (phy_info->port_details) in mptsas_set_starget()
541 phy_info->port_details->starget = starget; in mptsas_set_starget()
760 struct mptsas_phyinfo *phy_info = NULL; in mptsas_add_device_component_starget() local
765 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_add_device_component_starget()
767 if (!phy_info) in mptsas_add_device_component_starget()
774 phy_info->attached.handle_enclosure); in mptsas_add_device_component_starget()
776 mptsas_add_device_component(ioc, phy_info->attached.channel, in mptsas_add_device_component_starget()
777 phy_info->attached.id, phy_info->attached.sas_address, in mptsas_add_device_component_starget()
778 phy_info->attached.device_info, in mptsas_add_device_component_starget()
779 phy_info->attached.slot, enclosure_info.enclosure_logical_id); in mptsas_add_device_component_starget()
834 struct mptsas_phyinfo *phy_info, *phy_info_cmp; in mptsas_setup_wide_ports() local
840 phy_info = port_info->phy_info; in mptsas_setup_wide_ports()
841 for (i = 0 ; i < port_info->num_phys ; i++, phy_info++) { in mptsas_setup_wide_ports()
842 if (phy_info->attached.handle) in mptsas_setup_wide_ports()
844 port_details = phy_info->port_details; in mptsas_setup_wide_ports()
857 port_details->phy_bitmask &= ~ (1 << phy_info->phy_id); in mptsas_setup_wide_ports()
858 memset(&phy_info->attached, 0, sizeof(struct mptsas_devinfo)); in mptsas_setup_wide_ports()
859 if (phy_info->phy) { in mptsas_setup_wide_ports()
861 &phy_info->phy->dev, MYIOC_s_FMT in mptsas_setup_wide_ports()
863 phy_info->phy_id, phy_info->phy)); in mptsas_setup_wide_ports()
864 sas_port_delete_phy(port_details->port, phy_info->phy); in mptsas_setup_wide_ports()
866 phy_info->port_details = NULL; in mptsas_setup_wide_ports()
872 phy_info = port_info->phy_info; in mptsas_setup_wide_ports()
873 for (i = 0 ; i < port_info->num_phys ; i++, phy_info++) { in mptsas_setup_wide_ports()
874 sas_address = phy_info->attached.sas_address; in mptsas_setup_wide_ports()
879 port_details = phy_info->port_details; in mptsas_setup_wide_ports()
890 if (phy_info->phy_id < 64 ) in mptsas_setup_wide_ports()
892 (1 << phy_info->phy_id); in mptsas_setup_wide_ports()
893 phy_info->sas_port_add_phy=1; in mptsas_setup_wide_ports()
897 phy_info->port_details = port_details; in mptsas_setup_wide_ports()
902 phy_info_cmp = &port_info->phy_info[i + 1]; in mptsas_setup_wide_ports()
942 port_details = port_info->phy_info[i].port_details; in mptsas_setup_wide_ports()
1417 mptsas_add_end_device(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info) in mptsas_add_end_device() argument
1425 if (!phy_info) { in mptsas_add_end_device()
1432 fw_id = phy_info->attached.id; in mptsas_add_end_device()
1434 if (mptsas_get_rphy(phy_info)) { in mptsas_add_end_device()
1441 port = mptsas_get_port(phy_info); in mptsas_add_end_device()
1449 if (phy_info->attached.device_info & in mptsas_add_end_device()
1452 if (phy_info->attached.device_info & in mptsas_add_end_device()
1455 if (phy_info->attached.device_info & in mptsas_add_end_device()
1461 phy_info->attached.channel, phy_info->attached.id, in mptsas_add_end_device()
1462 phy_info->attached.phy_id, (unsigned long long) in mptsas_add_end_device()
1463 phy_info->attached.sas_address); in mptsas_add_end_device()
1465 mptsas_parse_device_info(&identify, &phy_info->attached); in mptsas_add_end_device()
1482 mptsas_set_rphy(ioc, phy_info, rphy); in mptsas_add_end_device()
1493 mptsas_del_end_device(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info) in mptsas_del_end_device() argument
1504 if (!phy_info) in mptsas_del_end_device()
1507 fw_id = phy_info->attached.id; in mptsas_del_end_device()
1508 sas_address = phy_info->attached.sas_address; in mptsas_del_end_device()
1510 if (!phy_info->port_details) { in mptsas_del_end_device()
1516 rphy = mptsas_get_rphy(phy_info); in mptsas_del_end_device()
1524 if (phy_info->attached.device_info & MPI_SAS_DEVICE_INFO_SSP_INITIATOR in mptsas_del_end_device()
1525 || phy_info->attached.device_info in mptsas_del_end_device()
1527 || phy_info->attached.device_info in mptsas_del_end_device()
1530 if (phy_info->attached.device_info & in mptsas_del_end_device()
1533 if (phy_info->attached.device_info & in mptsas_del_end_device()
1536 if (phy_info->attached.device_info & in mptsas_del_end_device()
1542 "sas_addr 0x%llx\n", ioc->name, ds, phy_info->attached.channel, in mptsas_del_end_device()
1543 phy_info->attached.id, phy_info->attached.phy_id, in mptsas_del_end_device()
1546 port = mptsas_get_port(phy_info); in mptsas_del_end_device()
1553 port_info = phy_info->portinfo; in mptsas_del_end_device()
1554 phy_info_parent = port_info->phy_info; in mptsas_del_end_device()
1572 mptsas_set_port(ioc, phy_info, NULL); in mptsas_del_end_device()
1573 mptsas_port_delete(ioc, phy_info->port_details); in mptsas_del_end_device()
1580 struct mptsas_phyinfo *phy_info; in mptsas_refreshing_device_handles() local
1584 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_refreshing_device_handles()
1586 if (!phy_info) in mptsas_refreshing_device_handles()
1588 port_info = phy_info->portinfo; in mptsas_refreshing_device_handles()
1593 if (port_info->phy_info[i].attached.sas_address != in mptsas_refreshing_device_handles()
1596 port_info->phy_info[i].attached.channel = sas_device->channel; in mptsas_refreshing_device_handles()
1597 port_info->phy_info[i].attached.id = sas_device->id; in mptsas_refreshing_device_handles()
1598 port_info->phy_info[i].attached.sas_address = in mptsas_refreshing_device_handles()
1600 port_info->phy_info[i].attached.handle = sas_device->handle; in mptsas_refreshing_device_handles()
1601 port_info->phy_info[i].attached.handle_parent = in mptsas_refreshing_device_handles()
1603 port_info->phy_info[i].attached.handle_enclosure = in mptsas_refreshing_device_handles()
1608 return phy_info; in mptsas_refreshing_device_handles()
1760 if (p->phy_info[i].attached.sas_address != in mptsas_target_alloc()
1763 id = p->phy_info[i].attached.id; in mptsas_target_alloc()
1764 channel = p->phy_info[i].attached.channel; in mptsas_target_alloc()
1765 mptsas_set_starget(&p->phy_info[i], starget); in mptsas_target_alloc()
1775 p->phy_info[i].attached.phys_disk_num = id; in mptsas_target_alloc()
1819 if (p->phy_info[i].attached.sas_address != in mptsas_target_destroy()
1826 p->phy_info[i].attached.channel, in mptsas_target_destroy()
1827 p->phy_info[i].attached.id, in mptsas_target_destroy()
1828 p->phy_info[i].attached.phy_id, (unsigned long long) in mptsas_target_destroy()
1829 p->phy_info[i].attached.sas_address); in mptsas_target_destroy()
1831 mptsas_set_starget(&p->phy_info[i], NULL); in mptsas_target_destroy()
1870 if (p->phy_info[i].attached.sas_address != in mptsas_slave_alloc()
1878 p->phy_info[i].attached.channel, in mptsas_slave_alloc()
1879 p->phy_info[i].attached.id)) in mptsas_slave_alloc()
2168 if (p->phy_info[i].attached.sas_address == in mptsas_get_enclosure_identifier()
2170 enclosure_handle = p->phy_info[i]. in mptsas_get_enclosure_identifier()
2200 if (p->phy_info[i].attached.sas_address == in mptsas_get_bay_identifier()
2202 rc = p->phy_info[i].attached.slot; in mptsas_get_bay_identifier()
2265 if (port_info && port_info->phy_info) in mptsas_smp_handler()
2267 port_info->phy_info[0].phy->identify.sas_address; in mptsas_smp_handler()
2408 port_info->phy_info = kcalloc(port_info->num_phys, in mptsas_sas_io_unit_pg0()
2410 if (!port_info->phy_info) { in mptsas_sas_io_unit_pg0()
2422 port_info->phy_info[i].phy_id = i; in mptsas_sas_io_unit_pg0()
2423 port_info->phy_info[i].port_id = in mptsas_sas_io_unit_pg0()
2425 port_info->phy_info[i].negotiated_link_rate = in mptsas_sas_io_unit_pg0()
2427 port_info->phy_info[i].portinfo = port_info; in mptsas_sas_io_unit_pg0()
2428 port_info->phy_info[i].handle = in mptsas_sas_io_unit_pg0()
2497 mptsas_sas_phy_pg0(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, in mptsas_sas_phy_pg0() argument
2548 phy_info->hw_link_rate = buffer->HwLinkRate; in mptsas_sas_phy_pg0()
2549 phy_info->programmed_link_rate = buffer->ProgrammedLinkRate; in mptsas_sas_phy_pg0()
2550 phy_info->identify.handle = le16_to_cpu(buffer->OwnerDevHandle); in mptsas_sas_phy_pg0()
2551 phy_info->attached.handle = le16_to_cpu(buffer->AttachedDevHandle); in mptsas_sas_phy_pg0()
2699 port_info->phy_info = kcalloc(port_info->num_phys, in mptsas_sas_expander_pg0()
2701 if (!port_info->phy_info) { in mptsas_sas_expander_pg0()
2708 port_info->phy_info[i].portinfo = port_info; in mptsas_sas_expander_pg0()
2709 port_info->phy_info[i].handle = in mptsas_sas_expander_pg0()
2711 port_info->phy_info[i].identify.sas_address = in mptsas_sas_expander_pg0()
2713 port_info->phy_info[i].identify.handle_parent = in mptsas_sas_expander_pg0()
2725 mptsas_sas_expander_pg1(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, in mptsas_sas_expander_pg1() argument
2782 phy_info->phy_id = buffer->PhyIdentifier; in mptsas_sas_expander_pg1()
2783 phy_info->port_id = buffer->PhysicalPort; in mptsas_sas_expander_pg1()
2784 phy_info->negotiated_link_rate = buffer->NegotiatedLinkRate; in mptsas_sas_expander_pg1()
2785 phy_info->programmed_link_rate = buffer->ProgrammedLinkRate; in mptsas_sas_expander_pg1()
2786 phy_info->hw_link_rate = buffer->HwLinkRate; in mptsas_sas_expander_pg1()
2787 phy_info->identify.handle = le16_to_cpu(buffer->OwnerDevHandle); in mptsas_sas_expander_pg1()
2788 phy_info->attached.handle = le16_to_cpu(buffer->AttachedDevHandle); in mptsas_sas_expander_pg1()
3038 struct mptsas_phyinfo *phy_info, int index, int local) in mptsas_probe_one_phy() argument
3051 if (!phy_info->phy) { in mptsas_probe_one_phy()
3058 phy = phy_info->phy; in mptsas_probe_one_phy()
3060 mptsas_parse_device_info(&phy->identify, &phy_info->identify); in mptsas_probe_one_phy()
3065 switch (phy_info->negotiated_link_rate) { in mptsas_probe_one_phy()
3091 switch (phy_info->hw_link_rate & MPI_SAS_PHY0_PRATE_MAX_RATE_MASK) { in mptsas_probe_one_phy()
3105 switch (phy_info->programmed_link_rate & in mptsas_probe_one_phy()
3120 switch (phy_info->hw_link_rate & MPI_SAS_PHY0_HWRATE_MIN_RATE_MASK) { in mptsas_probe_one_phy()
3134 switch (phy_info->programmed_link_rate & in mptsas_probe_one_phy()
3146 if (!phy_info->phy) { in mptsas_probe_one_phy()
3153 phy_info->phy = phy; in mptsas_probe_one_phy()
3156 if (!phy_info->attached.handle || in mptsas_probe_one_phy()
3157 !phy_info->port_details) in mptsas_probe_one_phy()
3160 port = mptsas_get_port(phy_info); in mptsas_probe_one_phy()
3161 ioc = phy_to_ioc(phy_info->phy); in mptsas_probe_one_phy()
3163 if (phy_info->sas_port_add_phy) { in mptsas_probe_one_phy()
3178 mptsas_set_port(ioc, phy_info, port); in mptsas_probe_one_phy()
3182 (unsigned long long)phy_info-> in mptsas_probe_one_phy()
3187 ioc->name, phy_info->phy_id)); in mptsas_probe_one_phy()
3188 sas_port_add_phy(port, phy_info->phy); in mptsas_probe_one_phy()
3189 phy_info->sas_port_add_phy = 0; in mptsas_probe_one_phy()
3190 devtprintk(ioc, dev_printk(KERN_DEBUG, &phy_info->phy->dev, in mptsas_probe_one_phy()
3192 phy_info->phy_id, phy_info->phy)); in mptsas_probe_one_phy()
3194 if (!mptsas_get_rphy(phy_info) && port && !port->rphy) { in mptsas_probe_one_phy()
3206 if (mptsas_is_end_device(&phy_info->attached) && in mptsas_probe_one_phy()
3207 phy_info->attached.handle_parent) { in mptsas_probe_one_phy()
3211 mptsas_parse_device_info(&identify, &phy_info->attached); in mptsas_probe_one_phy()
3219 if (port_info->phy_info[i].identify.sas_address == in mptsas_probe_one_phy()
3262 mptsas_set_rphy(ioc, phy_info, rphy); in mptsas_probe_one_phy()
3273 phy_info->attached.channel, in mptsas_probe_one_phy()
3274 phy_info->attached.id); in mptsas_probe_one_phy()
3307 port_info->phy_info[i].negotiated_link_rate = in mptsas_probe_hba_phys()
3308 hba->phy_info[i].negotiated_link_rate; in mptsas_probe_hba_phys()
3309 port_info->phy_info[i].handle = in mptsas_probe_hba_phys()
3310 hba->phy_info[i].handle; in mptsas_probe_hba_phys()
3311 port_info->phy_info[i].port_id = in mptsas_probe_hba_phys()
3312 hba->phy_info[i].port_id; in mptsas_probe_hba_phys()
3314 kfree(hba->phy_info); in mptsas_probe_hba_phys()
3323 mptsas_sas_phy_pg0(ioc, &port_info->phy_info[i], in mptsas_probe_hba_phys()
3326 port_info->phy_info[i].identify.handle = in mptsas_probe_hba_phys()
3327 port_info->phy_info[i].handle; in mptsas_probe_hba_phys()
3328 mptsas_sas_device_pg0(ioc, &port_info->phy_info[i].identify, in mptsas_probe_hba_phys()
3331 port_info->phy_info[i].identify.handle); in mptsas_probe_hba_phys()
3334 port_info->phy_info[i].identify.sas_address; in mptsas_probe_hba_phys()
3335 port_info->phy_info[i].identify.phy_id = in mptsas_probe_hba_phys()
3336 port_info->phy_info[i].phy_id = i; in mptsas_probe_hba_phys()
3337 if (port_info->phy_info[i].attached.handle) in mptsas_probe_hba_phys()
3339 &port_info->phy_info[i].attached, in mptsas_probe_hba_phys()
3342 port_info->phy_info[i].attached.handle); in mptsas_probe_hba_phys()
3349 &port_info->phy_info[i], ioc->sas_index, 1); in mptsas_probe_hba_phys()
3369 handle = port_info->phy_info[0].handle; in mptsas_expander_refresh()
3370 sas_address = port_info->phy_info[0].identify.sas_address; in mptsas_expander_refresh()
3372 mptsas_sas_expander_pg1(ioc, &port_info->phy_info[i], in mptsas_expander_refresh()
3377 &port_info->phy_info[i].identify, in mptsas_expander_refresh()
3380 port_info->phy_info[i].identify.handle); in mptsas_expander_refresh()
3381 port_info->phy_info[i].identify.phy_id = in mptsas_expander_refresh()
3382 port_info->phy_info[i].phy_id; in mptsas_expander_refresh()
3384 if (port_info->phy_info[i].attached.handle) { in mptsas_expander_refresh()
3386 &port_info->phy_info[i].attached, in mptsas_expander_refresh()
3389 port_info->phy_info[i].attached.handle); in mptsas_expander_refresh()
3390 port_info->phy_info[i].attached.phy_id = in mptsas_expander_refresh()
3391 port_info->phy_info[i].phy_id; in mptsas_expander_refresh()
3397 port_info->phy_info[0].identify.handle_parent); in mptsas_expander_refresh()
3404 if (parent->phy_info[i].attached.sas_address == sas_address) { in mptsas_expander_refresh()
3405 rphy = mptsas_get_rphy(&parent->phy_info[i]); in mptsas_expander_refresh()
3413 mptsas_probe_one_phy(parent_dev, &port_info->phy_info[i], in mptsas_expander_refresh()
3430 port_info->phy_info = kcalloc(port_info->num_phys, in mptsas_expander_event_add()
3432 if (!port_info->phy_info) in mptsas_expander_event_add()
3436 port_info->phy_info[i].portinfo = port_info; in mptsas_expander_event_add()
3437 port_info->phy_info[i].handle = in mptsas_expander_event_add()
3439 port_info->phy_info[i].identify.sas_address = in mptsas_expander_event_add()
3441 port_info->phy_info[i].identify.handle_parent = in mptsas_expander_event_add()
3466 struct mptsas_phyinfo *phy_info; in mptsas_delete_expander_siblings() local
3471 phy_info = expander->phy_info; in mptsas_delete_expander_siblings()
3472 for (i = 0; i < expander->num_phys; i++, phy_info++) { in mptsas_delete_expander_siblings()
3473 rphy = mptsas_get_rphy(phy_info); in mptsas_delete_expander_siblings()
3477 mptsas_del_end_device(ioc, phy_info); in mptsas_delete_expander_siblings()
3480 phy_info = expander->phy_info; in mptsas_delete_expander_siblings()
3481 for (i = 0; i < expander->num_phys; i++, phy_info++) { in mptsas_delete_expander_siblings()
3482 rphy = mptsas_get_rphy(phy_info); in mptsas_delete_expander_siblings()
3520 struct mptsas_phyinfo *phy_info; in mptsas_expander_delete() local
3532 port_info->phy_info[0].identify.handle); in mptsas_expander_delete()
3535 kfree(buffer.phy_info); in mptsas_expander_delete()
3546 port_info->phy_info[0].identify.sas_address; in mptsas_expander_delete()
3548 port_info->phy_info[0].identify.handle_parent); in mptsas_expander_delete()
3557 phy_info = parent->phy_info; in mptsas_expander_delete()
3559 for (i = 0; i < parent->num_phys; i++, phy_info++) { in mptsas_expander_delete()
3560 if (!phy_info->phy) in mptsas_expander_delete()
3562 if (phy_info->attached.sas_address != in mptsas_expander_delete()
3566 port = mptsas_get_port(phy_info); in mptsas_expander_delete()
3567 port_details = phy_info->port_details; in mptsas_expander_delete()
3569 dev_printk(KERN_DEBUG, &phy_info->phy->dev, in mptsas_expander_delete()
3571 phy_info->phy_id, phy_info->phy); in mptsas_expander_delete()
3572 sas_port_delete_phy(port, phy_info->phy); in mptsas_expander_delete()
3592 kfree(port_info->phy_info); in mptsas_expander_delete()
3625 port_info->phy_info[i].portinfo = port_info; in mptsas_send_expander_event()
3626 port_info->phy_info[i].handle = in mptsas_send_expander_event()
3628 port_info->phy_info[i].identify.sas_address = in mptsas_send_expander_event()
3630 port_info->phy_info[i].identify.handle_parent = in mptsas_send_expander_event()
3669 port_info->phy_info = buffer.phy_info; in mptsas_expander_add()
3671 port_info->phy_info[i].portinfo = port_info; in mptsas_expander_add()
3677 (unsigned long long)buffer.phy_info[0].identify.sas_address); in mptsas_expander_add()
3688 struct mptsas_phyinfo *phy_info = NULL; in mptsas_send_link_status_event() local
3703 phy_info = &port_info->phy_info[phy_num]; in mptsas_send_link_status_event()
3704 if (phy_info) in mptsas_send_link_status_event()
3705 phy_info->negotiated_link_rate = link_rate; in mptsas_send_link_status_event()
3726 } else if (phy_info && phy_info->phy) { in mptsas_send_link_status_event()
3728 phy_info->phy->negotiated_linkrate = in mptsas_send_link_status_event()
3732 phy_info->phy->negotiated_linkrate = in mptsas_send_link_status_event()
3735 phy_info->phy->negotiated_linkrate = in mptsas_send_link_status_event()
3738 mptsas_is_end_device(&phy_info->attached)) { in mptsas_send_link_status_event()
3742 id = phy_info->attached.id; in mptsas_send_link_status_event()
3743 channel = phy_info->attached.channel; in mptsas_send_link_status_event()
3746 ioc->name, phy_info->attached.id, in mptsas_send_link_status_event()
3747 phy_info->attached.channel)); in mptsas_send_link_status_event()
3783 struct mptsas_phyinfo *phy_info; in mptsas_not_responding_devices() local
3855 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_not_responding_devices()
3858 mptsas_del_end_device(ioc, phy_info); in mptsas_not_responding_devices()
3870 if (!(port_info->phy_info[0].identify.device_info & in mptsas_not_responding_devices()
3880 handle = buffer.phy_info[0].handle; in mptsas_not_responding_devices()
3881 if (buffer.phy_info[0].identify.sas_address == in mptsas_not_responding_devices()
3882 port_info->phy_info[0].identify.sas_address) { in mptsas_not_responding_devices()
3885 kfree(buffer.phy_info); in mptsas_not_responding_devices()
3913 handle = buffer.phy_info[0].handle; in mptsas_probe_expanders()
3915 buffer.phy_info[0].identify.sas_address); in mptsas_probe_expanders()
3920 port_info->phy_info[i].handle = handle; in mptsas_probe_expanders()
3921 port_info->phy_info[i].identify.handle_parent = in mptsas_probe_expanders()
3922 buffer.phy_info[0].identify.handle_parent; in mptsas_probe_expanders()
3925 kfree(buffer.phy_info); in mptsas_probe_expanders()
3937 port_info->phy_info = buffer.phy_info; in mptsas_probe_expanders()
3939 port_info->phy_info[i].portinfo = port_info; in mptsas_probe_expanders()
3945 (unsigned long long)buffer.phy_info[0].identify.sas_address); in mptsas_probe_expanders()
3955 struct mptsas_phyinfo *phy_info; in mptsas_probe_devices() local
3976 phy_info = mptsas_refreshing_device_handles(ioc, &sas_device); in mptsas_probe_devices()
3977 if (!phy_info) in mptsas_probe_devices()
3980 if (mptsas_get_rphy(phy_info)) in mptsas_probe_devices()
3983 mptsas_add_end_device(ioc, phy_info); in mptsas_probe_devices()
4117 struct mptsas_phyinfo *phy_info = NULL; in mptsas_find_phyinfo_by_sas_address() local
4124 &port_info->phy_info[i].attached)) in mptsas_find_phyinfo_by_sas_address()
4126 if (port_info->phy_info[i].attached.sas_address in mptsas_find_phyinfo_by_sas_address()
4129 phy_info = &port_info->phy_info[i]; in mptsas_find_phyinfo_by_sas_address()
4134 return phy_info; in mptsas_find_phyinfo_by_sas_address()
4149 struct mptsas_phyinfo *phy_info = NULL; in mptsas_find_phyinfo_by_phys_disk_num() local
4156 phy_info = NULL; in mptsas_find_phyinfo_by_phys_disk_num()
4176 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_find_phyinfo_by_phys_disk_num()
4184 if (phy_info) in mptsas_find_phyinfo_by_phys_disk_num()
4185 return phy_info; in mptsas_find_phyinfo_by_phys_disk_num()
4193 for (i = 0; i < port_info->num_phys && !phy_info; i++) { in mptsas_find_phyinfo_by_phys_disk_num()
4195 &port_info->phy_info[i].attached)) in mptsas_find_phyinfo_by_phys_disk_num()
4197 if (port_info->phy_info[i].attached.phys_disk_num == ~0) in mptsas_find_phyinfo_by_phys_disk_num()
4199 if ((port_info->phy_info[i].attached.phys_disk_num == in mptsas_find_phyinfo_by_phys_disk_num()
4201 (port_info->phy_info[i].attached.id == id) && in mptsas_find_phyinfo_by_phys_disk_num()
4202 (port_info->phy_info[i].attached.channel == in mptsas_find_phyinfo_by_phys_disk_num()
4204 phy_info = &port_info->phy_info[i]; in mptsas_find_phyinfo_by_phys_disk_num()
4208 return phy_info; in mptsas_find_phyinfo_by_phys_disk_num()
4236 struct mptsas_phyinfo *phy_info; in mptsas_adding_inactive_raid_components() local
4293 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_adding_inactive_raid_components()
4295 mptsas_add_end_device(ioc, phy_info); in mptsas_adding_inactive_raid_components()
4310 struct mptsas_phyinfo *phy_info; in mptsas_hotplug_work() local
4354 phy_info = mptsas_refreshing_device_handles(ioc, &sas_device); in mptsas_hotplug_work()
4356 if (!phy_info && (sas_device.device_info & in mptsas_hotplug_work()
4375 phy_info = mptsas_refreshing_device_handles in mptsas_hotplug_work()
4379 if (!phy_info) { in mptsas_hotplug_work()
4386 if (mptsas_get_rphy(phy_info)) in mptsas_hotplug_work()
4389 mptsas_add_end_device(ioc, phy_info); in mptsas_hotplug_work()
4393 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_hotplug_work()
4395 mptsas_del_end_device(ioc, phy_info); in mptsas_hotplug_work()
4402 phy_info = mptsas_find_phyinfo_by_phys_disk_num( in mptsas_hotplug_work()
4406 mptsas_del_end_device(ioc, phy_info); in mptsas_hotplug_work()
4428 phy_info = mptsas_find_phyinfo_by_sas_address( in mptsas_hotplug_work()
4431 if (!phy_info) { in mptsas_hotplug_work()
4438 starget = mptsas_get_starget(phy_info); in mptsas_hotplug_work()
4464 phy_info->attached.phys_disk_num = hot_plug_info->phys_disk_num; in mptsas_hotplug_work()
4488 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_hotplug_work()
4490 if (!phy_info) { in mptsas_hotplug_work()
4497 starget = mptsas_get_starget(phy_info); in mptsas_hotplug_work()
4530 phy_info->attached.phys_disk_num = ~0; in mptsas_hotplug_work()
5351 mptsas_port_delete(ioc, p->phy_info[i].port_details); in mptsas_remove()
5353 kfree(p->phy_info); in mptsas_remove()