diff options
author | Till Straumann <strauman@slac.stanford.edu> | 2009-09-11 17:13:42 +0000 |
---|---|---|
committer | Till Straumann <strauman@slac.stanford.edu> | 2009-09-11 17:13:42 +0000 |
commit | b09423368b6c6fade8a66d94a07381423090a242 (patch) | |
tree | 7db9b7d5dd516d34b000e9419fd44a0935fda34c /c/src/lib/libbsp/powerpc/psim/irq/irq_init.c | |
parent | 2009-09-11 Till Straumann <strauman@slac.stanford.edu> (diff) | |
download | rtems-b09423368b6c6fade8a66d94a07381423090a242.tar.bz2 |
2009-09-11 Till Straumann <strauman@slac.stanford.edu>
* Makefile.am, preinstall.am, irq/no_pic.c (REMOVED),
irq/irq.h, irq/irq_init.c:
use openpic from 'shared' area instead of no_pic.
* inlude/psim.h:
use openpic from 'shared' area instead of no_pic.
Added 'extern' declaration for (linker-script defined) RamBase
and RamSize symbols. Let CPP macros expand to these symbols
instead of static constants.
Added register definitions for OpenPIC in the register area.
Added register definitions for ethernet controller in the register
area.
* startup/linkcmds: Increased RamSize to 16M. Increased 'RAM'
memory region to 32M (there is really no disadvantage in making
this large). Added comment explaining the inter-relation between
RamSize, the size of the memory region, the device-tree property
"oea-memory-size" and the DBAT setting.
* tools/psim-shared: Try to determine RamSize from executable
and set 'oea-memory-size' accordingly. May be overridden if 'RAM_SIZE'
envvar is set.
Added openpic to device-tree.
Added ethernet controller to device-tree (commented because a PSIM
patch is currently required to use this device).
* startup/bspstart: Increase DBAT0 mapping to size of 32M.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/psim/irq/irq_init.c')
-rw-r--r-- | c/src/lib/libbsp/powerpc/psim/irq/irq_init.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/psim/irq/irq_init.c b/c/src/lib/libbsp/powerpc/psim/irq/irq_init.c index 7a9e182277..b8d2f70271 100644 --- a/c/src/lib/libbsp/powerpc/psim/irq/irq_init.c +++ b/c/src/lib/libbsp/powerpc/psim/irq/irq_init.c @@ -19,8 +19,10 @@ #include <libcpu/spr.h> #include <bsp/irq.h> #include <bsp.h> +#include <psim.h> #include <libcpu/raw_exception.h> #include <rtems/bspIo.h> +#include <bsp/openpic.h> static rtems_irq_connect_data rtemsIrq[BSP_IRQ_NUMBER]; static rtems_irq_global_settings initial_config; @@ -48,6 +50,8 @@ void BSP_rtems_irq_mng_init(unsigned cpuId) /* * First initialize the Interrupt management hardware */ + OpenPIC = (void*)PSIM.OpenPIC; + openpic_init(1,0,0,16,0,0); /* * Initialize Rtems management interrupt table @@ -68,6 +72,10 @@ void BSP_rtems_irq_mng_init(unsigned cpuId) initial_config.irqBase = BSP_LOWEST_OFFSET; initial_config.irqPrioTbl = irqPrioTable; + for (i = BSP_PCI_IRQ_LOWEST_OFFSET; i< BSP_PCI_IRQ_NUMBER; i++ ) { + irqPrioTable[i] = 8; + } + if (!BSP_rtems_irq_mngt_set(&initial_config)) { /* * put something here that will show the failure... |