[PATCH] libata: move ->set_mode() handling into ata_set_mode()
Move ->set_mode() handlng into ata_set_mode(). Signed-off-by: Tejun Heo <htejun@gmail.com>
This commit is contained in:
parent
fe635c7e91
commit
3adcebb2b5
1 changed files with 15 additions and 14 deletions
|
@ -1426,20 +1426,7 @@ static int ata_bus_probe(struct ata_port *ap)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* configure transfer mode */
|
/* configure transfer mode */
|
||||||
if (ap->ops->set_mode) {
|
rc = ata_set_mode(ap, &dev);
|
||||||
/* 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);
|
|
||||||
|
|
||||||
if (rc) {
|
if (rc) {
|
||||||
down_xfermask = 1;
|
down_xfermask = 1;
|
||||||
goto fail;
|
goto fail;
|
||||||
|
@ -1997,6 +1984,20 @@ int ata_set_mode(struct ata_port *ap, struct ata_device **r_failed_dev)
|
||||||
struct ata_device *dev;
|
struct ata_device *dev;
|
||||||
int i, rc = 0, used_dma = 0, found = 0;
|
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 */
|
/* step 1: calculate xfer_mask */
|
||||||
for (i = 0; i < ATA_MAX_DEVICES; i++) {
|
for (i = 0; i < ATA_MAX_DEVICES; i++) {
|
||||||
unsigned int pio_mask, dma_mask;
|
unsigned int pio_mask, dma_mask;
|
||||||
|
|
Loading…
Add table
Reference in a new issue