diff options
| -rw-r--r-- | drivers/scsi/libata-core.c | 6 | ||||
| -rw-r--r-- | include/linux/libata.h | 1 |
2 files changed, 6 insertions, 1 deletions
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c index 86310562da8b..10933cb722e6 100644 --- a/drivers/scsi/libata-core.c +++ b/drivers/scsi/libata-core.c | |||
| @@ -1409,7 +1409,11 @@ static int ata_bus_probe(struct ata_port *ap) | |||
| 1409 | if (!found) | 1409 | if (!found) |
| 1410 | goto err_out_disable; | 1410 | goto err_out_disable; |
| 1411 | 1411 | ||
| 1412 | ata_set_mode(ap); | 1412 | if (ap->ops->set_mode) |
| 1413 | ap->ops->set_mode(ap); | ||
| 1414 | else | ||
| 1415 | ata_set_mode(ap); | ||
| 1416 | |||
| 1413 | if (ap->flags & ATA_FLAG_PORT_DISABLED) | 1417 | if (ap->flags & ATA_FLAG_PORT_DISABLED) |
| 1414 | goto err_out_disable; | 1418 | goto err_out_disable; |
| 1415 | 1419 | ||
diff --git a/include/linux/libata.h b/include/linux/libata.h index a5c213ce97c9..6a9316cbb70b 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
| @@ -433,6 +433,7 @@ struct ata_port_operations { | |||
| 433 | void (*dev_select)(struct ata_port *ap, unsigned int device); | 433 | void (*dev_select)(struct ata_port *ap, unsigned int device); |
| 434 | 434 | ||
| 435 | void (*phy_reset) (struct ata_port *ap); /* obsolete */ | 435 | void (*phy_reset) (struct ata_port *ap); /* obsolete */ |
| 436 | void (*set_mode) (struct ata_port *ap); | ||
| 436 | int (*probe_reset) (struct ata_port *ap, unsigned int *classes); | 437 | int (*probe_reset) (struct ata_port *ap, unsigned int *classes); |
| 437 | 438 | ||
| 438 | void (*post_set_mode) (struct ata_port *ap); | 439 | void (*post_set_mode) (struct ata_port *ap); |
