summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-05-31 18:27:36 +0900
committerTejun Heo <htejun@gmail.com>2006-05-31 18:27:36 +0900
commit315343637b988ac32d730a6a9f7bf5866838bcb0 (patch)
tree2e6660fa9d30127cd9fe88149219b75ee2c3ce3f
parentab5b3a5b2d887ce63f8c6a7fcb9f5c07ca4b4d43 (diff)
[PATCH] libata-hp-prep: use __ata_scsi_find_dev()
Convert direct sdev -> dev lookup to __ata_scsi_find_dev(). Signed-off-by: Tejun Heo <htejun@gmail.com>
-rw-r--r--drivers/scsi/libata-scsi.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c
index b45b8b34c0c..05090768d9a 100644
--- a/drivers/scsi/libata-scsi.c
+++ b/drivers/scsi/libata-scsi.c
@@ -399,7 +399,7 @@ void ata_dump_status(unsigned id, struct ata_taskfile *tf)
int ata_scsi_device_resume(struct scsi_device *sdev)
{
struct ata_port *ap = ata_shost_to_port(sdev->host);
- struct ata_device *dev = &ap->device[sdev->id];
+ struct ata_device *dev = __ata_scsi_find_dev(ap, sdev);
return ata_device_resume(dev);
}
@@ -407,7 +407,7 @@ int ata_scsi_device_resume(struct scsi_device *sdev)
int ata_scsi_device_suspend(struct scsi_device *sdev, pm_message_t state)
{
struct ata_port *ap = ata_shost_to_port(sdev->host);
- struct ata_device *dev = &ap->device[sdev->id];
+ struct ata_device *dev = __ata_scsi_find_dev(ap, sdev);
return ata_device_suspend(dev, state);
}
@@ -713,19 +713,15 @@ static void ata_scsi_dev_config(struct scsi_device *sdev,
int ata_scsi_slave_config(struct scsi_device *sdev)
{
+ struct ata_port *ap = ata_shost_to_port(sdev->host);
+ struct ata_device *dev = __ata_scsi_find_dev(ap, sdev);
+
ata_scsi_sdev_config(sdev);
blk_queue_max_phys_segments(sdev->request_queue, LIBATA_MAX_PRD);
- if (sdev->id < ATA_MAX_DEVICES) {
- struct ata_port *ap;
- struct ata_device *dev;
-
- ap = ata_shost_to_port(sdev->host);
- dev = &ap->device[sdev->id];
-
+ if (dev)
ata_scsi_dev_config(sdev, dev);
- }
return 0; /* scsi layer doesn't check return value, sigh */
}