qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Richard Henderson <richard.henderson@linaro.org>
Cc: qemu-devel@nongnu.org, qemu-arm@nongnu.org,
	David Reiss <dreiss@meta.com>,
	 Luis Machado <luis.machado@arm.com>
Subject: Re: [PATCH 14/14] target/arm: Support reading m-profile system registers from gdb
Date: Mon, 20 Feb 2023 17:37:32 +0000	[thread overview]
Message-ID: <CAFEAcA8sfvQFFArnkm8aGXSvhB6t+vg52bdQCPvLu26VXRkNtQ@mail.gmail.com> (raw)
In-Reply-To: <c6d768e4-6f48-b68d-26f0-227d70bce82e@linaro.org>

On Mon, 20 Feb 2023 at 17:00, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> On 2/20/23 06:02, Peter Maydell wrote:
> >> +    g_string_printf(s, "<?xml version=\"1.0\"?>");
> >> +    g_string_append_printf(s, "<!DOCTYPE target SYSTEM \"gdb-target.dtd\">");
> >> +    g_string_append_printf(s, "<feature name=\"org.gnu.gdb.arm.m-system\">\n");
> >
> > Half of these need to be in org.gnu.gdb.arm.secext.
> > These aren't our own XML features we're making up (if they
> > were then they would be in org.qemu.something), so we should
> > follow the existing precedent about what registers go in them.
>
> Now that you point it out (and I should have checked myself), we are kinda making them up.
>   The only registers within upstream gdb m-system and secext are MSP, PSP, MSP_NS, MSP_S,
> PSP_NS, PSP_S.  All the others are our own addition.

I think OpenOCD's implementation includes more than that:
https://openocd.org/doc-release/doxygen/armv7m_8c_source.html

> Should all the rest be in a third bit of xml?

Luis, do you have the specs for what the existing implementations
are doing here ?

Ideally gdb should document for every bit of XML it is the
official owner of (ie in the org.gnu.gdb namespace) what the
required and optional register values are, including details
like the register width (which I think the two existing
implementations that output m-system disagree on).

thanks
-- PMM


  reply	other threads:[~2023-02-20 17:38 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-14 16:30 [PATCH 00/14] target/arm: gdbstub cleanups and additions Richard Henderson
2023-02-14 16:30 ` [PATCH 01/14] target/arm: Normalize aarch64 gdbstub get/set function names Richard Henderson
2023-02-14 18:55   ` Fabiano Rosas
2023-02-14 16:30 ` [PATCH 02/14] target/arm: Unexport arm_gen_dynamic_sysreg_xml Richard Henderson
2023-02-14 18:57   ` Fabiano Rosas
2023-02-14 16:30 ` [PATCH 03/14] target/arm: Move arm_gen_dynamic_svereg_xml to gdbstub64.c Richard Henderson
2023-02-14 19:08   ` Fabiano Rosas
2023-02-14 16:30 ` [PATCH 04/14] target/arm: Split out output_vector_union_type Richard Henderson
2023-02-14 19:35   ` Fabiano Rosas
2023-02-20 16:07   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 05/14] target/arm: Simplify register counting in arm_gen_dynamic_svereg_xml Richard Henderson
2023-02-14 19:42   ` Fabiano Rosas
2023-02-14 22:56     ` Richard Henderson
2023-02-14 16:30 ` [PATCH 06/14] target/arm: Hoist pred_width " Richard Henderson
2023-02-14 19:44   ` Fabiano Rosas
2023-02-14 16:30 ` [PATCH 07/14] target/arm: Fix svep width " Richard Henderson
2023-02-20 16:18   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 08/14] target/arm: Add name argument to output_vector_union_type Richard Henderson
2023-02-20 16:20   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 09/14] target/arm: Simplify iteration over bit widths Richard Henderson
2023-02-20 16:24   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 10/14] target/arm: Create pauth_ptr_mask Richard Henderson
2023-02-20 16:39   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 11/14] target/arm: Implement gdbstub pauth extension Richard Henderson
2023-02-20 16:58   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 12/14] target/arm: Export arm_v7m_mrs_control Richard Henderson
2023-02-20 16:50   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 13/14] target/arm: Export arm_v7m_get_sp_ptr Richard Henderson
2023-02-20 16:51   ` Peter Maydell
2023-02-14 16:30 ` [PATCH 14/14] target/arm: Support reading m-profile system registers from gdb Richard Henderson
2023-02-14 16:33   ` Richard Henderson
2023-02-20 16:02   ` Peter Maydell
2023-02-20 17:00     ` Richard Henderson
2023-02-20 17:37       ` Peter Maydell [this message]
2023-02-20 18:27         ` Luis Machado

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAFEAcA8sfvQFFArnkm8aGXSvhB6t+vg52bdQCPvLu26VXRkNtQ@mail.gmail.com \
    --to=peter.maydell@linaro.org \
    --cc=dreiss@meta.com \
    --cc=luis.machado@arm.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).