Message ID | 20230213180215.1524938-5-bmeng@tinylab.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target/riscv: Various fixes to gdbstub and CSR access | expand |
On 2023/2/14 02:02, Bin Meng wrote: > There is no need to generate the CSR XML if the Zicsr extension > is not enabled. > > Signed-off-by: Bin Meng <bmeng@tinylab.org> Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn> Regards, Weiwei Li > --- > > target/riscv/gdbstub.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/target/riscv/gdbstub.c b/target/riscv/gdbstub.c > index 704f3d6922..294f0ceb1c 100644 > --- a/target/riscv/gdbstub.c > +++ b/target/riscv/gdbstub.c > @@ -406,7 +406,10 @@ void riscv_cpu_register_gdb_regs_for_features(CPUState *cs) > g_assert_not_reached(); > } > > - gdb_register_coprocessor(cs, riscv_gdb_get_csr, riscv_gdb_set_csr, > - riscv_gen_dynamic_csr_xml(cs, cs->gdb_num_regs), > - "riscv-csr.xml", 0); > + if (cpu->cfg.ext_icsr) { > + int base_reg = cs->gdb_num_regs; > + gdb_register_coprocessor(cs, riscv_gdb_get_csr, riscv_gdb_set_csr, > + riscv_gen_dynamic_csr_xml(cs, base_reg), > + "riscv-csr.xml", 0); > + } > }
On 2023/2/14 2:02, Bin Meng wrote: > There is no need to generate the CSR XML if the Zicsr extension > is not enabled. > > Signed-off-by: Bin Meng <bmeng@tinylab.org> > --- > > target/riscv/gdbstub.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/target/riscv/gdbstub.c b/target/riscv/gdbstub.c > index 704f3d6922..294f0ceb1c 100644 > --- a/target/riscv/gdbstub.c > +++ b/target/riscv/gdbstub.c > @@ -406,7 +406,10 @@ void riscv_cpu_register_gdb_regs_for_features(CPUState *cs) > g_assert_not_reached(); > } > > - gdb_register_coprocessor(cs, riscv_gdb_get_csr, riscv_gdb_set_csr, > - riscv_gen_dynamic_csr_xml(cs, cs->gdb_num_regs), > - "riscv-csr.xml", 0); > + if (cpu->cfg.ext_icsr) { > + int base_reg = cs->gdb_num_regs; > + gdb_register_coprocessor(cs, riscv_gdb_get_csr, riscv_gdb_set_csr, > + riscv_gen_dynamic_csr_xml(cs, base_reg), > + "riscv-csr.xml", 0); > + } Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com> Zhiwei > }
diff --git a/target/riscv/gdbstub.c b/target/riscv/gdbstub.c index 704f3d6922..294f0ceb1c 100644 --- a/target/riscv/gdbstub.c +++ b/target/riscv/gdbstub.c @@ -406,7 +406,10 @@ void riscv_cpu_register_gdb_regs_for_features(CPUState *cs) g_assert_not_reached(); } - gdb_register_coprocessor(cs, riscv_gdb_get_csr, riscv_gdb_set_csr, - riscv_gen_dynamic_csr_xml(cs, cs->gdb_num_regs), - "riscv-csr.xml", 0); + if (cpu->cfg.ext_icsr) { + int base_reg = cs->gdb_num_regs; + gdb_register_coprocessor(cs, riscv_gdb_get_csr, riscv_gdb_set_csr, + riscv_gen_dynamic_csr_xml(cs, base_reg), + "riscv-csr.xml", 0); + } }
There is no need to generate the CSR XML if the Zicsr extension is not enabled. Signed-off-by: Bin Meng <bmeng@tinylab.org> --- target/riscv/gdbstub.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)