Skip to content

Commit

Permalink
[PATCH] libata: move ->set_mode() handling into ata_set_mode()
Browse files Browse the repository at this point in the history
Move ->set_mode() handlng into ata_set_mode().

Signed-off-by: Tejun Heo <htejun@gmail.com>
  • Loading branch information
Tejun Heo committed May 15, 2006
1 parent fe635c7 commit 3adcebb
Showing 1 changed file with 15 additions and 14 deletions.
29 changes: 15 additions & 14 deletions drivers/scsi/libata-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1426,20 +1426,7 @@ static int ata_bus_probe(struct ata_port *ap)
}

/* configure transfer mode */
if (ap->ops->set_mode) {
/* FIXME: make ->set_mode handle no device case and
* return error code and failing device on failure as
* ata_set_mode() does.
*/
for (i = 0; i < ATA_MAX_DEVICES; i++)
if (ata_dev_enabled(&ap->device[i])) {
ap->ops->set_mode(ap);
break;
}
rc = 0;
} else
rc = ata_set_mode(ap, &dev);

rc = ata_set_mode(ap, &dev);
if (rc) {
down_xfermask = 1;
goto fail;
Expand Down Expand Up @@ -1997,6 +1984,20 @@ int ata_set_mode(struct ata_port *ap, struct ata_device **r_failed_dev)
struct ata_device *dev;
int i, rc = 0, used_dma = 0, found = 0;

/* has private set_mode? */
if (ap->ops->set_mode) {
/* FIXME: make ->set_mode handle no device case and
* return error code and failing device on failure.
*/
for (i = 0; i < ATA_MAX_DEVICES; i++) {
if (ata_dev_enabled(&ap->device[i])) {
ap->ops->set_mode(ap);
break;
}
}
return 0;
}

/* step 1: calculate xfer_mask */
for (i = 0; i < ATA_MAX_DEVICES; i++) {
unsigned int pio_mask, dma_mask;
Expand Down

0 comments on commit 3adcebb

Please sign in to comment.