aboutsummaryrefslogtreecommitdiff
path: root/arch/sparc64/kernel/psycho_common.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-09-10 03:52:51 -0700
committerDavid S. Miller <davem@davemloft.net>2008-09-10 23:11:58 -0700
commite6e003720fd7123482f77dcec19e930d272937fe (patch)
tree4b08ce49ffc264b7c2e8ae9a7c4650e9f4eff63b /arch/sparc64/kernel/psycho_common.h
parent1c03a55cdf309d0939e881b313abbe7e9a67d95e (diff)
sparc64: Commonize large portions of PSYCHO error handling.
The IOMMU and streaming cache error interrogation is moved here as well as the PCI error interrupt handler. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/psycho_common.h')
-rw-r--r--arch/sparc64/kernel/psycho_common.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/sparc64/kernel/psycho_common.h b/arch/sparc64/kernel/psycho_common.h
index adfbadb6986..b53aa8dcad2 100644
--- a/arch/sparc64/kernel/psycho_common.h
+++ b/arch/sparc64/kernel/psycho_common.h
@@ -1,6 +1,17 @@
#ifndef _PSYCHO_COMMON_H
#define _PSYCHO_COMMON_H
+enum psycho_error_type {
+ UE_ERR, CE_ERR, PCI_ERR
+};
+
+extern void psycho_check_iommu_error(struct pci_pbm_info *pbm,
+ unsigned long afsr,
+ unsigned long afar,
+ enum psycho_error_type type);
+
+extern irqreturn_t psycho_pcierr_intr(int irq, void *dev_id);
+
extern int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize,
u32 dvma_offset, u32 dma_mask,
unsigned long write_complete_offset);