arm mmu: error propagation added for address translation
The return value for MMU translation was a mess, either error or value. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
This commit is contained in:
@@ -1817,8 +1817,11 @@ static int cortex_a8_virt2phys(struct target *target,
|
||||
cortex_a8->current_address_mode = ARM_MODE_USR;
|
||||
else /* Linux kernel */
|
||||
cortex_a8->current_address_mode = ARM_MODE_SVC;
|
||||
uint32_t ret = armv4_5_mmu_translate_va(target,
|
||||
&armv7a->armv4_5_mmu, virt, &type, &cb, &domain, &ap);
|
||||
uint32_t ret;
|
||||
int retval = armv4_5_mmu_translate_va(target,
|
||||
&armv7a->armv4_5_mmu, virt, &type, &cb, &domain, &ap, &ret);
|
||||
if (retval != ERROR_OK)
|
||||
return retval;
|
||||
/* Reset the flag. We don't want someone else to use it by error */
|
||||
cortex_a8->current_address_mode = ARM_MODE_ANY;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user