I'm working on a device driver for a serial board under Freebsd. I
did a hack and slash on a similar driver that used the same serial
chips as the board I'm working with. The only difference is that the
new board has a dual-port ram and the old board/driver didn't.
What I don't understand is how you "wire" pages of, virtual I guess,
memory to a physical location. I can see in some other device drivers
calls to kvtope() which then calls pmap_kextract(), neither of which
are mentioned in design & implemetaion of bsd 4.4, and neither of
which seems to have an obvious effect, and seem to indicate the
reverse operation of what I think should be needed.
Are there any references as to how this needs to be done that I could
be looking at? are there man pages for kernel functions for those
working inside the kernel?