[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [rtl] help for a newbie
Without wading through hundreds (thousands?) of lines of devicedriver code which I don't even pretend to understand, I'll still
hazard a guess that the original normal-Linux interrupt service routine probably called one or more normal-Linux functions which
eventually wound their way back to the normal-Linux scheduler. BUT ... That's a BIG NO-NO in an rt-linux ISR. At a minimum you'd
have to go through all of the possible code that could be executed from the ISR and remove or replace every call to a normal-Linux
kernel routine to one that was RTlinux-safe.
Norman Dresner
Fellow Avionics Support Systems Engineer & (SGI) Advanced Signal Processing Laboratory Administrator
Radar Systems Engineering Department
Electronic Systems and Sensors Segment
Northrop Grumman Corporation
Baltimore-Washington International Airport
7323 Aviation Boulevard
Baltimore Maryland 21240
Voice: (410) 993 - 2096 Mornings; all-day voice-mail
(410) 969 - 8068 Afternoons with answering machine
FAX: (410) 993 - 8084 On-site
(410) 969 - 8068 Afternoons; call first to arrange
E-Mail: Mornings: mailto:Norman_A_Dresner@mail.Northgrum.com
Afternoons: mailto:ndrez@att.net
----- Original Message -----
From: Loren Frank <loren@neurostat.mgh.harvard.edu>
To: <rtl@rtlinux.org>
Sent: Wednesday, September 05, 2001 9:39 AM
Subject: [rtl] help for a newbie
> Hi all. I am new to rtlinux and I have a problem I need help with.
>
> Briefly, I need to take the bttv driver for a framegrabber card and modify it
> so that, every time an interrupt is generated, the interrupt service routine is
> serviced by the real time kernel and a timestamp is read from another card. I
> have the real time driver for the other card working, but when I tried to
> convert the interrupt service routine from the bttv-driver.c source, I just
> ended up hanging the machine. I had hoped that a simple modification where I
> changed the request_irq to a rtl_request_irq and changed the interrupt service
> routine would do it....
>
> Can anyone point me toward a solution?
>
> thanks,
>
> Loren Frank
>
> Here is the (modified) driver code. I've modified the module init and clean
> functions as well as the intr_handler routine.
>
> /*