Commit 37b27a5f82 for qemu.org
commit 37b27a5f822b169cd67896f3093b6d7e11d1b702
Author: Peter Maydell <peter.maydell@linaro.org>
Date: Thu Oct 22 13:58:57 2026 +0100
target/m68k: Convert to translate_for_debug
Convert m68k to providing the translate_for_debug method rather
than the deprecated get_phys_addr_debug method.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
Message-ID: <20261022125858.310252-5-peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
diff --git a/target/m68k/cpu.c b/target/m68k/cpu.c
index 01c6b6afb1..f7d289e591 100644
--- a/target/m68k/cpu.c
+++ b/target/m68k/cpu.c
@@ -688,7 +688,7 @@ static const MonitorDef m68k_monitor_defs[] = {
static const struct SysemuCPUOps m68k_sysemu_ops = {
.has_work = m68k_cpu_has_work,
- .get_phys_addr_debug = m68k_cpu_get_phys_addr_debug,
+ .translate_for_debug = m68k_cpu_translate_for_debug,
#ifdef CONFIG_HMP
.monitor_defs = m68k_monitor_defs,
#endif
diff --git a/target/m68k/cpu.h b/target/m68k/cpu.h
index 44b4afc41c..781c98f784 100644
--- a/target/m68k/cpu.h
+++ b/target/m68k/cpu.h
@@ -187,7 +187,8 @@ struct M68kCPUClass {
#ifndef CONFIG_USER_ONLY
void m68k_cpu_do_interrupt(CPUState *cpu);
bool m68k_cpu_exec_interrupt(CPUState *cpu, int int_req);
-hwaddr m68k_cpu_get_phys_addr_debug(CPUState *cpu, vaddr addr);
+bool m68k_cpu_translate_for_debug(CPUState *cpu, vaddr addr,
+ TranslateForDebugResult *result);
#endif /* !CONFIG_USER_ONLY */
void m68k_cpu_dump_state(CPUState *cpu, FILE *f, int flags);
int m68k_cpu_gdb_read_register(CPUState *cpu, GByteArray *buf, int reg);
diff --git a/target/m68k/helper.c b/target/m68k/helper.c
index 5f91d206f5..c30854a674 100644
--- a/target/m68k/helper.c
+++ b/target/m68k/helper.c
@@ -908,7 +908,8 @@ txfail:
return -1;
}
-hwaddr m68k_cpu_get_phys_addr_debug(CPUState *cs, vaddr addr)
+bool m68k_cpu_translate_for_debug(CPUState *cs, vaddr addr,
+ TranslateForDebugResult *result)
{
CPUM68KState *env = cpu_env(cs);
hwaddr phys_addr;
@@ -918,7 +919,8 @@ hwaddr m68k_cpu_get_phys_addr_debug(CPUState *cs, vaddr addr)
if ((env->mmu.tcr & M68K_TCR_ENABLED) == 0) {
/* MMU disabled */
- return addr;
+ phys_addr = addr;
+ goto success;
}
access_type = ACCESS_DATA | ACCESS_DEBUG;
@@ -928,10 +930,16 @@ hwaddr m68k_cpu_get_phys_addr_debug(CPUState *cs, vaddr addr)
if (get_physical_address(env, &phys_addr, &prot,
addr, access_type, &page_size) != 0) {
- return -1;
+ return false;
}
- return phys_addr;
+success:
+ *result = (TranslateForDebugResult) {
+ .physaddr = phys_addr,
+ .lg_page_size = TARGET_PAGE_BITS,
+ .attrs.debug = 1,
+ };
+ return true;
}
/*