summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/shared/include
diff options
context:
space:
mode:
authorDaniel Hellstrom <daniel@gaisler.com>2013-05-08 14:41:13 +0200
committerDaniel Hellstrom <daniel@gaisler.com>2015-04-17 01:10:19 +0200
commitffd8002dbd89aa923c3ee962ca20c11ecc220bc1 (patch)
treeec37b4a0a6f89ad7c59d6442018400c45bf58175 /c/src/lib/libbsp/sparc/shared/include
parentGRPCI2: updated register layout to newer specification (diff)
downloadrtems-ffd8002dbd89aa923c3ee962ca20c11ecc220bc1.tar.bz2
GR-CPCI-LEON4-N2X: added PCI peripheral driver for PCI device
Interrupts have not been test yet
Diffstat (limited to 'c/src/lib/libbsp/sparc/shared/include')
-rw-r--r--c/src/lib/libbsp/sparc/shared/include/gr_leon4_n2x.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/include/gr_leon4_n2x.h b/c/src/lib/libbsp/sparc/shared/include/gr_leon4_n2x.h
new file mode 100644
index 0000000000..6940c2c227
--- /dev/null
+++ b/c/src/lib/libbsp/sparc/shared/include/gr_leon4_n2x.h
@@ -0,0 +1,58 @@
+/* GR-CPCI-LEON4-N2X (NGFP) PCI Peripheral driver
+ *
+ * COPYRIGHT (c) 2013.
+ * Cobham Gaisler AB.
+ *
+ * The license and distribution terms for this file may be
+ * found in found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * Configures the GR-CPIC-LEON4-N2X interface PCI board in peripheral
+ * mode. This driver provides a AMBA PnP bus by using the general part
+ * of the AMBA PnP bus driver (ambapp_bus.c).
+ *
+ *
+ * Driver resource options:
+ * NAME DEFAULT VALUE
+ * ahbmst2pci _RAM_START AMBA->PCI translation PCI base address
+ * ambaFreq 200000000 (200MHz) AMBA system frequency of LEON4-N2X
+ * cgEnMask 0x1f (all) Clock gating enable mask
+ *
+ * TODO/UNTESTED
+ * Interrupt testing
+ * bar0 RESOURCE 0x00000000 L2-Cache SDRAM memory
+ * bar1 RESOURCE 0xf0000000 L2-Cache registers
+ */
+
+#ifndef __GR_CPCI_LEON4_N2X_H__
+#define __GR_CPCI_LEON4_N2X_H__
+
+#include <drvmgr/drvmgr.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* An array of pointers to GR-CPCI-LEON4-N2X resources. The resources will be
+ * used by the drivers controlling the cores on the GR-CPCI-LEON4-N2X target
+ * AMBA bus.
+ *
+ * The gr_leon4_n2x_resources is declared weak so that the user can override the
+ * default configuration.
+ */
+extern struct drvmgr_bus_res *gr_leon4_n2x_resources[];
+
+/* Options to gr_cpci_leon4_n2x_print function */
+#define GR_LEON4_N2X_OPTIONS_AMBA 0x01 /* Print AMBA bus devices */
+
+/* Print information about GR-CPCI-LEON4-N2X PCI board */
+void gr_leon4_n2x_print(int options);
+
+/* Register GR-CPCI-LEON4-N2X driver */
+void gr_cpci_leon4_n2x_register_drv(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif