[PATCH v2] target/hexagon: Add HMP info tlb command

Brian Cain posted 1 patch 1 month, 1 week ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260818203047.2933487-1-brian.cain@oss.qualcomm.com
Maintainers: "Dr. David Alan Gilbert" <dave@treblig.org>, Brian Cain <brian.cain@oss.qualcomm.com>, Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
target/hexagon/hmp-cmds.c  | 23 +++++++++++++++++++++++
hmp-commands-info.hx       |  3 ++-
target/hexagon/meson.build |  1 +
3 files changed, 26 insertions(+), 1 deletion(-)
create mode 100644 target/hexagon/hmp-cmds.c
[PATCH v2] target/hexagon: Add HMP info tlb command
Posted by Brian Cain 1 month, 1 week ago
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
---
 target/hexagon/hmp-cmds.c  | 23 +++++++++++++++++++++++
 hmp-commands-info.hx       |  3 ++-
 target/hexagon/meson.build |  1 +
 3 files changed, 26 insertions(+), 1 deletion(-)
 create mode 100644 target/hexagon/hmp-cmds.c

diff --git a/target/hexagon/hmp-cmds.c b/target/hexagon/hmp-cmds.c
new file mode 100644
index 00000000000..150045769cc
--- /dev/null
+++ b/target/hexagon/hmp-cmds.c
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#include "qemu/osdep.h"
+#include "cpu.h"
+#include "hex_mmu.h"
+#include "monitor/hmp.h"
+#include "monitor/monitor.h"
+
+void hmp_info_tlb(Monitor *mon, const QDict *qdict)
+{
+    CPUArchState *env = mon_get_cpu_env(mon);
+
+    if (!env) {
+        monitor_printf(mon, "No CPU available\n");
+        return;
+    }
+
+    dump_mmu(mon, env);
+}
diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
index 82134eb6c21..0d31fb8a84c 100644
--- a/hmp-commands-info.hx
+++ b/hmp-commands-info.hx
@@ -193,7 +193,8 @@ ERST
         .help       = "show virtual to physical memory mappings",
         .cmd        = hmp_info_tlb,
         .arch_bitmask = QEMU_ARCH_I386 | QEMU_ARCH_SH4 | QEMU_ARCH_SPARC \
-                        | QEMU_ARCH_PPC | QEMU_ARCH_XTENSA | QEMU_ARCH_M68K,
+                        | QEMU_ARCH_PPC | QEMU_ARCH_XTENSA | QEMU_ARCH_M68K \
+                        | QEMU_ARCH_HEXAGON,
     },
 
 SRST
diff --git a/target/hexagon/meson.build b/target/hexagon/meson.build
index 4c921eee73b..53c500522a8 100644
--- a/target/hexagon/meson.build
+++ b/target/hexagon/meson.build
@@ -261,6 +261,7 @@ hexagon_softmmu_ss.add(files(
     'hex_interrupts.c',
     'hexswi.c',
     'machine.c',
+    'hmp-cmds.c',
 ))
 
 #
-- 
2.34.1

Re: [PATCH v2] target/hexagon: Add HMP info tlb command
Posted by Dr. David Alan Gilbert 1 month, 1 week ago
* Brian Cain (brian.cain@oss.qualcomm.com) wrote:
> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>

Acked-by: Dr. David Alan Gilbert <dave@treblig.org>

> ---
>  target/hexagon/hmp-cmds.c  | 23 +++++++++++++++++++++++
>  hmp-commands-info.hx       |  3 ++-
>  target/hexagon/meson.build |  1 +
>  3 files changed, 26 insertions(+), 1 deletion(-)
>  create mode 100644 target/hexagon/hmp-cmds.c
> 
> diff --git a/target/hexagon/hmp-cmds.c b/target/hexagon/hmp-cmds.c
> new file mode 100644
> index 00000000000..150045769cc
> --- /dev/null
> +++ b/target/hexagon/hmp-cmds.c
> @@ -0,0 +1,23 @@
> +/*
> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
> + *
> + * SPDX-License-Identifier: GPL-2.0-or-later
> + */
> +
> +#include "qemu/osdep.h"
> +#include "cpu.h"
> +#include "hex_mmu.h"
> +#include "monitor/hmp.h"
> +#include "monitor/monitor.h"
> +
> +void hmp_info_tlb(Monitor *mon, const QDict *qdict)
> +{
> +    CPUArchState *env = mon_get_cpu_env(mon);
> +
> +    if (!env) {
> +        monitor_printf(mon, "No CPU available\n");
> +        return;
> +    }
> +
> +    dump_mmu(mon, env);
> +}
> diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
> index 82134eb6c21..0d31fb8a84c 100644
> --- a/hmp-commands-info.hx
> +++ b/hmp-commands-info.hx
> @@ -193,7 +193,8 @@ ERST
>          .help       = "show virtual to physical memory mappings",
>          .cmd        = hmp_info_tlb,
>          .arch_bitmask = QEMU_ARCH_I386 | QEMU_ARCH_SH4 | QEMU_ARCH_SPARC \
> -                        | QEMU_ARCH_PPC | QEMU_ARCH_XTENSA | QEMU_ARCH_M68K,
> +                        | QEMU_ARCH_PPC | QEMU_ARCH_XTENSA | QEMU_ARCH_M68K \
> +                        | QEMU_ARCH_HEXAGON,
>      },
>  
>  SRST
> diff --git a/target/hexagon/meson.build b/target/hexagon/meson.build
> index 4c921eee73b..53c500522a8 100644
> --- a/target/hexagon/meson.build
> +++ b/target/hexagon/meson.build
> @@ -261,6 +261,7 @@ hexagon_softmmu_ss.add(files(
>      'hex_interrupts.c',
>      'hexswi.c',
>      'machine.c',
> +    'hmp-cmds.c',
>  ))
>  
>  #
> -- 
> 2.34.1
> 
-- 
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    |       Running GNU/Linux       | Happy  \ 
\        dave @ treblig.org |                               | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/