Attached is a patch that enables the use of direct I/O on FreeBSD. FreeBSD has the parameters to the outb() call swapped and uses i386_set_ioperm() to aquire access to low level I/O ports. To use this system call a file pointer to /dev/io is necessary as well.
Patch to enable direct I/O on FreeBSD