On 14/08/17 21:18, Mark Kettenis wrote: >> So tracing through HME register writes it seems the difference between >> OpenBSD and the other OSs is that OpenBSD appears to write to the >> virtual address 0x40008098000 with a standard (0x80) primary ASI, >> whereas the other OSs seem to write directly to the physical address >> 0x1ff04000000 with a physical LE ASI. >> >> Is this because in OpenBSD the memory is being allocated as DVMA memory >> via the IOMMU? > > Ah, no. For memory mapped io it seems we create an actual > little-endian memory mapping (i.e. with the IE bit set). That was > probably done to support mapping framebuffers.
Ah yes, I bet that's it - thanks for the pointer! Not sure it's going to be the easiest job to implement though. ATB, Mark.
