j
: Next unread message k
: Previous unread message j a
: Jump to all threads
j l
: Jump to MailingList overview
Author: mcayland Date: Sun Aug 22 23:23:19 2010 New Revision: 856 URL: http://tracker.coreboot.org/trac/openbios/changeset/856
Log: Fix bug in SPARC64 CIF claim function - previously we were just allocating virtual memory rather than allocating both virtual and physical memory and setting up an MMU mapping.
Signed-off-by: Mark Cave-Ayland mark.cave-ayland@siriusit.co.uk
Modified: trunk/openbios-devel/arch/sparc64/lib.c
Modified: trunk/openbios-devel/arch/sparc64/lib.c ============================================================================== --- trunk/openbios-devel/arch/sparc64/lib.c Sun Aug 22 11:29:28 2010 (r855) +++ trunk/openbios-devel/arch/sparc64/lib.c Sun Aug 22 23:23:19 2010 (r856) @@ -417,6 +417,27 @@ PUSH(phys >> 32); }
+/* ( virt size align -- baseaddr|-1 ) */ +static void +ciface_claim( void ) +{ + ucell align = POP(); + ucell size = POP(); + ucell virt = POP(); + ucell ret = ofmem_claim( virt, size, align ); + + /* printk("ciface_claim: %08x %08x %x\n", virt, size, align ); */ + PUSH( ret ); +} + +/* ( virt size -- ) */ +static void +ciface_release( void ) +{ + POP(); + POP(); +} + DECLARE_NODE(memory, INSTALL_OPEN, 0, "/memory");
NODE_METHODS( memory ) = { @@ -493,6 +514,6 @@
push_str("/openprom/client-services"); fword("find-device"); - bind_func("cif-claim", mmu_claim); - bind_func("cif-release", mmu_release); + bind_func("cif-claim", ciface_claim); + bind_func("cif-release", ciface_release); }