diff options
author | Jennifer Averett <Jennifer.Averett@OARcorp.com> | 2005-04-28 14:16:29 +0000 |
---|---|---|
committer | Jennifer Averett <Jennifer.Averett@OARcorp.com> | 2005-04-28 14:16:29 +0000 |
commit | bb41881ee3f8012a3117a2786de82a8c9c64caf1 (patch) | |
tree | d761cc03ec7462f4589b52cf716e80457f2490ef /c/src/lib/libbsp/powerpc/score603e/include | |
parent | 2005-04-28 Jennifer Averett <jennifer.averett@oarcorp.com> (diff) | |
download | rtems-bb41881ee3f8012a3117a2786de82a8c9c64caf1.tar.bz2 |
2005-04-28 Jennifer Averett <jennifer.averett@oarcorp.com>
* score603e/Makefile.am, score603e/configure.ac,
score603e/console/console.c, score603e/include/bsp.h,
score603e/include/gen2.h, score603e/include/tm27.h,
score603e/startup/bspstart.c: Update score603e to new exception model
NOTE: These modifications have not been tested on hardware.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/score603e/include')
-rw-r--r-- | c/src/lib/libbsp/powerpc/score603e/include/bsp.h | 5 | ||||
-rw-r--r-- | c/src/lib/libbsp/powerpc/score603e/include/gen2.h | 10 | ||||
-rw-r--r-- | c/src/lib/libbsp/powerpc/score603e/include/tm27.h | 17 |
3 files changed, 28 insertions, 4 deletions
diff --git a/c/src/lib/libbsp/powerpc/score603e/include/bsp.h b/c/src/lib/libbsp/powerpc/score603e/include/bsp.h index db7797c2b1..5ae21308e6 100644 --- a/c/src/lib/libbsp/powerpc/score603e/include/bsp.h +++ b/c/src/lib/libbsp/powerpc/score603e/include/bsp.h @@ -20,6 +20,11 @@ extern "C" { #endif #include <bspopts.h> +#include <rtems.h> +#include <rtems/console.h> +#include <libcpu/io.h> +#include <rtems/clockdrv.h> +#include <bsp/vectors.h> /* * confdefs.h overrides for this BSP: diff --git a/c/src/lib/libbsp/powerpc/score603e/include/gen2.h b/c/src/lib/libbsp/powerpc/score603e/include/gen2.h index 357b446594..d3a8043753 100644 --- a/c/src/lib/libbsp/powerpc/score603e/include/gen2.h +++ b/c/src/lib/libbsp/powerpc/score603e/include/gen2.h @@ -47,10 +47,12 @@ extern "C" { /* * PSC8 - PMC Card */ +/* address of our ram on the PCI bus */ +#define PCI_DRAM_OFFSET PREP_PCI_DRAM_OFFSET #define BSP_PCI_CONFIGURATION_BASE 0x80800000 #define BSP_PMC_BASE BSP_PCI_CONFIGURATION_BASE +#define PCI_MEM_BASE_ADJUSTMENT 0 #define BSP_PCI_PMC_DEVICE_BASE 0x80808000 - #define BSP_PCI_REGISTER_BASE 0xfc000000 #define BSP_PCI_DEVICE_ADDRESS( _offset) \ @@ -80,12 +82,14 @@ extern "C" { #define SCORE603E_85C30_CTRL_11 BSP_PMC_SERIAL_ADDRESS(0x200018) #define SCORE603E_85C30_DATA_11 BSP_PMC_SERIAL_ADDRESS(0x20001c) +#define _IO_BASE PREP_ISA_IO_BASE #define SCORE603E_PCI_IO_CFG_ADDR 0x80000cf8 #define SCORE603E_PCI_IO_CFG_DATA 0x80000cfc #define SCORE603E_UNIVERSE_BASE 0x80030000 #define SCORE603E_IO_VME_UNIVERSE_BASE 0x80007000 -#define BSP_PCI_MEM_BASE 0xc0000000 +#define PCI_MEM_BASE 0xc0000000 +#define BSP_PCI_MEM_BASE PCI_MEM_BASE /* XXX - May want to remove this later */ #define BSP_NVRAM_BASE 0xfd100000 #define BSP_RTC_ADDRESS ((volatile unsigned char *)0xfd180000) #define SCORE603E_JP1_JP2_PROM_BASE 0xfff00000 @@ -245,6 +249,8 @@ extern "C" { /* to start/stop the timer. */ #define BSP_TIMER_LEAST_VALID 1 /* Don't trust a value lower than this */ +#define BSP_PIC_DO_EOI /* XXX - Don't know what this corresponds to on the score board */ + /* * Convert decrement value to tenths of microsecnds (used by * shared timer driver). diff --git a/c/src/lib/libbsp/powerpc/score603e/include/tm27.h b/c/src/lib/libbsp/powerpc/score603e/include/tm27.h index d4b3b4a5a6..2f7feb0fb2 100644 --- a/c/src/lib/libbsp/powerpc/score603e/include/tm27.h +++ b/c/src/lib/libbsp/powerpc/score603e/include/tm27.h @@ -15,14 +15,27 @@ #ifndef __tm27_h #define __tm27_h +#include <bsp/irq.h> + /* * Stuff for Time Test 27 */ #define MUST_WAIT_FOR_INTERRUPT 1 -#define Install_tm27_vector( _handler ) \ - set_vector( (_handler), PPC_IRQ_DECREMENTER, 1 ) +static rtems_irq_connect_data clockIrqData = {BSP_DECREMENTER, + 0, + (rtems_irq_enable)nullFunc, + (rtems_irq_disable)nullFunc, + (rtems_irq_is_enabled) nullFunc}; +void Install_tm27_vector(void (*_handler)()) +{ + clockIrqData.hdl = _handler; + if (!BSP_install_rtems_irq_handler (&clockIrqData)) { + printk("Error installing clock interrupt handler!\n"); + rtems_fatal_error_occurred(1); + } +} #define Cause_tm27_intr() \ do { \ |