On Fri, 31 Dec 1999, David Wolfe wrote:

> I was wondering if anyone on this list is using Systran's SCRAMNet+
> replicated shared-memory cards in an RTLinux application
> (http://www.systran.com/scramnet.htm). I'm porting an application from
> SGI Irix to (hopefully) RTLinux, and I *really* need to support this
> (PCI) device to make it work.
> 
I am using a similar product from VMIC, a shared-memory (reflected memory)
card which is PCI on some nodes and VME on others with no problem.

> I've read Phil Wilshire's article "Real Time Linux PCI I/O" in the
> RTLinux Manual, and it makes me somewhat hopeful that it can be done(?) 
> I have the source for the Irix driver, and will soon have source for a
> 'regular' Linux driver.  I'm not much of a kernel hacker--yet :-)--but
> I've got a copy of Rubini's book, a solid C programming background, and
> a burning desire to learn.  Can anyone comment on the likelihood of
> getting this SCRAMNet card to work?
> 
Should be fairly easy.  The only real work involved is getting the PCI
base address of the card and even this is pretty much cookbook following
Rubini's book.

Suggestion #1:
I would strongly recommend using an existing driver
as reference from the /usr/src/linux/drivers directory.  The
.../drivers/net is a good place to look since there are a few PCI based
drivers there.

Suggestion #2:
The only other point to keep in mind is that kernel driver modules
typically export a virtual address to user space processes via the mmap
call while the kernel virtual address is probably different.  Since
RTLinux tasks are kernel modules, they will need the *kernel* virtual
address.  A driver can EXPORT a function that is visible to other kernel
modules and this method can be used to pass the kernel virtual address
to the RTL task.

Suggestion #3:
Start small, dont try to convert the whole 500k Irix
driver right away. Using the smallest workable subset of functionality,
get the driver working with a user process, then with a RT task.

Good Luck,

Wm

--- [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/~rtlinux/

Reply via email to