Lines Matching refs:sas_dev
306 struct leapraid_sas_dev *sas_dev; in leapraid_smart_fault_detect() local
311 sas_dev = leapraid_hold_lock_get_sas_dev_by_hdl(adapter, hdl); in leapraid_smart_fault_detect()
312 if (!sas_dev) { in leapraid_smart_fault_detect()
317 starget = sas_dev->starget; in leapraid_smart_fault_detect()
333 if (sas_dev) in leapraid_smart_fault_detect()
334 leapraid_sdev_put(sas_dev); in leapraid_smart_fault_detect()
601 struct leapraid_sas_dev *sas_dev) in leapraid_sas_dev_make_active() argument
606 if (!list_empty(&sas_dev->list)) { in leapraid_sas_dev_make_active()
607 list_del_init(&sas_dev->list); in leapraid_sas_dev_make_active()
608 leapraid_sdev_put(sas_dev); in leapraid_sas_dev_make_active()
611 leapraid_sdev_get(sas_dev); in leapraid_sas_dev_make_active()
612 list_add_tail(&sas_dev->list, &adapter->dev_topo.sas_dev_list); in leapraid_sas_dev_make_active()
618 struct leapraid_sas_dev *sas_dev; in leapraid_probe_sas() local
622 sas_dev = leapraid_get_next_sas_dev_from_init_list(adapter); in leapraid_probe_sas()
623 if (!sas_dev) in leapraid_probe_sas()
626 sas_dev->hdl, in leapraid_probe_sas()
627 sas_dev->parent_sas_addr, in leapraid_probe_sas()
628 sas_dev->card_port); in leapraid_probe_sas()
632 if (!sas_dev->starget && in leapraid_probe_sas()
635 sas_dev->sas_addr, in leapraid_probe_sas()
636 sas_dev->parent_sas_addr, in leapraid_probe_sas()
637 sas_dev->card_port); in leapraid_probe_sas()
641 leapraid_sas_dev_make_active(adapter, sas_dev); in leapraid_probe_sas()
642 leapraid_sdev_put(sas_dev); in leapraid_probe_sas()
646 leapraid_sas_dev_remove(adapter, sas_dev); in leapraid_probe_sas()
647 leapraid_sdev_put(sas_dev); in leapraid_probe_sas()
678 struct leapraid_sas_dev *sas_dev; in leapraid_probe_boot_dev() local
716 sas_dev = dev; in leapraid_probe_boot_dev()
718 if (sas_dev->starget) in leapraid_probe_boot_dev()
722 list_move_tail(&sas_dev->list, in leapraid_probe_boot_dev()
726 if (!sas_dev->card_port) in leapraid_probe_boot_dev()
729 sport = leapraid_transport_port_add(adapter, sas_dev->hdl, in leapraid_probe_boot_dev()
730 sas_dev->parent_sas_addr, in leapraid_probe_boot_dev()
731 sas_dev->card_port); in leapraid_probe_boot_dev()
733 leapraid_sas_dev_remove(adapter, sas_dev); in leapraid_probe_boot_dev()
967 struct leapraid_sas_dev *sas_dev = NULL; in leapraid_error_handler() local
1040 sas_dev = leapraid_get_sas_dev_from_tgt(adapter, in leapraid_error_handler()
1042 if (sas_dev) in leapraid_error_handler()
1043 hdl = sas_dev->volume_hdl; in leapraid_error_handler()
1085 if (sas_dev) in leapraid_error_handler()
1086 leapraid_sdev_put(sas_dev); in leapraid_error_handler()
1151 struct leapraid_sas_dev *sas_dev; in leapraid_sdev_init() local
1188 sas_dev = leapraid_hold_lock_get_sas_dev_by_addr( in leapraid_sdev_init()
1192 if (sas_dev && !sas_dev->starget) { in leapraid_sdev_init()
1196 sas_dev->starget = tgt; in leapraid_sdev_init()
1199 if (sas_dev) in leapraid_sdev_init()
1200 leapraid_sdev_put(sas_dev); in leapraid_sdev_init()
1260 struct leapraid_sas_dev *sas_dev; in leapraid_slave_configure_extra() local
1269 sas_dev = leapraid_hold_lock_get_sas_dev_by_addr( in leapraid_slave_configure_extra()
1273 if (!sas_dev) { in leapraid_slave_configure_extra()
1281 *psas_dev = sas_dev; in leapraid_slave_configure_extra()
1282 sas_dev->volume_hdl = vol_hdl; in leapraid_slave_configure_extra()
1283 sas_dev->volume_wwid = volume_wwid; in leapraid_slave_configure_extra()
1284 if (sas_dev->dev_info & LEAPRAID_DEVTYP_SSP_TGT) { in leapraid_slave_configure_extra()
1285 *qd = (sas_dev->port_connection > 1) ? in leapraid_slave_configure_extra()
1289 if (sas_dev->dev_info & LEAPRAID_DEVTYP_SEP) in leapraid_slave_configure_extra()
1297 (unsigned long long)sas_dev->dev_name, in leapraid_slave_configure_extra()
1298 (unsigned long long)sas_dev->sas_addr); in leapraid_slave_configure_extra()
1299 leapraid_sdev_put(sas_dev); in leapraid_slave_configure_extra()
1307 struct leapraid_sas_dev *sas_dev; in leapraid_sdev_configure() local
1342 if (leapraid_slave_configure_extra(sdev, &sas_dev, vol_hdl, in leapraid_sdev_configure()
1360 struct leapraid_sas_dev *sas_dev; in leapraid_sdev_destroy() local
1375 sas_dev = leapraid_hold_lock_get_sas_dev_from_tgt(adapter, in leapraid_sdev_destroy()
1377 if (sas_dev && !starget_priv->num_luns) in leapraid_sdev_destroy()
1378 sas_dev->starget = NULL; in leapraid_sdev_destroy()
1379 if (sas_dev) in leapraid_sdev_destroy()
1380 leapraid_sdev_put(sas_dev); in leapraid_sdev_destroy()
1416 struct leapraid_sas_dev *sas_dev; in leapraid_target_alloc_sas() local
1426 sas_dev = leapraid_hold_lock_get_sas_dev_by_addr_and_rphy( in leapraid_target_alloc_sas()
1430 if (sas_dev) { in leapraid_target_alloc_sas()
1431 starget_priv->sas_dev = sas_dev; in leapraid_target_alloc_sas()
1432 starget_priv->card_port = sas_dev->card_port; in leapraid_target_alloc_sas()
1433 starget_priv->sas_address = sas_dev->sas_addr; in leapraid_target_alloc_sas()
1434 starget_priv->hdl = sas_dev->hdl; in leapraid_target_alloc_sas()
1435 sas_dev->channel = tgt->channel; in leapraid_target_alloc_sas()
1436 sas_dev->id = tgt->id; in leapraid_target_alloc_sas()
1437 sas_dev->starget = tgt; in leapraid_target_alloc_sas()
1438 if (sas_dev->hdl && in leapraid_target_alloc_sas()
1439 sas_dev->hdl <= in leapraid_target_alloc_sas()
1441 test_bit(sas_dev->hdl, adapter->dev_topo.pd_hdls)) in leapraid_target_alloc_sas()
1488 struct leapraid_sas_dev *sas_dev; in leapraid_target_destroy_sas() local
1498 sas_dev = leapraid_hold_lock_get_sas_dev_from_tgt(adapter, in leapraid_target_destroy_sas()
1500 if (sas_dev && in leapraid_target_destroy_sas()
1501 sas_dev->starget == tgt && in leapraid_target_destroy_sas()
1502 sas_dev->id == tgt->id && in leapraid_target_destroy_sas()
1503 sas_dev->channel == tgt->channel) in leapraid_target_destroy_sas()
1504 sas_dev->starget = NULL; in leapraid_target_destroy_sas()
1506 if (sas_dev) { in leapraid_target_destroy_sas()
1507 starget_priv->sas_dev = NULL; in leapraid_target_destroy_sas()
1508 leapraid_sdev_put(sas_dev); in leapraid_target_destroy_sas()
1509 leapraid_sdev_put(sas_dev); in leapraid_target_destroy_sas()
1639 struct leapraid_sas_dev *sas_dev; in leapraid_calc_max_queue_depth() local
1669 sas_dev = leapraid_get_sas_dev_from_tgt(adapter, starget_priv); in leapraid_calc_max_queue_depth()
1670 if (sas_dev) { in leapraid_calc_max_queue_depth()
1671 if (sas_dev->dev_info & LEAPRAID_DEVTYP_SSP_TGT) { in leapraid_calc_max_queue_depth()
1673 fw_qdepth = (sas_dev->port_connection > 1) ? in leapraid_calc_max_queue_depth()
1677 if (sas_dev->dev_info & LEAPRAID_DEVTYP_SATA_DEV) { in leapraid_calc_max_queue_depth()
1681 leapraid_sdev_put(sas_dev); in leapraid_calc_max_queue_depth()
1914 struct leapraid_sas_dev *sas_dev; in leapraid_sdev_is_sata() local
1919 sas_dev = starget_priv->sas_dev; in leapraid_sdev_is_sata()
1920 return sas_dev && (sas_dev->dev_info & LEAPRAID_DEVTYP_SATA_DEV); in leapraid_sdev_is_sata()