aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/include/asm
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-02-01 02:39:46 -0500
committerPaul Mundt <lethal@linux-sh.org>2010-02-01 02:39:46 -0500
commitef407beefbd9928792ccc93857e408e0057bc17b (patch)
treef98fc1e6eaa7d00b578d759f612d815cd7a7391a /arch/sh/include/asm
parentbcf39352eb9e9026f7a1028d4bce3707b65f104b (diff)
sh: Hook up ERR/PERR/SERR detection for SH7780 PCI host controllers.
These were never handled before, so implement some common infrastructure to support them, then make use of that in the SH7780-specific code. In practice there is little here that can not be generalized for SH4 parts, which will be an incremental change as the 7780/7751 code is gradually unified. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/include/asm')
-rw-r--r--arch/sh/include/asm/pci.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/sh/include/asm/pci.h b/arch/sh/include/asm/pci.h
index bbd10cf79825..1de83f2161f7 100644
--- a/arch/sh/include/asm/pci.h
+++ b/arch/sh/include/asm/pci.h
@@ -29,9 +29,20 @@ struct pci_channel {
29 29
30 unsigned int index; 30 unsigned int index;
31 unsigned int need_domain_info; 31 unsigned int need_domain_info;
32
33 /* Optional error handling */
34 struct timer_list err_timer, serr_timer;
35 unsigned int err_irq, serr_irq;
32}; 36};
33 37
38/* arch/sh/drivers/pci/pci.c */
34extern int register_pci_controller(struct pci_channel *hose); 39extern int register_pci_controller(struct pci_channel *hose);
40extern void pcibios_report_status(unsigned int status_mask, int warn);
41
42/* arch/sh/drivers/pci/common.c */
43extern void pcibios_enable_timers(struct pci_channel *hose);
44extern unsigned int pcibios_handle_status_errors(unsigned long addr,
45 unsigned int status, struct pci_channel *hose);
35extern int pci_is_66mhz_capable(struct pci_channel *hose, 46extern int pci_is_66mhz_capable(struct pci_channel *hose,
36 int top_bus, int current_bus); 47 int top_bus, int current_bus);
37 48