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);
414 if (port_info->phy_info[i].identify.handle == handle) { in mptsas_find_portinfo_by_handle()
446 if (port_info->phy_info[i].identify.sas_address == in mptsas_find_portinfo_by_sas_address()
481 struct mptsas_phyinfo *phy_info; in mptsas_port_delete() local
488 phy_info = port_info->phy_info; in mptsas_port_delete()
495 for (i = 0; i < port_info->num_phys; i++, phy_info++) { in mptsas_port_delete()
496 if(phy_info->port_details != port_details) in mptsas_port_delete()
498 memset(&phy_info->attached, 0, sizeof(struct mptsas_devinfo)); in mptsas_port_delete()
499 mptsas_set_rphy(ioc, phy_info, NULL); in mptsas_port_delete()
500 phy_info->port_details = NULL; in mptsas_port_delete()
506 mptsas_get_rphy(struct mptsas_phyinfo *phy_info) in mptsas_get_rphy() argument
508 if (phy_info->port_details) in mptsas_get_rphy()
509 return phy_info->port_details->rphy; in mptsas_get_rphy()
515 mptsas_set_rphy(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, struct sas_rphy *rphy) in mptsas_set_rphy() argument
517 if (phy_info->port_details) { in mptsas_set_rphy()
518 phy_info->port_details->rphy = rphy; in mptsas_set_rphy()
532 mptsas_get_port(struct mptsas_phyinfo *phy_info) in mptsas_get_port() argument
534 if (phy_info->port_details) in mptsas_get_port()
535 return phy_info->port_details->port; in mptsas_get_port()
541 mptsas_set_port(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, struct sas_port *port) in mptsas_set_port() argument
543 if (phy_info->port_details) in mptsas_set_port()
544 phy_info->port_details->port = port; in mptsas_set_port()
555 mptsas_get_starget(struct mptsas_phyinfo *phy_info) in mptsas_get_starget() argument
557 if (phy_info->port_details) in mptsas_get_starget()
558 return phy_info->port_details->starget; in mptsas_get_starget()
564 mptsas_set_starget(struct mptsas_phyinfo *phy_info, struct scsi_target * in mptsas_set_starget() argument
567 if (phy_info->port_details) in mptsas_set_starget()
568 phy_info->port_details->starget = starget; in mptsas_set_starget()
787 struct mptsas_phyinfo *phy_info = NULL; in mptsas_add_device_component_starget() local
791 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_add_device_component_starget()
793 if (!phy_info) in mptsas_add_device_component_starget()
800 phy_info->attached.handle_enclosure); in mptsas_add_device_component_starget()
802 mptsas_add_device_component(ioc, phy_info->attached.channel, in mptsas_add_device_component_starget()
803 phy_info->attached.id, phy_info->attached.sas_address, in mptsas_add_device_component_starget()
804 phy_info->attached.device_info, in mptsas_add_device_component_starget()
805 phy_info->attached.slot, enclosure_info.enclosure_logical_id); in mptsas_add_device_component_starget()
860 struct mptsas_phyinfo *phy_info, *phy_info_cmp; in mptsas_setup_wide_ports() local
866 phy_info = port_info->phy_info; in mptsas_setup_wide_ports()
867 for (i = 0 ; i < port_info->num_phys ; i++, phy_info++) { in mptsas_setup_wide_ports()
868 if (phy_info->attached.handle) in mptsas_setup_wide_ports()
870 port_details = phy_info->port_details; in mptsas_setup_wide_ports()
883 port_details->phy_bitmask &= ~ (1 << phy_info->phy_id); in mptsas_setup_wide_ports()
884 memset(&phy_info->attached, 0, sizeof(struct mptsas_devinfo)); in mptsas_setup_wide_ports()
885 if (phy_info->phy) { in mptsas_setup_wide_ports()
887 &phy_info->phy->dev, MYIOC_s_FMT in mptsas_setup_wide_ports()
889 phy_info->phy_id, phy_info->phy)); in mptsas_setup_wide_ports()
890 sas_port_delete_phy(port_details->port, phy_info->phy); in mptsas_setup_wide_ports()
892 phy_info->port_details = NULL; in mptsas_setup_wide_ports()
898 phy_info = port_info->phy_info; in mptsas_setup_wide_ports()
899 for (i = 0 ; i < port_info->num_phys ; i++, phy_info++) { in mptsas_setup_wide_ports()
900 sas_address = phy_info->attached.sas_address; in mptsas_setup_wide_ports()
905 port_details = phy_info->port_details; in mptsas_setup_wide_ports()
916 if (phy_info->phy_id < 64 ) in mptsas_setup_wide_ports()
918 (1 << phy_info->phy_id); in mptsas_setup_wide_ports()
919 phy_info->sas_port_add_phy=1; in mptsas_setup_wide_ports()
923 phy_info->port_details = port_details; in mptsas_setup_wide_ports()
928 phy_info_cmp = &port_info->phy_info[i + 1]; in mptsas_setup_wide_ports()
968 port_details = port_info->phy_info[i].port_details; in mptsas_setup_wide_ports()
1444 mptsas_add_end_device(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info) in mptsas_add_end_device() argument
1452 if (!phy_info) { in mptsas_add_end_device()
1459 fw_id = phy_info->attached.id; in mptsas_add_end_device()
1461 if (mptsas_get_rphy(phy_info)) { in mptsas_add_end_device()
1468 port = mptsas_get_port(phy_info); in mptsas_add_end_device()
1476 if (phy_info->attached.device_info & in mptsas_add_end_device()
1479 if (phy_info->attached.device_info & in mptsas_add_end_device()
1482 if (phy_info->attached.device_info & in mptsas_add_end_device()
1488 phy_info->attached.channel, phy_info->attached.id, in mptsas_add_end_device()
1489 phy_info->attached.phy_id, (unsigned long long) in mptsas_add_end_device()
1490 phy_info->attached.sas_address); in mptsas_add_end_device()
1492 mptsas_parse_device_info(&identify, &phy_info->attached); in mptsas_add_end_device()
1509 mptsas_set_rphy(ioc, phy_info, rphy); in mptsas_add_end_device()
1520 mptsas_del_end_device(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info) in mptsas_del_end_device() argument
1531 if (!phy_info) in mptsas_del_end_device()
1534 fw_id = phy_info->attached.id; in mptsas_del_end_device()
1535 sas_address = phy_info->attached.sas_address; in mptsas_del_end_device()
1537 if (!phy_info->port_details) { in mptsas_del_end_device()
1543 rphy = mptsas_get_rphy(phy_info); in mptsas_del_end_device()
1551 if (phy_info->attached.device_info & MPI_SAS_DEVICE_INFO_SSP_INITIATOR in mptsas_del_end_device()
1552 || phy_info->attached.device_info in mptsas_del_end_device()
1554 || phy_info->attached.device_info in mptsas_del_end_device()
1557 if (phy_info->attached.device_info & in mptsas_del_end_device()
1560 if (phy_info->attached.device_info & in mptsas_del_end_device()
1563 if (phy_info->attached.device_info & in mptsas_del_end_device()
1569 "sas_addr 0x%llx\n", ioc->name, ds, phy_info->attached.channel, in mptsas_del_end_device()
1570 phy_info->attached.id, phy_info->attached.phy_id, in mptsas_del_end_device()
1573 port = mptsas_get_port(phy_info); in mptsas_del_end_device()
1580 port_info = phy_info->portinfo; in mptsas_del_end_device()
1581 phy_info_parent = port_info->phy_info; in mptsas_del_end_device()
1599 mptsas_set_port(ioc, phy_info, NULL); in mptsas_del_end_device()
1600 mptsas_port_delete(ioc, phy_info->port_details); in mptsas_del_end_device()
1607 struct mptsas_phyinfo *phy_info; in mptsas_refreshing_device_handles() local
1611 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_refreshing_device_handles()
1613 if (!phy_info) in mptsas_refreshing_device_handles()
1615 port_info = phy_info->portinfo; in mptsas_refreshing_device_handles()
1620 if (port_info->phy_info[i].attached.sas_address != in mptsas_refreshing_device_handles()
1623 port_info->phy_info[i].attached.channel = sas_device->channel; in mptsas_refreshing_device_handles()
1624 port_info->phy_info[i].attached.id = sas_device->id; in mptsas_refreshing_device_handles()
1625 port_info->phy_info[i].attached.sas_address = in mptsas_refreshing_device_handles()
1627 port_info->phy_info[i].attached.handle = sas_device->handle; in mptsas_refreshing_device_handles()
1628 port_info->phy_info[i].attached.handle_parent = in mptsas_refreshing_device_handles()
1630 port_info->phy_info[i].attached.handle_enclosure = in mptsas_refreshing_device_handles()
1635 return phy_info; in mptsas_refreshing_device_handles()
1787 if (p->phy_info[i].attached.sas_address != in mptsas_target_alloc()
1790 id = p->phy_info[i].attached.id; in mptsas_target_alloc()
1791 channel = p->phy_info[i].attached.channel; in mptsas_target_alloc()
1792 mptsas_set_starget(&p->phy_info[i], starget); in mptsas_target_alloc()
1802 p->phy_info[i].attached.phys_disk_num = id; in mptsas_target_alloc()
1846 if (p->phy_info[i].attached.sas_address != in mptsas_target_destroy()
1853 p->phy_info[i].attached.channel, in mptsas_target_destroy()
1854 p->phy_info[i].attached.id, in mptsas_target_destroy()
1855 p->phy_info[i].attached.phy_id, (unsigned long long) in mptsas_target_destroy()
1856 p->phy_info[i].attached.sas_address); in mptsas_target_destroy()
1858 mptsas_set_starget(&p->phy_info[i], NULL); in mptsas_target_destroy()
1897 if (p->phy_info[i].attached.sas_address != in mptsas_slave_alloc()
1905 p->phy_info[i].attached.channel, in mptsas_slave_alloc()
1906 p->phy_info[i].attached.id)) in mptsas_slave_alloc()
2195 if (p->phy_info[i].attached.sas_address == in mptsas_get_enclosure_identifier()
2197 enclosure_handle = p->phy_info[i]. in mptsas_get_enclosure_identifier()
2227 if (p->phy_info[i].attached.sas_address == in mptsas_get_bay_identifier()
2229 rc = p->phy_info[i].attached.slot; in mptsas_get_bay_identifier()
2286 if (port_info && port_info->phy_info) in mptsas_smp_handler()
2288 port_info->phy_info[0].phy->identify.sas_address; in mptsas_smp_handler()
2430 port_info->phy_info = kcalloc(port_info->num_phys, in mptsas_sas_io_unit_pg0()
2432 if (!port_info->phy_info) { in mptsas_sas_io_unit_pg0()
2444 port_info->phy_info[i].phy_id = i; in mptsas_sas_io_unit_pg0()
2445 port_info->phy_info[i].port_id = in mptsas_sas_io_unit_pg0()
2447 port_info->phy_info[i].negotiated_link_rate = in mptsas_sas_io_unit_pg0()
2449 port_info->phy_info[i].portinfo = port_info; in mptsas_sas_io_unit_pg0()
2450 port_info->phy_info[i].handle = in mptsas_sas_io_unit_pg0()
2519 mptsas_sas_phy_pg0(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, in mptsas_sas_phy_pg0() argument
2570 phy_info->hw_link_rate = buffer->HwLinkRate; in mptsas_sas_phy_pg0()
2571 phy_info->programmed_link_rate = buffer->ProgrammedLinkRate; in mptsas_sas_phy_pg0()
2572 phy_info->identify.handle = le16_to_cpu(buffer->OwnerDevHandle); in mptsas_sas_phy_pg0()
2573 phy_info->attached.handle = le16_to_cpu(buffer->AttachedDevHandle); in mptsas_sas_phy_pg0()
2721 port_info->phy_info = kcalloc(port_info->num_phys, in mptsas_sas_expander_pg0()
2723 if (!port_info->phy_info) { in mptsas_sas_expander_pg0()
2730 port_info->phy_info[i].portinfo = port_info; in mptsas_sas_expander_pg0()
2731 port_info->phy_info[i].handle = in mptsas_sas_expander_pg0()
2733 port_info->phy_info[i].identify.sas_address = in mptsas_sas_expander_pg0()
2735 port_info->phy_info[i].identify.handle_parent = in mptsas_sas_expander_pg0()
2747 mptsas_sas_expander_pg1(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info, in mptsas_sas_expander_pg1() argument
2804 phy_info->phy_id = buffer->PhyIdentifier; in mptsas_sas_expander_pg1()
2805 phy_info->port_id = buffer->PhysicalPort; in mptsas_sas_expander_pg1()
2806 phy_info->negotiated_link_rate = buffer->NegotiatedLinkRate; in mptsas_sas_expander_pg1()
2807 phy_info->programmed_link_rate = buffer->ProgrammedLinkRate; in mptsas_sas_expander_pg1()
2808 phy_info->hw_link_rate = buffer->HwLinkRate; in mptsas_sas_expander_pg1()
2809 phy_info->identify.handle = le16_to_cpu(buffer->OwnerDevHandle); in mptsas_sas_expander_pg1()
2810 phy_info->attached.handle = le16_to_cpu(buffer->AttachedDevHandle); in mptsas_sas_expander_pg1()
3063 struct mptsas_phyinfo *phy_info, int index, int local) in mptsas_probe_one_phy() argument
3076 if (!phy_info->phy) { in mptsas_probe_one_phy()
3083 phy = phy_info->phy; in mptsas_probe_one_phy()
3085 mptsas_parse_device_info(&phy->identify, &phy_info->identify); in mptsas_probe_one_phy()
3090 switch (phy_info->negotiated_link_rate) { in mptsas_probe_one_phy()
3116 switch (phy_info->hw_link_rate & MPI_SAS_PHY0_PRATE_MAX_RATE_MASK) { in mptsas_probe_one_phy()
3130 switch (phy_info->programmed_link_rate & in mptsas_probe_one_phy()
3145 switch (phy_info->hw_link_rate & MPI_SAS_PHY0_HWRATE_MIN_RATE_MASK) { in mptsas_probe_one_phy()
3159 switch (phy_info->programmed_link_rate & in mptsas_probe_one_phy()
3171 if (!phy_info->phy) { in mptsas_probe_one_phy()
3178 phy_info->phy = phy; in mptsas_probe_one_phy()
3181 if (!phy_info->attached.handle || in mptsas_probe_one_phy()
3182 !phy_info->port_details) in mptsas_probe_one_phy()
3185 port = mptsas_get_port(phy_info); in mptsas_probe_one_phy()
3186 ioc = phy_to_ioc(phy_info->phy); in mptsas_probe_one_phy()
3188 if (phy_info->sas_port_add_phy) { in mptsas_probe_one_phy()
3203 mptsas_set_port(ioc, phy_info, port); in mptsas_probe_one_phy()
3207 (unsigned long long)phy_info-> in mptsas_probe_one_phy()
3212 ioc->name, phy_info->phy_id)); in mptsas_probe_one_phy()
3213 sas_port_add_phy(port, phy_info->phy); in mptsas_probe_one_phy()
3214 phy_info->sas_port_add_phy = 0; in mptsas_probe_one_phy()
3215 devtprintk(ioc, dev_printk(KERN_DEBUG, &phy_info->phy->dev, in mptsas_probe_one_phy()
3217 phy_info->phy_id, phy_info->phy)); in mptsas_probe_one_phy()
3219 if (!mptsas_get_rphy(phy_info) && port && !port->rphy) { in mptsas_probe_one_phy()
3231 if (mptsas_is_end_device(&phy_info->attached) && in mptsas_probe_one_phy()
3232 phy_info->attached.handle_parent) { in mptsas_probe_one_phy()
3236 mptsas_parse_device_info(&identify, &phy_info->attached); in mptsas_probe_one_phy()
3244 if (port_info->phy_info[i].identify.sas_address == in mptsas_probe_one_phy()
3287 mptsas_set_rphy(ioc, phy_info, rphy); in mptsas_probe_one_phy()
3298 phy_info->attached.channel, in mptsas_probe_one_phy()
3299 phy_info->attached.id); in mptsas_probe_one_phy()
3332 port_info->phy_info[i].negotiated_link_rate = in mptsas_probe_hba_phys()
3333 hba->phy_info[i].negotiated_link_rate; in mptsas_probe_hba_phys()
3334 port_info->phy_info[i].handle = in mptsas_probe_hba_phys()
3335 hba->phy_info[i].handle; in mptsas_probe_hba_phys()
3336 port_info->phy_info[i].port_id = in mptsas_probe_hba_phys()
3337 hba->phy_info[i].port_id; in mptsas_probe_hba_phys()
3339 kfree(hba->phy_info); in mptsas_probe_hba_phys()
3348 mptsas_sas_phy_pg0(ioc, &port_info->phy_info[i], in mptsas_probe_hba_phys()
3351 port_info->phy_info[i].identify.handle = in mptsas_probe_hba_phys()
3352 port_info->phy_info[i].handle; in mptsas_probe_hba_phys()
3353 mptsas_sas_device_pg0(ioc, &port_info->phy_info[i].identify, in mptsas_probe_hba_phys()
3356 port_info->phy_info[i].identify.handle); in mptsas_probe_hba_phys()
3359 port_info->phy_info[i].identify.sas_address; in mptsas_probe_hba_phys()
3360 port_info->phy_info[i].identify.phy_id = in mptsas_probe_hba_phys()
3361 port_info->phy_info[i].phy_id = i; in mptsas_probe_hba_phys()
3362 if (port_info->phy_info[i].attached.handle) in mptsas_probe_hba_phys()
3364 &port_info->phy_info[i].attached, in mptsas_probe_hba_phys()
3367 port_info->phy_info[i].attached.handle); in mptsas_probe_hba_phys()
3374 &port_info->phy_info[i], ioc->sas_index, 1); in mptsas_probe_hba_phys()
3394 handle = port_info->phy_info[0].handle; in mptsas_expander_refresh()
3395 sas_address = port_info->phy_info[0].identify.sas_address; in mptsas_expander_refresh()
3397 mptsas_sas_expander_pg1(ioc, &port_info->phy_info[i], in mptsas_expander_refresh()
3402 &port_info->phy_info[i].identify, in mptsas_expander_refresh()
3405 port_info->phy_info[i].identify.handle); in mptsas_expander_refresh()
3406 port_info->phy_info[i].identify.phy_id = in mptsas_expander_refresh()
3407 port_info->phy_info[i].phy_id; in mptsas_expander_refresh()
3409 if (port_info->phy_info[i].attached.handle) { in mptsas_expander_refresh()
3411 &port_info->phy_info[i].attached, in mptsas_expander_refresh()
3414 port_info->phy_info[i].attached.handle); in mptsas_expander_refresh()
3415 port_info->phy_info[i].attached.phy_id = in mptsas_expander_refresh()
3416 port_info->phy_info[i].phy_id; in mptsas_expander_refresh()
3422 port_info->phy_info[0].identify.handle_parent); in mptsas_expander_refresh()
3429 if (parent->phy_info[i].attached.sas_address == sas_address) { in mptsas_expander_refresh()
3430 rphy = mptsas_get_rphy(&parent->phy_info[i]); in mptsas_expander_refresh()
3438 mptsas_probe_one_phy(parent_dev, &port_info->phy_info[i], in mptsas_expander_refresh()
3454 port_info->phy_info = kcalloc(port_info->num_phys, in mptsas_expander_event_add()
3456 BUG_ON(!port_info->phy_info); in mptsas_expander_event_add()
3459 port_info->phy_info[i].portinfo = port_info; in mptsas_expander_event_add()
3460 port_info->phy_info[i].handle = in mptsas_expander_event_add()
3462 port_info->phy_info[i].identify.sas_address = in mptsas_expander_event_add()
3464 port_info->phy_info[i].identify.handle_parent = in mptsas_expander_event_add()
3489 struct mptsas_phyinfo *phy_info; in mptsas_delete_expander_siblings() local
3494 phy_info = expander->phy_info; in mptsas_delete_expander_siblings()
3495 for (i = 0; i < expander->num_phys; i++, phy_info++) { in mptsas_delete_expander_siblings()
3496 rphy = mptsas_get_rphy(phy_info); in mptsas_delete_expander_siblings()
3500 mptsas_del_end_device(ioc, phy_info); in mptsas_delete_expander_siblings()
3503 phy_info = expander->phy_info; in mptsas_delete_expander_siblings()
3504 for (i = 0; i < expander->num_phys; i++, phy_info++) { in mptsas_delete_expander_siblings()
3505 rphy = mptsas_get_rphy(phy_info); in mptsas_delete_expander_siblings()
3543 struct mptsas_phyinfo *phy_info; in mptsas_expander_delete() local
3555 port_info->phy_info[0].identify.handle); in mptsas_expander_delete()
3558 kfree(buffer.phy_info); in mptsas_expander_delete()
3569 port_info->phy_info[0].identify.sas_address; in mptsas_expander_delete()
3571 port_info->phy_info[0].identify.handle_parent); in mptsas_expander_delete()
3580 phy_info = parent->phy_info; in mptsas_expander_delete()
3582 for (i = 0; i < parent->num_phys; i++, phy_info++) { in mptsas_expander_delete()
3583 if (!phy_info->phy) in mptsas_expander_delete()
3585 if (phy_info->attached.sas_address != in mptsas_expander_delete()
3589 port = mptsas_get_port(phy_info); in mptsas_expander_delete()
3590 port_details = phy_info->port_details; in mptsas_expander_delete()
3592 dev_printk(KERN_DEBUG, &phy_info->phy->dev, in mptsas_expander_delete()
3594 phy_info->phy_id, phy_info->phy); in mptsas_expander_delete()
3595 sas_port_delete_phy(port, phy_info->phy); in mptsas_expander_delete()
3615 kfree(port_info->phy_info); in mptsas_expander_delete()
3647 port_info->phy_info[i].portinfo = port_info; in mptsas_send_expander_event()
3648 port_info->phy_info[i].handle = in mptsas_send_expander_event()
3650 port_info->phy_info[i].identify.sas_address = in mptsas_send_expander_event()
3652 port_info->phy_info[i].identify.handle_parent = in mptsas_send_expander_event()
3691 port_info->phy_info = buffer.phy_info; in mptsas_expander_add()
3693 port_info->phy_info[i].portinfo = port_info; in mptsas_expander_add()
3699 (unsigned long long)buffer.phy_info[0].identify.sas_address); in mptsas_expander_add()
3710 struct mptsas_phyinfo *phy_info = NULL; in mptsas_send_link_status_event() local
3725 phy_info = &port_info->phy_info[phy_num]; in mptsas_send_link_status_event()
3726 if (phy_info) in mptsas_send_link_status_event()
3727 phy_info->negotiated_link_rate = link_rate; in mptsas_send_link_status_event()
3748 } else if (phy_info && phy_info->phy) { in mptsas_send_link_status_event()
3750 phy_info->phy->negotiated_linkrate = in mptsas_send_link_status_event()
3754 phy_info->phy->negotiated_linkrate = in mptsas_send_link_status_event()
3757 phy_info->phy->negotiated_linkrate = in mptsas_send_link_status_event()
3760 mptsas_is_end_device(&phy_info->attached)) { in mptsas_send_link_status_event()
3764 id = phy_info->attached.id; in mptsas_send_link_status_event()
3765 channel = phy_info->attached.channel; in mptsas_send_link_status_event()
3768 ioc->name, phy_info->attached.id, in mptsas_send_link_status_event()
3769 phy_info->attached.channel)); in mptsas_send_link_status_event()
3805 struct mptsas_phyinfo *phy_info; in mptsas_not_responding_devices() local
3877 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_not_responding_devices()
3880 mptsas_del_end_device(ioc, phy_info); in mptsas_not_responding_devices()
3892 if (!(port_info->phy_info[0].identify.device_info & in mptsas_not_responding_devices()
3902 handle = buffer.phy_info[0].handle; in mptsas_not_responding_devices()
3903 if (buffer.phy_info[0].identify.sas_address == in mptsas_not_responding_devices()
3904 port_info->phy_info[0].identify.sas_address) { in mptsas_not_responding_devices()
3907 kfree(buffer.phy_info); in mptsas_not_responding_devices()
3935 handle = buffer.phy_info[0].handle; in mptsas_probe_expanders()
3937 buffer.phy_info[0].identify.sas_address); in mptsas_probe_expanders()
3942 port_info->phy_info[i].handle = handle; in mptsas_probe_expanders()
3943 port_info->phy_info[i].identify.handle_parent = in mptsas_probe_expanders()
3944 buffer.phy_info[0].identify.handle_parent; in mptsas_probe_expanders()
3947 kfree(buffer.phy_info); in mptsas_probe_expanders()
3959 port_info->phy_info = buffer.phy_info; in mptsas_probe_expanders()
3961 port_info->phy_info[i].portinfo = port_info; in mptsas_probe_expanders()
3967 (unsigned long long)buffer.phy_info[0].identify.sas_address); in mptsas_probe_expanders()
3977 struct mptsas_phyinfo *phy_info; in mptsas_probe_devices() local
3998 phy_info = mptsas_refreshing_device_handles(ioc, &sas_device); in mptsas_probe_devices()
3999 if (!phy_info) in mptsas_probe_devices()
4002 if (mptsas_get_rphy(phy_info)) in mptsas_probe_devices()
4005 mptsas_add_end_device(ioc, phy_info); in mptsas_probe_devices()
4139 struct mptsas_phyinfo *phy_info = NULL; in mptsas_find_phyinfo_by_sas_address() local
4146 &port_info->phy_info[i].attached)) in mptsas_find_phyinfo_by_sas_address()
4148 if (port_info->phy_info[i].attached.sas_address in mptsas_find_phyinfo_by_sas_address()
4151 phy_info = &port_info->phy_info[i]; in mptsas_find_phyinfo_by_sas_address()
4156 return phy_info; in mptsas_find_phyinfo_by_sas_address()
4172 struct mptsas_phyinfo *phy_info = NULL; in mptsas_find_phyinfo_by_phys_disk_num() local
4179 phy_info = NULL; in mptsas_find_phyinfo_by_phys_disk_num()
4199 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_find_phyinfo_by_phys_disk_num()
4207 if (phy_info) in mptsas_find_phyinfo_by_phys_disk_num()
4208 return phy_info; in mptsas_find_phyinfo_by_phys_disk_num()
4216 for (i = 0; i < port_info->num_phys && !phy_info; i++) { in mptsas_find_phyinfo_by_phys_disk_num()
4218 &port_info->phy_info[i].attached)) in mptsas_find_phyinfo_by_phys_disk_num()
4220 if (port_info->phy_info[i].attached.phys_disk_num == ~0) in mptsas_find_phyinfo_by_phys_disk_num()
4222 if ((port_info->phy_info[i].attached.phys_disk_num == in mptsas_find_phyinfo_by_phys_disk_num()
4224 (port_info->phy_info[i].attached.id == id) && in mptsas_find_phyinfo_by_phys_disk_num()
4225 (port_info->phy_info[i].attached.channel == in mptsas_find_phyinfo_by_phys_disk_num()
4227 phy_info = &port_info->phy_info[i]; in mptsas_find_phyinfo_by_phys_disk_num()
4231 return phy_info; in mptsas_find_phyinfo_by_phys_disk_num()
4259 struct mptsas_phyinfo *phy_info; in mptsas_adding_inactive_raid_components() local
4316 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_adding_inactive_raid_components()
4318 mptsas_add_end_device(ioc, phy_info); in mptsas_adding_inactive_raid_components()
4333 struct mptsas_phyinfo *phy_info; in mptsas_hotplug_work() local
4378 phy_info = mptsas_refreshing_device_handles(ioc, &sas_device); in mptsas_hotplug_work()
4380 if (!phy_info) { in mptsas_hotplug_work()
4398 phy_info = mptsas_refreshing_device_handles in mptsas_hotplug_work()
4402 if (!phy_info) { in mptsas_hotplug_work()
4409 if (mptsas_get_rphy(phy_info)) in mptsas_hotplug_work()
4412 mptsas_add_end_device(ioc, phy_info); in mptsas_hotplug_work()
4416 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_hotplug_work()
4418 mptsas_del_end_device(ioc, phy_info); in mptsas_hotplug_work()
4425 phy_info = mptsas_find_phyinfo_by_phys_disk_num( in mptsas_hotplug_work()
4429 mptsas_del_end_device(ioc, phy_info); in mptsas_hotplug_work()
4451 phy_info = mptsas_find_phyinfo_by_sas_address( in mptsas_hotplug_work()
4454 if (!phy_info) { in mptsas_hotplug_work()
4461 starget = mptsas_get_starget(phy_info); in mptsas_hotplug_work()
4487 phy_info->attached.phys_disk_num = hot_plug_info->phys_disk_num; in mptsas_hotplug_work()
4511 phy_info = mptsas_find_phyinfo_by_sas_address(ioc, in mptsas_hotplug_work()
4513 if (!phy_info) { in mptsas_hotplug_work()
4520 starget = mptsas_get_starget(phy_info); in mptsas_hotplug_work()
4553 phy_info->attached.phys_disk_num = ~0; in mptsas_hotplug_work()
5375 mptsas_port_delete(ioc, p->phy_info[i].port_details); in mptsas_remove()
5377 kfree(p->phy_info); in mptsas_remove()