Module Name: src
Committed By: cliff
Date: Fri Jan 29 00:23:35 UTC 2010
Modified Files:
src/sys/arch/mips/rmi [matt-nb5-mips64]: rmixl_pcievar.h
Log Message:
- add pcie interrupt dispatch stuff
To generate a diff of this commit:
cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/mips/rmi/rmixl_pcievar.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/mips/rmi/rmixl_pcievar.h
diff -u src/sys/arch/mips/rmi/rmixl_pcievar.h:1.1.2.2 src/sys/arch/mips/rmi/rmixl_pcievar.h:1.1.2.3
--- src/sys/arch/mips/rmi/rmixl_pcievar.h:1.1.2.2 Sun Nov 15 23:11:06 2009
+++ src/sys/arch/mips/rmi/rmixl_pcievar.h Fri Jan 29 00:23:34 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: rmixl_pcievar.h,v 1.1.2.2 2009/11/15 23:11:06 cliff Exp $ */
+/* $NetBSD: rmixl_pcievar.h,v 1.1.2.3 2010/01/29 00:23:34 cliff Exp $ */
#ifndef _MIPS_RMI_PCIE_VAR_H_
#define _MIPS_RMI_PCIE_VAR_H_
@@ -22,7 +22,30 @@
const rmixl_pcie_lnkcfg_t *cfg;
} rmixl_pcie_lnktab_t;
-struct rmixl_pcie_softc {
+typedef struct rmixl_pcie_link_dispatch {
+ LIST_ENTRY(rmixl_pcie_link_dispatch) next;
+ int (*func)(void *);
+ void *arg;
+ u_int link;
+ u_int bitno;
+ u_int irq;
+ struct evcnt count;
+} rmixl_pcie_link_dispatch_t;
+
+struct rmixl_pcie_softc;
+
+typedef struct rmixl_pcie_link_intr {
+ struct rmixl_pcie_softc *sc;
+ LIST_HEAD(, rmixl_pcie_link_dispatch) dispatch;
+ u_int link;
+ u_int ipl;
+ bool enabled;
+ void *ih; /* mips interrupt handle */
+} rmixl_pcie_link_intr_t;
+
+#define RMIXL_PCIE_NLINKS_MAX 4
+
+typedef struct rmixl_pcie_softc {
device_t sc_dev;
struct mips_pci_chipset sc_pci_chipset;
bus_space_tag_t sc_pcie_cfg_memt;
@@ -31,7 +54,9 @@
bus_dma_tag_t sc_32bit_dmat;
bus_dma_tag_t sc_64bit_dmat;
rmixl_pcie_lnktab_t sc_pcie_lnktab;
-};
+ void *sc_fatal_ih;
+ rmixl_pcie_link_intr_t sc_link_intr[RMIXL_PCIE_NLINKS_MAX];
+} rmixl_pcie_softc_t;
#endif /* _MIPS_RMI_PCIE_VAR_H_ */