Privileged instructions with Fusion

Gilles Chanteperdrix gilles.chanteperdrix at laposte.net
Mon Oct 18 11:57:42 CEST 2004


Hans-J~rgen Ude wrote:
 > I've just started to try RTAI/Fusion. I've got it installed and running. The 
 > testsuite samples work too. Then I've just put an outb() function into one 
 > thread to watch the timing with an oscilloscope on LPT. As expected this 

In fact, you could have expected it to work, since the function
xnshadow_map functions adds the "RAWIO" capability to fusion
threads. This is probably not enough, though.

 > doesn't work. Inline assebmly doesn't work either. It prompts "Killed" and 
 > terminates. So my question is how can I get this to work without using 
 > ioperm() or iopl(). Later on I'll need some direct memory access too. 
 > Otherwise i'd  have to write a complete PCI driver for proprietary hardware, 
 > but i've never done that before.

What Fusion does is (or will be) equivalent to a call to iopl anyway. If
it is not what you want, the only other way is to insulate your hardware
accesses in a kernel module, and make it communicate with your
user-space application through RTAI pipes, documented here :

http://download.gna.org/rtai/documentation/fusion/html/api/group__pipe.html

Regards.

-- 


					    Gilles Chanteperdrix.




More information about the Rtai mailing list