aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/libata.h
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-03-05 01:29:09 -0500
committerJeff Garzik <jeff@garzik.org>2006-03-11 17:57:20 -0500
commit86e45b6bd6900c4a0b3666fb18b46e215f775c4f (patch)
tree5b86ebd0b0b17d05bdfdd07b7683f7348577b52a /include/linux/libata.h
parentd7fc3ca1cd0ecce82263299c6b1631fc83b0ec79 (diff)
[PATCH] libata: implement port_task
Implement port_task. LLDD's can schedule a function to be executed with context after specified delay. libata core takes care of synchronization against EH. This is generalized form of pio_task and packet_task which are tied to PIO hsm implementation. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'include/linux/libata.h')
-rw-r--r--include/linux/libata.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 66dce58f1941..3ad2570f663b 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -388,6 +388,8 @@ struct ata_port {
388 struct ata_host_stats stats; 388 struct ata_host_stats stats;
389 struct ata_host_set *host_set; 389 struct ata_host_set *host_set;
390 390
391 struct work_struct port_task;
392
391 struct work_struct packet_task; 393 struct work_struct packet_task;
392 394
393 struct work_struct pio_task; 395 struct work_struct pio_task;
@@ -515,6 +517,8 @@ extern int ata_ratelimit(void);
515extern unsigned int ata_busy_sleep(struct ata_port *ap, 517extern unsigned int ata_busy_sleep(struct ata_port *ap,
516 unsigned long timeout_pat, 518 unsigned long timeout_pat,
517 unsigned long timeout); 519 unsigned long timeout);
520extern void ata_port_queue_task(struct ata_port *ap, void (*fn)(void *),
521 void *data, unsigned long delay);
518 522
519/* 523/*
520 * Default driver ops implementations 524 * Default driver ops implementations