aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/htirq.h
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2006-11-08 17:44:57 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-11-08 18:29:25 -0800
commit43539c38cd8edb915d1f0e1f55dcb70638b4cc8e (patch)
tree623568ee8f87684be487145fbc7a5da16320afde /include/linux/htirq.h
parent[PATCH] htirq: refactor so we only have one function that writes to the chip (diff)
downloadlinux-dev-43539c38cd8edb915d1f0e1f55dcb70638b4cc8e.tar.xz
linux-dev-43539c38cd8edb915d1f0e1f55dcb70638b4cc8e.zip
[PATCH] htirq: allow buggy drivers of buggy hardware to write the registers
This patch adds a variant of ht_create_irq __ht_create_irq that takes an aditional parameter update that is a function that is called whenever we want to write to a drivers htirq configuration registers. This is needed to support the ipath_iba6110 because it's registers in the proper location are not actually conected to the hardware that controlls interrupt delivery. [bos@serpentine.com: fixes] Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Cc: Andi Kleen <ak@suse.de> Cc: <olson@pathscale.com> Cc: Roland Dreier <rolandd@cisco.com> Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/htirq.h')
-rw-r--r--include/linux/htirq.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/htirq.h b/include/linux/htirq.h
index 108f0d91e11e..c96ea46737d0 100644
--- a/include/linux/htirq.h
+++ b/include/linux/htirq.h
@@ -15,4 +15,9 @@ void unmask_ht_irq(unsigned int irq);
/* The arch hook for getting things started */
int arch_setup_ht_irq(unsigned int irq, struct pci_dev *dev);
+/* For drivers of buggy hardware */
+typedef void (ht_irq_update_t)(struct pci_dev *dev, int irq,
+ struct ht_irq_msg *msg);
+int __ht_create_irq(struct pci_dev *dev, int idx, ht_irq_update_t *update);
+
#endif /* LINUX_HTIRQ_H */