© Koninklijke Philips Electronics N.V. 2005. All rights reserved.
User manual
Rev. 01 — 15 August 2005
324
Philips Semiconductors
UM10139
Volume 1
Chapter 24: RealMonitor
24.4.11 RMTarget
initialization
While the processor is in a privileged mode, and IRQs are disabled, user must include a
line of code within the start-up sequence of application to call rm_init_entry().
24.4.12 Code
example
The following example shows how to setup stack, VIC, initialize RealMonitor and share
non vectored interrupts:
IMPORT rm_init_entry
IMPORT rm_prefetchabort_handler
IMPORT rm_dataabort_handler
IMPORT rm_irqhandler2
IMPORT rm_undef_handler
IMPORT User_Entry ;Entry point of user application.
CODE32
ENTRY
;Define exception table. Instruct linker to place code at address 0x0000 0000
AREA exception_table, CODE
LDR pc, Reset_Address
LDR pc, Undefined_Address
LDR pc, SWI_Address
LDR pc, Prefetch_Address
LDR pc, Abort_Address
NOP ; Insert User code valid signature here.
Fig 72. Exception handlers
RM_UNDEF_HANDLER()
RM_PREFETCHABORT_HANDLER()
RM_DATAABORT_HANDLER()
RM_IRQHANDLER()
RESET
FIQ
IRQ
RESERVED
DATA ABORT
PREFETCH
ABORT
SWI
UNDEF
Real monitor supplied exception vector handlers
Sharing IRQs between ReaMonitor and User IRQ handler
OR
APP_IRQDISPATCH
RM_IRQHANDLER2()
APP_IRQHANDLER2()