Author: mcayland Date: Mon May 12 17:43:57 2014 New Revision: 1296 URL: http://tracker.coreboot.org/trac/openbios/changeset/1296
Log: SPARC64: fix up translations property mode to make it a valid TTE
NetBSD attempts to parse the translations property in order to set up the virtual to physical translations for the kernel. Alter the mode cell to include the physical address and valid bit so that it represents a real TTE entry for the given start adddress.
This is confirmed by checking real dumps from prtconf examples, plus the NetBSD kernel now starts to boot.
Signed-off-by: Mark Cave-Ayland mark.cave-ayland@ilande.co.uk
Modified: trunk/openbios-devel/arch/sparc64/ofmem_sparc64.c
Modified: trunk/openbios-devel/arch/sparc64/ofmem_sparc64.c ============================================================================== --- trunk/openbios-devel/arch/sparc64/ofmem_sparc64.c Mon May 12 17:43:52 2014 (r1295) +++ trunk/openbios-devel/arch/sparc64/ofmem_sparc64.c Mon May 12 17:43:57 2014 (r1296) @@ -103,12 +103,12 @@
virtual address length - mode + mode (valid TTE for start of translation region) */
transentry[0] = t->virt; transentry[1] = t->size; - transentry[2] = t->mode; + transentry[2] = t->phys | t->mode | SPITFIRE_TTE_VALID; }
/* Return the size of a memory available entry given the phandle in cells */