summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/motorola_powerpc/include
diff options
context:
space:
mode:
authorTill Straumann <strauman@slac.stanford.edu>2011-07-16 01:29:45 +0000
committerTill Straumann <strauman@slac.stanford.edu>2011-07-16 01:29:45 +0000
commitf616734f3ad754aa9b7cefaa0fb0e03c7a5b6b3a (patch)
treebb2e6de202975e79dc37fb3e9f83127c127857a7 /c/src/lib/libbsp/powerpc/motorola_powerpc/include
parent2011-07-15 Till Straumann <strauman@slac.stanford.edu> (diff)
downloadrtems-f616734f3ad754aa9b7cefaa0fb0e03c7a5b6b3a.tar.bz2
2011-07-15 Till Straumann <strauman@slac.stanford.edu>
* motorola_powerpc/Makefile.am, motorola_powerpc/configure.ac, motorola_powerpc/preinstall.am, motorola_powerpc/include/bsp.h, motorola_powerpc/make/custom/qemuprep.cfg, motorola_powerpc/qemu_fakerom/Makefile.am, motorola_powerpc/qemu_fakerom/.cvsignore: Added 'qemuprep' BSP variant.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/motorola_powerpc/include')
-rw-r--r--c/src/lib/libbsp/powerpc/motorola_powerpc/include/bsp.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/motorola_powerpc/include/bsp.h b/c/src/lib/libbsp/powerpc/motorola_powerpc/include/bsp.h
index 5b7e5ff255..f1e7fd5ff5 100644
--- a/c/src/lib/libbsp/powerpc/motorola_powerpc/include/bsp.h
+++ b/c/src/lib/libbsp/powerpc/motorola_powerpc/include/bsp.h
@@ -19,6 +19,14 @@
#include <libcpu/io.h>
#include <rtems/clockdrv.h>
#include <bsp/vectors.h>
+
+#ifdef qemu
+#include <rtems/bspcmdline.h>
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
/*
* confdefs.h overrides for this BSP:
@@ -86,11 +94,17 @@
#else
#define _IO_BASE PREP_ISA_IO_BASE
#define _ISA_MEM_BASE PREP_ISA_MEM_BASE
+#ifndef qemu
/* address of our ram on the PCI bus */
#define PCI_DRAM_OFFSET PREP_PCI_DRAM_OFFSET
/* offset of pci memory as seen from the CPU */
#define PCI_MEM_BASE PREP_ISA_MEM_BASE
#define PCI_MEM_WIN0 0
+#else
+#define PCI_DRAM_OFFSET 0
+#define PCI_MEM_BASE 0
+#define PCI_MEM_WIN0 PREP_ISA_MEM_BASE
+#endif
#endif
@@ -112,8 +126,10 @@
#define BSP_UART_IOBASE_COM1 ((_IO_BASE)+0x3f8)
#define BSP_UART_IOBASE_COM2 ((_IO_BASE)+0x2f8)
+#if ! defined(qemu)
#define BSP_KBD_IOBASE ((_IO_BASE)+0x60)
#define BSP_VGA_IOBASE ((_IO_BASE)+0x3c0)
+#endif
#if defined(mvme2300)
#define MVME_HAS_DEC21140
@@ -130,6 +146,17 @@ struct rtems_bsdnet_ifconfig;
extern int rtems_dec21140_driver_attach();
#endif
+#ifdef qemu
+#define RTEMS_BSP_NETWORK_DRIVER_NAME "ne1"
+#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_ne_driver_attach
+extern int rtems_ne_driver_attach();
+#endif
+
+#ifdef qemu
+#define BSP_IDLE_TASK_BODY bsp_ppc_idle_task_body
+extern void *bsp_ppc_idle_task_body(uintptr_t arg);
+#endif
+
#include <bsp/openpic.h>
/* BSP_PIC_DO_EOI is optionally used by the 'vmeUniverse' driver
* to implement VME IRQ priorities in software.
@@ -208,4 +235,8 @@ extern unsigned long _BSP_clear_hostbridge_errors(int enableMCP, int quiet);
#endif
+#ifdef __cplusplus
+};
+#endif
+
#endif