what I am doing is...
disabling interrupts on keyboard driver, enabling the same in my rtl
module. then, reading the data from KBD_DATA_REG and putting it onto the
FIFO. But now this data has to be passed to the actual kbd driver which
will process things as usual. So, I need to read the data from the fifo.
For this, I need to do an open in the driver which is not possible as
open, read, write are user level libraries. Correct me if I am wrong.
This is what I want to do
------- Read -----------------
INTR->| RTL |<----------|KBD_DATA_REG |
| | ----------------- -----------------
| |----------------------------->|KBD driver
|-->process as usual
------- Read from FIFO or shm or any |(intr disabled) |
other way
------------------
Please suggest me how to go about it. Please also provide me pointers
for more info
-----Original Message-----
From: Anders Gnistrup [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 24, 2001 8:30 PM
To: [EMAIL PROTECTED]
Subject: Re: [rtl] communication between
Sreeramkr wrote:
> Hi,
> How do I pass data between linux and rtlinux? what I mean is I
> want to send some data from rtlinux to linux module say I want to
hookup
> the keyboard interrupt in rtlinux, read the data from the register
then
> send the same to keyboard driver(interrupts are disabled in the linux
> driver) for ex: I type a, then rtlinux should read it from register
and
> pass this a to linux keyboard driver. Then, linux has to send back ab
> back to rtlinux. I am not gettign enough document or examples for
making
> use of rtlinux. Can I know some pointers for the same please.
To pass information between linux and RTlinux use fifos or mbuf. Fifos
are
documented on rtl.org manpages. The mbuf module is documented in
rtlinux-3.0/drivers/mbuff/, and (i think) in rtlinux-3.0/doc. to grab a
interrupt use "rtl_request_irq" and install a handler. I think you
should
use fifos in this case.
BTW.
You can NOT make a RTLinux thread wait for a linux task to finish. There
is
not any funktion between linux and RTLinux to make them wait for each
other. This mean you can fx. not make a linux task queue, and put a
RTLinux
thread to sleep in this. This will fail. In worst case a kernel crash
will
occure.
Anders Gnistrup
----- End of forwarded message from [EMAIL PROTECTED] -----
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/
----- End of forwarded message from [EMAIL PROTECTED] -----
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/