summaryrefslogtreecommitdiffstats
path: root/bsps/m68k/mcf52235
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/m68k/mcf52235')
-rw-r--r--bsps/m68k/mcf52235/headers.am6
-rw-r--r--bsps/m68k/mcf52235/include/bsp.h87
-rw-r--r--bsps/m68k/mcf52235/include/tm27.h35
3 files changed, 128 insertions, 0 deletions
diff --git a/bsps/m68k/mcf52235/headers.am b/bsps/m68k/mcf52235/headers.am
new file mode 100644
index 0000000000..b536b21164
--- /dev/null
+++ b/bsps/m68k/mcf52235/headers.am
@@ -0,0 +1,6 @@
+## This file was generated by "./boostrap -H".
+
+include_HEADERS =
+include_HEADERS += ../../../../../../bsps/m68k/mcf52235/include/bsp.h
+include_HEADERS += include/bspopts.h
+include_HEADERS += ../../../../../../bsps/m68k/mcf52235/include/tm27.h
diff --git a/bsps/m68k/mcf52235/include/bsp.h b/bsps/m68k/mcf52235/include/bsp.h
new file mode 100644
index 0000000000..ef3b928a24
--- /dev/null
+++ b/bsps/m68k/mcf52235/include/bsp.h
@@ -0,0 +1,87 @@
+/**
+ * @file
+ *
+ * @ingroup m68k_mcf52235
+ *
+ * @brief Global BSP definitions
+ */
+
+/*
+ * mcf52235 BSP header file
+ */
+
+#ifndef LIBBSP_M68K_MCF52235_BSP_H
+#define LIBBSP_M68K_MCF52235_BSP_H
+
+#include <bspopts.h>
+#include <bsp/default-initial-extension.h>
+#include <rtems.h>
+#include <rtems/bspIo.h>
+
+/***************************************************************************/
+/** Hardware data structure headers **/
+#include <mcf5223x/mcf5223x.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Declare base address of peripherals area */
+#define __IPSBAR ((vuint8 *) 0x40000000)
+
+/***************************************************************************/
+/** Network driver configuration **/
+
+/***************************************************************************/
+/** User Definable configuration **/
+
+/* define which port the console should use - all other ports are then defined as general purpose */
+#define CONSOLE_PORT 0
+
+/* externals */
+
+/* constants */
+
+/* functions */
+
+uint32_t bsp_get_CPU_clock_speed(void);
+
+rtems_isr_entry set_vector(
+ rtems_isr_entry handler,
+ rtems_vector_number vector,
+ int type
+);
+
+/*
+ * Interrupt assignments
+ * Highest-priority listed first
+ */
+
+#define PIT3_IRQ_LEVEL 4
+#define PIT3_IRQ_PRIORITY 0
+
+#define UART0_IRQ_LEVEL 3
+#define UART0_IRQ_PRIORITY 7
+#define UART1_IRQ_LEVEL 3
+#define UART1_IRQ_PRIORITY 6
+#define UART2_IRQ_LEVEL 3
+#define UART2_IRQ_PRIORITY 5
+
+/*
+ * Prototypes for BSP methods which cross file boundaries
+ */
+void Init52235(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+/**
+ * @defgroup m68k_mcf52235 MCF52235 Support
+ *
+ * @ingroup bsp_m68k
+ *
+ * @brief MCF52235 Support Package
+ */
diff --git a/bsps/m68k/mcf52235/include/tm27.h b/bsps/m68k/mcf52235/include/tm27.h
new file mode 100644
index 0000000000..b4b62ef721
--- /dev/null
+++ b/bsps/m68k/mcf52235/include/tm27.h
@@ -0,0 +1,35 @@
+/*
+ * @file
+ * @ingroup m68k_mcf52235
+ * @brief Implementations for interrupt mechanisms for Time Test 27
+ */
+
+/*
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.org/license/LICENSE.
+ */
+
+#ifndef _RTEMS_TMTEST27
+#error "This is an RTEMS internal file you must not include directly."
+#endif
+
+#ifndef __tm27_h
+#define __tm27_h
+
+/*
+ * Stuff for Time Test 27
+ * Don't bother with hardware -- just use a software-interrupt
+ */
+
+#define MUST_WAIT_FOR_INTERRUPT 0
+
+#define Install_tm27_vector( handler ) set_vector( (handler), 35, 1 )
+
+#define Cause_tm27_intr() asm volatile ("trap #3");
+
+#define Clear_tm27_intr() /* empty */
+
+#define Lower_tm27_intr() /* empty */
+
+#endif