Since nobody has responded yet...
Here's a paragraph of text taken from a
Linux Journal article:
Quote:
Accessing Memory-Mapped Devices
...
To access your memory-mapped hardware, the device /dev/mem is the silver bullet, and mmap() is the method to select the memory physical base address and the block size to access. To open the peripheral memory, open /dev/mem. Use the opened file descriptor in mmap(), with the appropriate address and the block size (in bytes) to open. mmap() returns an address that is mapped to the physical base address; cast it to the appropriate data type and use it like any other pointer, array, structure pointer or your favorite method.
|
So that's one method you can use to gain access to the fibre channel control registers. Of course, the device needs to have those registers memory-mapped, and you need to know the addresses and offsets of the registers you want to twiddle.
Aside from that, all you should have to do is follow the fibre channel spec to create instruction/data frames/packets/whatever they're called in fibre channel.