[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Device Driver Skeleton?
angelo wrote:
On Fri Feb 11 10:00:51 PST 2005, =?iso-8859-1?Q?Alex?=
<kbyte@iol.pt> wrote:
Good Morning Dr Fraietta,
Not Dr yet.
At some days ago, I had a doubt concerning writing my first
device driver and you said to me to send you an email on the 10th
feb. So here I am... Could you help me, please?
OK
I already study the console and serial drivers in the rtems
distribution and appart from the skeletton of a generic rtems
device driver, why do we have to define always a macro like this:
#define CONSOLE_DRIVER_TABLE_ENTRY \
{ console_initialize, console_open, console_close, \
console_read, console_write, console_control }
Who invoke those functions members, and in what circunstancies?
This is my understanding of what happens. Hopefully, someone will
correct me if I am wrong.
The initisalise function,
console_initialize in this case, is called when the device drivers are initialised.
The Open is when you a file open on this device, the close when you do a file close, the read when do do a read from the file, the write, when you do a write to the file, and I am not sure what the control does.
I have only implemented the initialise because I write to my device direct. I have not implemented a read, or write -- I don't treat my device like a file. I suppose that that is what you have to decide first--whether you want to treat your device like a file or whether you want to write directly from your application
Which are the steps to put to work a device driver made by us,
or, using the hello world sample how can we put a device driver
to work?
I would have a look at an example that uses a COMM port (TTYS1) if you
want to open and close your device like a file.
--
Angelo Fraietta
PO Box 859
Hamilton NSW 2303
Home Page
http://www.users.bigpond.com/angelo_f/
There are those who seek knowledge for the sake of knowledge - that is CURIOSITY
There are those who seek knowledge to be known by others - that is VANITY
There are those who seek knowledge in order to serve - that is LOVE
Bernard of Clairvaux (1090 - 1153)