I’m writing a test app to talk to a commercial PC-104 card directly. (Later
I will turn this in to a resource manager).
I use ‘mmap_device_io’ to supposedly map the device into the process space.
I assume that the ‘uintptr_t’ data type returned by ‘map_device_io’ is then
a pointer that I use to talk to the hardware. Therefore pseudo-code would
look like this…
This seems to work. However, the following also appears to work
So please help me understand. What does the mmap_device_io() function call
do for me. Why does the statement ‘out16(BASE_ADDR,dataword);’ also appear