diff options
author | Tejun Heo <htejun@gmail.com> | 2006-03-05 15:29:09 +0900 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-03-11 17:57:20 -0500 |
commit | 86e45b6bd6900c4a0b3666fb18b46e215f775c4f (patch) | |
tree | 5b86ebd0b0b17d05bdfdd07b7683f7348577b52a /include/linux/libata.h | |
parent | d7fc3ca1cd0ecce82263299c6b1631fc83b0ec79 (diff) | |
download | op-kernel-dev-86e45b6bd6900c4a0b3666fb18b46e215f775c4f.zip op-kernel-dev-86e45b6bd6900c4a0b3666fb18b46e215f775c4f.tar.gz |
[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.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h index 66dce58..3ad2570 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h @@ -388,6 +388,8 @@ struct ata_port { struct ata_host_stats stats; struct ata_host_set *host_set; + struct work_struct port_task; + struct work_struct packet_task; struct work_struct pio_task; @@ -515,6 +517,8 @@ extern int ata_ratelimit(void); extern unsigned int ata_busy_sleep(struct ata_port *ap, unsigned long timeout_pat, unsigned long timeout); +extern void ata_port_queue_task(struct ata_port *ap, void (*fn)(void *), + void *data, unsigned long delay); /* * Default driver ops implementations |