X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Ftarget%2Farmv4_5_mmu.c;h=b108196e034ae809fc34d553167ee733de24eea0;hb=7c7fed0283e5c6e434de94af443218ef78175e87;hp=9c6d12e382005f6b72ee5eaeb0dc50e61f6e2dd5;hpb=5c0e8efa051f4e266add8b3685020970fe394a4c;p=openocd.git diff --git a/src/target/armv4_5_mmu.c b/src/target/armv4_5_mmu.c index 9c6d12e382..b108196e03 100644 --- a/src/target/armv4_5_mmu.c +++ b/src/target/armv4_5_mmu.c @@ -30,8 +30,6 @@ #include u32 armv4mmu_translate_va(target_t *target, armv4_5_mmu_common_t *armv4_5_mmu, u32 va, int *type, u32 *cb, int *domain, u32 *ap); -int armv4_5_mmu_read_physical(target_t *target, armv4_5_mmu_common_t *armv4_5_mmu, u32 address, u32 size, u32 count, u8 *buffer); -int armv4_5_mmu_write_physical(target_t *target, armv4_5_mmu_common_t *armv4_5_mmu, u32 address, u32 size, u32 count, u8 *buffer); char* armv4_5_mmu_page_type_names[] = { @@ -49,19 +47,19 @@ u32 armv4_5_mmu_translate_va(target_t *target, armv4_5_mmu_common_t *armv4_5_mmu 4, 1, (u8*)&first_lvl_descriptor); first_lvl_descriptor = target_buffer_get_u32(target, (u8*)&first_lvl_descriptor); - DEBUG("1st lvl desc: %8.8x", first_lvl_descriptor); + LOG_DEBUG("1st lvl desc: %8.8x", first_lvl_descriptor); if ((first_lvl_descriptor & 0x3) == 0) { *type = -1; - ERROR("Address translation failure"); + LOG_ERROR("Address translation failure"); return ERROR_TARGET_TRANSLATION_FAULT; } if (!armv4_5_mmu->has_tiny_pages && ((first_lvl_descriptor & 0x3) == 3)) { *type = -1; - ERROR("Address translation failure"); + LOG_ERROR("Address translation failure"); return ERROR_TARGET_TRANSLATION_FAULT; } @@ -91,15 +89,15 @@ u32 armv4_5_mmu_translate_va(target_t *target, armv4_5_mmu_common_t *armv4_5_mmu (first_lvl_descriptor & 0xfffff000) | ((va & 0x000ffc00) >> 8), 4, 1, (u8*)&second_lvl_descriptor); } - + second_lvl_descriptor = target_buffer_get_u32(target, (u8*)&second_lvl_descriptor); - - DEBUG("2nd lvl desc: %8.8x", second_lvl_descriptor); + + LOG_DEBUG("2nd lvl desc: %8.8x", second_lvl_descriptor); if ((second_lvl_descriptor & 0x3) == 0) { *type = -1; - ERROR("Address translation failure"); + LOG_ERROR("Address translation failure"); return ERROR_TARGET_TRANSLATION_FAULT; } @@ -132,7 +130,7 @@ u32 armv4_5_mmu_translate_va(target_t *target, armv4_5_mmu_common_t *armv4_5_mmu /* should not happen */ *type = -1; - ERROR("Address translation failure"); + LOG_ERROR("Address translation failure"); return ERROR_TARGET_TRANSLATION_FAULT; } @@ -165,14 +163,14 @@ int armv4_5_mmu_write_physical(target_t *target, armv4_5_mmu_common_t *armv4_5_m /* disable MMU and data (or unified) cache */ armv4_5_mmu->disable_mmu_caches(target, 1, 1, 0); - + retval = armv4_5_mmu->write_memory(target, address, size, count, buffer); /* reenable MMU / cache */ armv4_5_mmu->enable_mmu_caches(target, armv4_5_mmu->mmu_enabled, armv4_5_mmu->armv4_5_cache.d_u_cache_enabled, armv4_5_mmu->armv4_5_cache.i_cache_enabled); - + return retval; } @@ -184,7 +182,7 @@ int armv4_5_mmu_handle_virt2phys_command(command_context_t *cmd_ctx, char *cmd, u32 cb; int domain; u32 ap; - + if (target->state != TARGET_HALTED) { command_print(cmd_ctx, "target must be stopped for \"virt2phys\" command"); @@ -213,11 +211,11 @@ int armv4_5_mmu_handle_virt2phys_command(command_context_t *cmd_ctx, char *cmd, } return ERROR_OK; } - + command_print(cmd_ctx, "0x%8.8x -> 0x%8.8x, type: %s, cb: %i, domain: %i, ap: %2.2x", va, pa, armv4_5_mmu_page_type_names[type], cb, domain, ap); - } - + } + return ERROR_OK; } @@ -274,7 +272,7 @@ int armv4_5_mmu_handle_md_phys_command(command_context_t *cmd_ctx, char *cmd, ch break; case ERROR_TARGET_NOT_HALTED: command_print(cmd_ctx, "error: target must be halted for memory accesses"); - break; + break; case ERROR_TARGET_DATA_ABORT: command_print(cmd_ctx, "error: access caused data abort, system possibly corrupted"); break; @@ -289,7 +287,7 @@ int armv4_5_mmu_handle_md_phys_command(command_context_t *cmd_ctx, char *cmd, ch { if (i%8 == 0) output_len += snprintf(output + output_len, 128 - output_len, "0x%8.8x: ", address + (i*size)); - + switch (size) { case 4: @@ -311,7 +309,7 @@ int armv4_5_mmu_handle_md_phys_command(command_context_t *cmd_ctx, char *cmd, ch } free(buffer); - + return ERROR_OK; } @@ -367,7 +365,7 @@ int armv4_5_mmu_handle_mw_phys_command(command_context_t *cmd_ctx, char *cmd, ch break; default: command_print(cmd_ctx, "error: unknown error"); - } + } return ERROR_OK; }