This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: VSR attach problem
- From: "Vikas K. Prasad" <vikas dot prasad at ittiam dot com>
- To: <ecos-discuss at sources dot redhat dot com>
- Cc: "Vikas K. Prasad" <vikas dot prasad at ittiam dot com>
- Date: Wed, 6 Oct 2004 20:40:08 +0530
- Subject: [ECOS] RE: VSR attach problem
Another observation is that in a port (for different
platform), the 'hal_vsr_table' was at location 0x20
whereas in my port it is at '0x4100040'. Anything
special that needs to be done in the platform port
to make this happen?
Context: I have done an excalibur port to a custom
board of ours where most of the features of ecos is
working including ISR and DSR. Now I am trying to
get the VSR to work.
Vikas
-----Original Message-----
From: Vikas K. Prasad
Sent: Wednesday, October 06, 2004 8:14 PM
To: 'ecos-discuss@sources.redhat.com'
Cc: Vikas K. Prasad
Subject: VSR attach problem
Hi,
I want to use my own VSR and so I am using the API
cyg_interrupt_get_vsr() to first get the installed
IRQ. Then I set my VSR handler using the API
cyg_interrupt_set_vsr().
The problem that I am facing is, after the function
cyg_interrupt_get_vsr() executes, I am not getting
the value IRQ address from location 0x...38. I
expected to get 0x041003f4 but some other value is
coming.
Here is the asm code from objdump. Can you please
let me know where the problem is?
NOTE: ISR is working fine.
Disassembly of section .rom_vectors:
04100000 <__exception_handlers>:
4100000: e59ff018 ldr pc, [pc, #24] ; 4100020 <vectors>
4100004: e59ff018 ldr pc, [pc, #24] ; 4100024 <.undefined_instruction>
4100008: e59ff018 ldr pc, [pc, #24] ; 4100028 <.software_interrupt>
410000c: e59ff018 ldr pc, [pc, #24] ; 410002c <.abort_prefetch>
4100010: e59ff018 ldr pc, [pc, #24] ; 4100030 <.abort_data>
4100014: 00000000 andeq r0, r0, r0
4100018: e59ff018 ldr pc, [pc, #24] ; 4100038 <.IRQ>
410001c: e59ff018 ldr pc, [pc, #24] ; 410003c <.FIQ>
04100020 <vectors>:
4100020: 04100180 ldreq r0, [r0], -#384
04100024 <.undefined_instruction>:
4100024: 04100270 ldreq r0, [r0], -#624
04100028 <.software_interrupt>:
4100028: 04100294 ldreq r0, [r0], -#660
0410002c <.abort_prefetch>:
410002c: 041002c0 ldreq r0, [r0], -#704
04100030 <.abort_data>:
4100030: 041002dc ldreq r0, [r0], -#732
4100034: 00000000 andeq r0, r0, r0
04100038 <.IRQ>:
4100038: 041003f4 ldreq r0, [r0], -#1012
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss