struct armv4_5_mmu_common
{
- uint32_t (*get_ttb)(struct target *target);
+ int (*get_ttb)(struct target *target, uint32_t *result);
int (*read_memory)(struct target *target, uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer);
- int (*write_memory)(struct target *target, uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer);
- void (*disable_mmu_caches)(struct target *target, int mmu, int d_u_cache, int i_cache);
- void (*enable_mmu_caches)(struct target *target, int mmu, int d_u_cache, int i_cache);
+ int (*write_memory)(struct target *target, uint32_t address, uint32_t size, uint32_t count, const uint8_t *buffer);
+ int (*disable_mmu_caches)(struct target *target, int mmu, int d_u_cache, int i_cache);
+ int (*enable_mmu_caches)(struct target *target, int mmu, int d_u_cache, int i_cache);
struct armv4_5_cache_common armv4_5_cache;
int has_tiny_pages;
int mmu_enabled;
};
-enum
-{
- ARMV4_5_SECTION, ARMV4_5_LARGE_PAGE, ARMV4_5_SMALL_PAGE, ARMV4_5_TINY_PAGE
-};
-
-extern char* armv4_5_page_type_names[];
-
int armv4_5_mmu_translate_va(struct target *target,
- struct armv4_5_mmu_common *armv4_5_mmu, uint32_t va, int *type,
- uint32_t *cb, int *domain, uint32_t *ap, uint32_t *val);
+ struct armv4_5_mmu_common *armv4_5_mmu, uint32_t va,
+ uint32_t *cb, uint32_t *val);
int armv4_5_mmu_read_physical(struct target *target,
struct armv4_5_mmu_common *armv4_5_mmu,
int armv4_5_mmu_write_physical(struct target *target,
struct armv4_5_mmu_common *armv4_5_mmu,
- uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer);
+ uint32_t address, uint32_t size, uint32_t count, const uint8_t *buffer);
enum
{