Lines Matching refs:starget

1365 static int scsi_target_add(struct scsi_target *starget)
1369 if (starget->state != STARGET_CREATED)
1372 error = device_add(&starget->dev);
1374 dev_err(&starget->dev, "target device_add failed, error %d\n", error);
1377 transport_add_device(&starget->dev);
1378 starget->state = STARGET_RUNNING;
1380 pm_runtime_set_active(&starget->dev);
1381 pm_runtime_enable(&starget->dev);
1382 device_enable_async_suspend(&starget->dev);
1397 struct scsi_target *starget = sdev->sdev_target;
1399 error = scsi_target_add(starget);
1403 transport_configure_device(&starget->dev);
1406 scsi_autopm_get_target(starget);
1411 scsi_autopm_put_target(starget);
1534 static void __scsi_remove_target(struct scsi_target *starget)
1536 struct Scsi_Host *shost = dev_to_shost(starget->dev.parent);
1549 if (sdev->channel != starget->channel ||
1550 sdev->id != starget->id)
1567 * @dev: generic starget or parent of generic stargets to be removed
1576 struct scsi_target *starget;
1581 list_for_each_entry(starget, &shost->__targets, siblings) {
1582 if (starget->state == STARGET_DEL ||
1583 starget->state == STARGET_REMOVE ||
1584 starget->state == STARGET_CREATED_REMOVE)
1586 if (starget->dev.parent == dev || &starget->dev == dev) {
1587 kref_get(&starget->reap_ref);
1588 if (starget->state == STARGET_CREATED)
1589 starget->state = STARGET_CREATED_REMOVE;
1591 starget->state = STARGET_REMOVE;
1593 __scsi_remove_target(starget);
1594 scsi_target_reap(starget);
1640 struct scsi_target *starget = sdev->sdev_target;
1662 sdev->scsi_level = starget->scsi_level;
1670 list_add_tail(&sdev->same_target_siblings, &starget->devices);
1678 kref_get(&starget->reap_ref);