This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Interrupt Handler


The opcode

10018: ldr	pc, [pc, #18]

means

"Load the program counter with the address at program counter + 0x18".

This will load the value at 0x10038 (you need to add 8 from the start of the
ldr instruction; see the ARM Reference Manual), which is 0x1037c, into the
program counter. "Loading the program counter" is a synonym for "jump", so
reworded this means:

"Jump to the location specified at address 0x10018 + 0x8 + 0x18 (i.e.
0x10038), which is 0x1037c"

As for not being able to use the serial port, you may need to enable it in
the configuration.

Using the configtool, try checking the box next to "Serial Device
Drivers"/"Hardware Serial Devices Drivers" (i.e. setting
CYGPKG_IO_SERIAL_DEVICES to TRUE) and then maybe checking the box next to
"Serial Device Drivers"/"TTY-mode Serial Devices Drivers"/"TTY-mode Channel
#0" (i.e. setting CYGPKG_IO_SERIAL_TTY_TTY0 to TRUE). This should include
the interrupt driven serial drivers into your configuration. You may need to
recreate the tree and rebuild from scratch to be on the safe side.

Robert Cragie, Design Engineer

Direct: +44 (0) 114 281 4512
________________________________________________________
Jennic Ltd, Furnival Street, Sheffield, S1 4QT,  UK
www.jennic.com  Tel: +44 (0) 114 281 2655


> -----Original Message-----
> From: Vinayak P Risbud [mailto:vinayak@multitech.co.in]
> Sent: 10 July 2002 16:32
> To: Robert Cragie
> Cc: Ecos-Discuss
> Subject: Re: [ECOS] Interrupt Handler
>
>
>             Thanks for your response.
>
>         Can you explain, me bit clearly, why processor considers
>         0x1037c as data, and not as instructrion ?
>         One more problem.
>             I am working on arm e7t board.  I am not able to
>         communicate with serial ports through interrupts.
>         My console works fine,  but, when I tx some char
>         on my port the interrupt controller says, the interrupt
>         is pending and the ARM7 core does not call my interrupt
>         handler
>
>         Can you think of, what exactly could be the problem ?
>
>         Thanks
>             Vinayak
>
> Robert Cragie wrote:
>
> > An interrupt occurs. It runs the code at 0x10018, which jumps to the
> > location specified at 0x10038, which is 0x1037c (ignore the
> disassembly at
> > 0x10038, you are interested in the data here). 0x1037c is the
> start of the
> > interrupt handler, which essentially stacks the required
> registers on the
> > exception stack and then calls hal_IRQ_handler() at line
> 0x103e0. You are
> > now at 0x129ac...
> >
> > Robert Cragie, Design Engineer
> >
> > Direct: +44 (0) 114 281 4512
> > ________________________________________________________
> > Jennic Ltd, Furnival Street, Sheffield, S1 4QT,  UK
> > www.jennic.com  Tel: +44 (0) 114 281 2655
> >
> > > -----Original Message-----
> > > From: ecos-discuss-owner@sources.redhat.com
> > > [mailto:ecos-discuss-owner@sources.redhat.com]On Behalf Of Vinayak P
> > > Risbud
> > > Sent: 10 July 2002 15:23
> > > To: Ecos-Discuss
> > > Subject: [ECOS] Interrupt Handler
> > >
> > >
> > >  Hi,
> > >             I have attatched my some part of redboot.elf
> > >             disassembled file.
> > >             I am not able to follow, how exactly my ISR is
> > >             called upon reception of an interrupt.
> > >
> > >             What I know is, upon IRQ, the control jumps to 0x0018.
> > >             I am not able to follow, how exactly, my ISR which is
> > >             present at 0x129ac is called ?
> > >
> > >             can any one explain me the exact flow ?
> > >
> > >         Thanks
> > >             Vinayak
> > >
> > >
> > >
> >
> > --
> > Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> > and search the list archive: http://sources.redhat.com/ml/ecos-discuss
>
>


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]