aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/pata_legacy.c
diff options
context:
space:
mode:
authorAkira Iguchi <akira2.iguchi@toshiba.co.jp>2007-01-26 02:27:58 -0500
committerJeff Garzik <jeff@garzik.org>2007-02-09 17:39:38 -0500
commit246ce3b675843e0369643cceb4faeb6cf6d19a30 (patch)
treeb904fe7561e5eacd260d3f175a8f0c3b257598f2 /drivers/ata/pata_legacy.c
parent836250069fc0eeebe8b6aed772281535cc6e34f9 (diff)
libata: add another IRQ calls (libata drivers)
This patch is against each libata driver. Two IRQ calls are added in ata_port_operations. - irq_on() is used to enable interrupts. - irq_ack() is used to acknowledge a device interrupt. In most drivers, ata_irq_on() and ata_irq_ack() are used for irq_on and irq_ack respectively. In some drivers (ex: ahci, sata_sil24) which cannot use them as is, ata_dummy_irq_on() and ata_dummy_irq_ack() are used. Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp> Signed-off-by: Akira Iguchi <akira2.iguchi@toshiba.co.jp> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/ata/pata_legacy.c')
-rw-r--r--drivers/ata/pata_legacy.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/ata/pata_legacy.c b/drivers/ata/pata_legacy.c
index 78b5f7136e1e..4223e10de6a0 100644
--- a/drivers/ata/pata_legacy.c
+++ b/drivers/ata/pata_legacy.c
@@ -168,6 +168,8 @@ static struct ata_port_operations simple_port_ops = {
168 168
169 .irq_handler = ata_interrupt, 169 .irq_handler = ata_interrupt,
170 .irq_clear = ata_bmdma_irq_clear, 170 .irq_clear = ata_bmdma_irq_clear,
171 .irq_on = ata_irq_on,
172 .irq_ack = ata_irq_ack,
171 173
172 .port_start = ata_port_start, 174 .port_start = ata_port_start,
173}; 175};
@@ -191,6 +193,8 @@ static struct ata_port_operations legacy_port_ops = {
191 193
192 .irq_handler = ata_interrupt, 194 .irq_handler = ata_interrupt,
193 .irq_clear = ata_bmdma_irq_clear, 195 .irq_clear = ata_bmdma_irq_clear,
196 .irq_on = ata_irq_on,
197 .irq_ack = ata_irq_ack,
194 198
195 .port_start = ata_port_start, 199 .port_start = ata_port_start,
196}; 200};
@@ -301,6 +305,8 @@ static struct ata_port_operations pdc20230_port_ops = {
301 305
302 .irq_handler = ata_interrupt, 306 .irq_handler = ata_interrupt,
303 .irq_clear = ata_bmdma_irq_clear, 307 .irq_clear = ata_bmdma_irq_clear,
308 .irq_on = ata_irq_on,
309 .irq_ack = ata_irq_ack,
304 310
305 .port_start = ata_port_start, 311 .port_start = ata_port_start,
306}; 312};
@@ -351,6 +357,8 @@ static struct ata_port_operations ht6560a_port_ops = {
351 357
352 .irq_handler = ata_interrupt, 358 .irq_handler = ata_interrupt,
353 .irq_clear = ata_bmdma_irq_clear, 359 .irq_clear = ata_bmdma_irq_clear,
360 .irq_on = ata_irq_on,
361 .irq_ack = ata_irq_ack,
354 362
355 .port_start = ata_port_start, 363 .port_start = ata_port_start,
356}; 364};
@@ -412,6 +420,8 @@ static struct ata_port_operations ht6560b_port_ops = {
412 420
413 .irq_handler = ata_interrupt, 421 .irq_handler = ata_interrupt,
414 .irq_clear = ata_bmdma_irq_clear, 422 .irq_clear = ata_bmdma_irq_clear,
423 .irq_on = ata_irq_on,
424 .irq_ack = ata_irq_ack,
415 425
416 .port_start = ata_port_start, 426 .port_start = ata_port_start,
417}; 427};
@@ -528,6 +538,8 @@ static struct ata_port_operations opti82c611a_port_ops = {
528 538
529 .irq_handler = ata_interrupt, 539 .irq_handler = ata_interrupt,
530 .irq_clear = ata_bmdma_irq_clear, 540 .irq_clear = ata_bmdma_irq_clear,
541 .irq_on = ata_irq_on,
542 .irq_ack = ata_irq_ack,
531 543
532 .port_start = ata_port_start, 544 .port_start = ata_port_start,
533}; 545};
@@ -656,6 +668,8 @@ static struct ata_port_operations opti82c46x_port_ops = {
656 668
657 .irq_handler = ata_interrupt, 669 .irq_handler = ata_interrupt,
658 .irq_clear = ata_bmdma_irq_clear, 670 .irq_clear = ata_bmdma_irq_clear,
671 .irq_on = ata_irq_on,
672 .irq_ack = ata_irq_ack,
659 673
660 .port_start = ata_port_start, 674 .port_start = ata_port_start,
661}; 675};