diff options
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 |
commit | d4d4b11a778c169a23a99f03e9d61f6bf21002c2 (patch) | |
tree | 1a36309eaa22d20ce7459dbe55603c24e1c1976e /src/target | |
parent | ff404da1558f0dcc5d92b18caa1706b9edf067d1 (diff) | |
download | openocd_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/target')
-rw-r--r-- | src/target/arm720t.c | 18 |
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, |