diff options
| author | Jeff Garzik <jgarzik@pobox.com> | 2004-07-02 16:08:29 -0400 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2004-07-02 16:08:29 -0400 |
| commit | 14d463397e3358aa2ccf0bb6846381c21b36d9b9 (patch) | |
| tree | d72108300b05d9233bf3e5558a03593e6336fbfd /include/linux/libata.h | |
| parent | 004a3668794a9ed1349b3b786987871100fc8389 (diff) | |
[libata] add ->qc_issue hook
This hook is used when an ATA controller wishes to use
hardware-specific methods of taskfile delivery, rather
than the standard method of bitbanging the ATA shadow
registers.
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 a40286d08e23..6e8f0f00054e 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h @@ -311,7 +311,10 @@ struct ata_port_operations { void (*bmdma_setup) (struct ata_queued_cmd *qc); void (*bmdma_start) (struct ata_queued_cmd *qc); + void (*qc_prep) (struct ata_queued_cmd *qc); + int (*qc_issue) (struct ata_queued_cmd *qc); + void (*eng_timeout) (struct ata_port *ap); irqreturn_t (*irq_handler)(int, void *, struct pt_regs *); @@ -372,6 +375,7 @@ extern int ata_port_start (struct ata_port *ap); extern void ata_port_stop (struct ata_port *ap); extern irqreturn_t ata_interrupt (int irq, void *dev_instance, struct pt_regs *regs); extern void ata_qc_prep(struct ata_queued_cmd *qc); +extern int ata_qc_issue_prot(struct ata_queued_cmd *qc); extern void ata_dev_id_string(struct ata_device *dev, unsigned char *s, unsigned int ofs, unsigned int len); extern void ata_bmdma_setup_mmio (struct ata_queued_cmd *qc); |
