Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e35a9e01 authored by Alan Cox's avatar Alan Cox Committed by Jeff Garzik
Browse files

[PATCH] libata: Add ->set_mode hook for odd drivers



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: default avatarAlan Cox <alan@redhat.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 4e5ec5db
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -1409,7 +1409,11 @@ static int ata_bus_probe(struct ata_port *ap)
	if (!found)
		goto err_out_disable;

	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;

+1 −0
Original line number Diff line number Diff line
@@ -433,6 +433,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);