summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorØyvind Harboe <oyvind.harboe@zylin.com>2010-02-12 08:39:56 +0100
committerØyvind Harboe <oyvind.harboe@zylin.com>2010-02-12 08:39:56 +0100
commitd4d4b11a778c169a23a99f03e9d61f6bf21002c2 (patch)
tree1a36309eaa22d20ce7459dbe55603c24e1c1976e /src
parentff404da1558f0dcc5d92b18caa1706b9edf067d1 (diff)
downloadopenocd+libswd-d4d4b11a778c169a23a99f03e9d61f6bf21002c2.tar.gz
openocd+libswd-d4d4b11a778c169a23a99f03e9d61f6bf21002c2.tar.bz2
openocd+libswd-d4d4b11a778c169a23a99f03e9d61f6bf21002c2.tar.xz
openocd+libswd-d4d4b11a778c169a23a99f03e9d61f6bf21002c2.zip
arm720t: virt2phys callback added
This is a copy and paste of arm926ejs. Not tested, but ready for testing at least. There is a good chance that it will work if the generic armv4_5 fn's are robust enough... Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Diffstat (limited to 'src')
-rw-r--r--src/target/arm720t.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/target/arm720t.c b/src/target/arm720t.c
index a5dde2c0..efafa5ee 100644
--- a/src/target/arm720t.c
+++ b/src/target/arm720t.c
@@ -255,11 +255,21 @@ static int arm720_mmu(struct target *target, int *enabled)
}
static int arm720_virt2phys(struct target *target,
- uint32_t virt, uint32_t *phys)
+ uint32_t virtual, uint32_t *physical)
{
- /** @todo Implement this! */
- LOG_ERROR("%s: not implemented", __func__);
- return ERROR_FAIL;
+ int type;
+ uint32_t cb;
+ int domain;
+ uint32_t ap;
+ struct arm720t_common *arm720t = target_to_arm720(target);
+
+ uint32_t ret = armv4_5_mmu_translate_va(target, &arm720t->armv4_5_mmu, virtual, &type, &cb, &domain, &ap);
+ if (type == -1)
+ {
+ return ret;
+ }
+ *physical = ret;
+ return ERROR_OK;
}
static int arm720t_read_memory(struct target *target,