Messages in this thread Patch in this message | | | Subject | PATCH: Add ->set_mode hook for odd drivers | From | Alan Cox <> | Date | Mon, 27 Mar 2006 18:46:37 +0100 |
| |
Some hardware doesn't want the usual mode setup logic running. This allows the hardware driver to replace it for special cases in the least invasive way possible.
Signed-off-by: Alan Cox <alan@redhat.com> (and the previous diff)
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c index 1cb9813..18d5239 100644 --- a/drivers/scsi/libata-core.c +++ b/drivers/scsi/libata-core.c @@ -1409,7 +1415,11 @@ static int ata_bus_probe(struct ata_port if (!found) goto err_out_disable; - ata_set_mode(ap); + if (ap->ops->set_mode) + ap->ops->set_mode(ap); + else + ata_set_mode(ap); + if (ap->flags & ATA_FLAG_PORT_DISABLED) goto err_out_disable; diff --git a/include/linux/libata.h b/include/linux/libata.h index 9fcc061..26e0351 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h @@ -429,6 +438,7 @@ struct ata_port_operations { void (*dev_select)(struct ata_port *ap, unsigned int device); void (*phy_reset) (struct ata_port *ap); /* obsolete */ + void (*set_mode) (struct ata_port *ap); int (*probe_reset) (struct ata_port *ap, unsigned int *classes); void (*post_set_mode) (struct ata_port *ap); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |