On 14/08/17 14:25, Mark Kettenis wrote:

>> Great, thanks for the information - the fact that the nsphy0 has been
>> detected correctly means that the access still works. Looks like I'll
>> have to go digging deeper.
> 
> The OpenBSD code uses %asi if necessary to let the hardware do the
> byteswapping.  Howver, I think the psycho(4) host bridge also does an
> implicit byteswap.  Always has been a bit confusing to me.  But the
> code defenitely works correctly on real hardware.

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?


ATB,

Mark.

Reply via email to