On 2010-12-2 6:21 AM, Mark Cave-Ayland wrote:
[...] This seems to suggest memory within the 0xff rather than the 0xfe range. Interestingly enough, the screen device looks like this:
screen: '/iommu@0,10000000/sbus@0,10001000/cgsix@3,0'
Perhaps it's hiding on the SBUS and so it doesn't need a direct mapping? Does the IOMMU allow paged access into SBUS space to avoid having to map it in its entirety?
Not sure I understand your question - but yes, the IOMMU (IO memory management unit) allows paged access into SBUS space. When "map-in" is called, it maps only the specific pages into virtual memory without bringing the rest of SBUS in. We do the same on PCI without having a separate iommu node.
I'll admit that SBUS is at the very edge of my knowledge - my first project at Sun was PCI for SPARC (1994), so SBUS was already on its way out.