Blue Swirl wrote:
I think I could probably do some of the work, but would struggle with the SPARC assembler for MMU entries and the I/O mapping in SPARC32. Is this something you think you'd be able to take a quick look at?
There's also romvec tables that need to be managed. They are probably the primary interface for any OS.
No need for any assembler except the macros at the end of arch/sparc32/lib.c. Sparc32 MMU is very simple, the thorough description in V8 manual is ~20 pages.
IOMMU is described in Sun4M System Architecture Manual. IOMMU maps physical pages to device virtual memory space, much like MMU maps physical pages to CPU virtual space.
Well maybe I'll take a break from the OpenSolaris work for a while and take a look at this to try and understand SPARC better. At the moment, I'm working on an a patchset to finish off proper load/boot support but this is currently taking longer than expected as I'm experiencing strange bugs in grubfs :(
ATB,
Mark.