--- trunk/src/cpus/memory_alpha.c 2007/10/08 16:20:03 25 +++ trunk/src/cpus/memory_alpha.c 2007/10/08 16:20:10 26 @@ -25,7 +25,7 @@ * SUCH DAMAGE. * * - * $Id: memory_alpha.c,v 1.2 2006/06/12 08:35:23 debug Exp $ + * $Id: memory_alpha.c,v 1.3 2006/06/24 21:47:23 debug Exp $ */ #include @@ -39,28 +39,28 @@ /* - * alpha_translate_address(): + * alpha_translate_v2p(): */ -int alpha_translate_address(struct cpu *cpu, uint64_t vaddr, - uint64_t *return_addr, int flags) +int alpha_translate_v2p(struct cpu *cpu, uint64_t vaddr, + uint64_t *return_paddr, int flags) { - *return_addr = vaddr & 0x000003ffffffffffULL; + *return_paddr = vaddr & 0x000003ffffffffffULL; /* UGLY hack for now: */ /* TODO: Real virtual memory support. */ if ((vaddr & ~0xffff) == 0xfffffc0010000000ULL || (vaddr & ~0xffff) == 0x0000000010000000ULL) - *return_addr = (vaddr & 0x0fffffff) + + *return_paddr = (vaddr & 0x0fffffff) + (cpu->machine->physical_ram_in_mb-1) * 1048576; /* At 0x20000000, NetBSD stores temp prom data */ if ((vaddr & ~0x1fff) == 0xfffffc0020000000ULL || (vaddr & ~0x1fff) == 0x0000000020000000ULL) - *return_addr = (vaddr & 0x0fffffff) + 512*1024 + + *return_paddr = (vaddr & 0x0fffffff) + 512*1024 + (cpu->machine->physical_ram_in_mb-1) * 1048576; - /* printf("yo %016"PRIx64" %016"PRIx64"\n", vaddr, *return_addr); */ + /* printf("yo %016"PRIx64" %016"PRIx64"\n", vaddr, *return_paddr); */ return 2; }