HWI Module
Application Program Interface
2-153
address is located in ROM space, it is not programmable. DSP/BIOS
does not report an error if it is unable to modify the value at this
address to set the specified stack mode.
Tconf Name: STACKMODE
Type: EnumString
Options:
"C54X_STK", "USE_RETA", "NO_RETA"
Example:
bios.HWI.STACKMODE = "C54X_STK";
To set the ’C55x stackmode, perform all of the following steps:
■
Set the stackmode configuration property to the mode you want
to use in your configuration using a statement similar to the
preceding example.
■
Add the following arguments to your linker command line. These
arguments force a soft reset using the RAM-based interrupt
vector table.
-u C55_c_int00 -e C55_c_int00
■
Make sure the .hwi_vec memory section (the interrupt vector
table) is located in RAM. By default, this section is automatically
located at the top of RAM.
❏
Interrupt Controller Base.
By default, the OMAP 2420 Level 2
Interrupt Controller (L2IC) resides at data memory address
0x7e4800. This coincides with the reset IOMA value of 0x3f. For
OMAP 2320, the default base address is 0x7c4800, which coincides
with the reset IOMA value of 0x3e. The IO MAP (IOMA) base address
is the page index used to access DSP I/O space addresses from
DSP memory space. If you modify IOMA for any reason, you need to
use this property to tell DSP/BIOS the new base address for the
L2IC. (OMAP 2320/2420 only)
Tconf Name: INTC_BASE
Type: Numeric
Example:
bios.HWI.INTC_BASE = 0x7e4800;
HWI Object Properties
The following properties can be set for an HWI object in the HWI Object
Properties dialog of the DSP/BIOS Configuration Tool or in a Tconf script.
The HWI objects for the platform are provided in the default configuration
and cannot be created.
❏
comment
. A comment is provided to identify each HWI object.
Tconf Name: comment
Type: String
Example:
bios.HWI_INT2.comment = "myISR";
❏
function
. The function to execute. Interrupt routines that use the
dispatcher can be written completely in C or any combination of
assembly and C but must not call the HWI_enter/HWI_exit macro
pair. Interrupt routines that don’t use the dispatcher must be written