diff options
author | Sergei Shtylyov <sshtylyov@ru.mvista.com> | 2010-05-07 14:49:02 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2010-05-14 17:35:52 -0400 |
commit | e42a542ba9cca594897176020445023c54d903d6 (patch) | |
tree | b2a136581d6fcea9a2a6c534888319b70e15c2af /drivers/ata/pata_scc.c | |
parent | 41dec29bcb05eb8ec396f70ce791c6e3e4ce4712 (diff) |
libata: make sff_irq_on() method optional
Now, with the introduction of the sff_set_devctl() method, we can
use it in sff_irq_on() method too -- that way its implementations
in 'pata_bf54x' and 'pata_scc' become virtually identical to
ata_sff_irq_on(). The sff_irq_on() method now becomes quite
superfluous, and the only reason not to remove it completely is
the existence of the 'pata_octeon_cf' driver which implements it
as an empty function. Just make the method optional then, with
ata_sff_irq_on() becoming generic taskfile-bound function, still
global for the 'pata_bf54x' driver to be able to call it from its
thaw() and postreset() methods.
While at it, make the sff_irq_on() method and ata_sff_irq_on() return
'void' as the result is always ignored anyway.
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata/pata_scc.c')
-rw-r--r-- | drivers/ata/pata_scc.c | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/drivers/ata/pata_scc.c b/drivers/ata/pata_scc.c index 86b25fef34a9..d3988991ca68 100644 --- a/drivers/ata/pata_scc.c +++ b/drivers/ata/pata_scc.c | |||
@@ -828,29 +828,6 @@ static unsigned int scc_data_xfer (struct ata_device *dev, unsigned char *buf, | |||
828 | } | 828 | } |
829 | 829 | ||
830 | /** | 830 | /** |
831 | * scc_irq_on - Enable interrupts on a port. | ||
832 | * @ap: Port on which interrupts are enabled. | ||
833 | * | ||
834 | * Note: Original code is ata_sff_irq_on(). | ||
835 | */ | ||
836 | |||
837 | static u8 scc_irq_on (struct ata_port *ap) | ||
838 | { | ||
839 | struct ata_ioports *ioaddr = &ap->ioaddr; | ||
840 | u8 tmp; | ||
841 | |||
842 | ap->ctl &= ~ATA_NIEN; | ||
843 | ap->last_ctl = ap->ctl; | ||
844 | |||
845 | out_be32(ioaddr->ctl_addr, ap->ctl); | ||
846 | tmp = ata_wait_idle(ap); | ||
847 | |||
848 | ap->ops->sff_irq_clear(ap); | ||
849 | |||
850 | return tmp; | ||
851 | } | ||
852 | |||
853 | /** | ||
854 | * scc_pata_prereset - prepare for reset | 831 | * scc_pata_prereset - prepare for reset |
855 | * @ap: ATA port to be reset | 832 | * @ap: ATA port to be reset |
856 | * @deadline: deadline jiffies for the operation | 833 | * @deadline: deadline jiffies for the operation |
@@ -977,7 +954,6 @@ static struct ata_port_operations scc_pata_ops = { | |||
977 | .post_internal_cmd = scc_bmdma_stop, | 954 | .post_internal_cmd = scc_bmdma_stop, |
978 | 955 | ||
979 | .sff_irq_clear = scc_irq_clear, | 956 | .sff_irq_clear = scc_irq_clear, |
980 | .sff_irq_on = scc_irq_on, | ||
981 | 957 | ||
982 | .port_start = scc_port_start, | 958 | .port_start = scc_port_start, |
983 | .port_stop = scc_port_stop, | 959 | .port_stop = scc_port_stop, |