how can I catch an interrupt signal?

Joel Sherrill joel.sherrill at OARcorp.com
Wed Oct 11 17:54:41 UTC 2000



Eric Valette wrote:
> 
> alberto capella wrote:
> >
> > Nick.SIMON at syntegra.bt.co.uk escribió:
> >
> > > > -----Original Message-----
> > > > From: alberto capella [mailto:alberto.capella at terra.es]
> > > > Sent: 07 October 2000 12:49
> > > > To: rtems-users at oarcorp.com
> > > > Subject: how can I catch an interrupt signal?
> > > >
> > > <snip>
> > > >
> > > >   resul=rtems_interrupt_catch(sb16_isr,0x34,&old_isr_handler);
> > > >
> > >
> > > How do you connect IRQ 5 with the 0x34 RTEMS vector you're attaching your
> > > ISR to?  And BTW which BSP are you using?
> > >
> > > -- Nick Simon
> >
> > I'm using the pc386 BSP. My host computer is a i686 running Linux and the
> > target machine is a Pentium-MMX.
> >
> > I ´d like to know what is the second parameter I have to pass to the
> > rtems_interrupt_catch directive if my SB is connected to the IRQ 5, so, what
> > is the value of the "rtems_vector_number  vector"  I have to use?
> >
> > Not only I'd like to know this, but also  if I have to use some special
> > CFLAGS in my Makefile to do my program run correctly.
> 
> On PC386, rtems_interrupt_catch is no more the correct interface. The
> correct interface is described in
> c/src/lib/libbsp/i386/shared/irq/irq.h. If you really want to hook your
> interrupt vectors directly in the IDT then look in
> c/src/lib/libcpu/i386/idt.c and understand that _CPU_ISR_install_vector
> is there only for compatibility reasons...

On top of that, if you install your handler directly into the IDT, then
it is VERY likely you have not taken into account interrupt scheduling.
Please use the interface defined in irq.h.  You can look at any of the
pc386 device drivers for example.

> --
>    __
>   /  `                          Eric Valette - Canon CRF
>  /--   __  o _.                 Canon Development Europe Team Leader
> (___, / (_(_(__                 Rue de la touche lambert
>                                 35517 Cesson-Sevigne  Cedex
>                                 FRANCE
> Tel: +33 (0)2 99 87 68 91       Fax: +33 (0)2 99 84 11 30
> E-mail: valette at crf.canon.fr    http://www.crf.canon.fr

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available                (256) 722-9985



More information about the users mailing list