From: Marc Pignat Date: Fri, 12 Feb 2010 07:23:44 +0000 (+0100) Subject: arm920: add virt2phys fn X-Git-Tag: v0.4.0-rc2~4 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=ff404da1558f0dcc5d92b18caa1706b9edf067d1;p=openocd arm920: add virt2phys fn Copy of the 926ejs function. I have tested it only using my rtems application (where virtual address mapping == physical). Signed-off-by: Øyvind Harboe --- diff --git a/src/target/arm920t.c b/src/target/arm920t.c index e0b1c70a..e04d9fca 100644 --- a/src/target/arm920t.c +++ b/src/target/arm920t.c @@ -472,9 +472,19 @@ static int arm920_mmu(struct target *target, int *enabled) static int arm920_virt2phys(struct target *target, uint32_t virt, uint32_t *phys) { - /** @todo Implement this! */ - LOG_ERROR("%s: not implemented", __func__); - return ERROR_FAIL; + int type; + uint32_t cb; + int domain; + uint32_t ap; + struct arm920t_common *arm920t = target_to_arm920(target); + + uint32_t ret = armv4_5_mmu_translate_va(target, &arm920t->armv4_5_mmu, virt, &type, &cb, &domain, &ap); + if (type == -1) + { + return ret; + } + *phys = ret; + return ERROR_OK; } /** Reads a buffer, in the specified word size, with current MMU settings. */