Re: [PATCH v11 5/6] target/riscv: Update the privilege field for sscofpmf CSRs
On Wed, Jul 27, 2022 at 1:27 AM Weiwei Li wrote: > > 在 2022/7/27 下午2:49, Atish Patra 写道: > > The sscofpmf extension was ratified as a part of priv spec v1.12. > > Mark the csr_ops accordingly. > > > > Reviewed-by: Alistair Francis > > Signed-off-by: Atish Patra > > --- > > target/riscv/csr.c | 90 ++ > > 1 file changed, 60 insertions(+), 30 deletions(-) > > > > diff --git a/target/riscv/csr.c b/target/riscv/csr.c > > index 57dbbf9b09a0..ec6d7f022ad5 100644 > > --- a/target/riscv/csr.c > > +++ b/target/riscv/csr.c > > @@ -3859,63 +3859,92 @@ riscv_csr_operations csr_ops[CSR_TABLE_SIZE] = { > > write_mhpmevent > }, > > > > [CSR_MHPMEVENT3H]= { "mhpmevent3h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > Similar to the first commit, it's better to align with the first element > "mhpmevent3h" .Otherwise, > > Fixed it. Thanks for the review. > Reviewed-by: Weiwei Li > > Regards, > > Weiwei Li > > > [CSR_MHPMEVENT4H]= { "mhpmevent4h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT5H]= { "mhpmevent5h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT6H]= { "mhpmevent6h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT7H]= { "mhpmevent7h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT8H]= { "mhpmevent8h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT9H]= { "mhpmevent9h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT10H] = { "mhpmevent10h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT11H] = { "mhpmevent11h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT12H] = { "mhpmevent12h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT13H] = { "mhpmevent13h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT14H] = { "mhpmevent14h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT15H] = { "mhpmevent15h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT16H] = { "mhpmevent16h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT17H] = { "mhpmevent17h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT18H] = { "mhpmevent18h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT19H] = { "mhpmevent19h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT20H] = { "mhpmevent20h",sscofpmf, > read_mhpmeventh, > > - > write_mhpmeventh}, > > + > write_mhpmeventh, > > + .min_priv_ver = > PRIV_VERSION_1_12_0 }, > > [CSR_MHPMEVENT21H]
Re: [PATCH v11 5/6] target/riscv: Update the privilege field for sscofpmf CSRs
在 2022/7/27 下午2:49, Atish Patra 写道: The sscofpmf extension was ratified as a part of priv spec v1.12. Mark the csr_ops accordingly. Reviewed-by: Alistair Francis Signed-off-by: Atish Patra --- target/riscv/csr.c | 90 ++ 1 file changed, 60 insertions(+), 30 deletions(-) diff --git a/target/riscv/csr.c b/target/riscv/csr.c index 57dbbf9b09a0..ec6d7f022ad5 100644 --- a/target/riscv/csr.c +++ b/target/riscv/csr.c @@ -3859,63 +3859,92 @@ riscv_csr_operations csr_ops[CSR_TABLE_SIZE] = { write_mhpmevent }, [CSR_MHPMEVENT3H]= { "mhpmevent3h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, Similar to the first commit, it's better to align with the first element "mhpmevent3h" .Otherwise, Reviewed-by: Weiwei Li Regards, Weiwei Li [CSR_MHPMEVENT4H]= { "mhpmevent4h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT5H]= { "mhpmevent5h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT6H]= { "mhpmevent6h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT7H]= { "mhpmevent7h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT8H]= { "mhpmevent8h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT9H]= { "mhpmevent9h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT10H] = { "mhpmevent10h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT11H] = { "mhpmevent11h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT12H] = { "mhpmevent12h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT13H] = { "mhpmevent13h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT14H] = { "mhpmevent14h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT15H] = { "mhpmevent15h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT16H] = { "mhpmevent16h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, +
[PATCH v11 5/6] target/riscv: Update the privilege field for sscofpmf CSRs
The sscofpmf extension was ratified as a part of priv spec v1.12. Mark the csr_ops accordingly. Reviewed-by: Alistair Francis Signed-off-by: Atish Patra --- target/riscv/csr.c | 90 ++ 1 file changed, 60 insertions(+), 30 deletions(-) diff --git a/target/riscv/csr.c b/target/riscv/csr.c index 57dbbf9b09a0..ec6d7f022ad5 100644 --- a/target/riscv/csr.c +++ b/target/riscv/csr.c @@ -3859,63 +3859,92 @@ riscv_csr_operations csr_ops[CSR_TABLE_SIZE] = { write_mhpmevent }, [CSR_MHPMEVENT3H]= { "mhpmevent3h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT4H]= { "mhpmevent4h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT5H]= { "mhpmevent5h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT6H]= { "mhpmevent6h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT7H]= { "mhpmevent7h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT8H]= { "mhpmevent8h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT9H]= { "mhpmevent9h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT10H] = { "mhpmevent10h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT11H] = { "mhpmevent11h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT12H] = { "mhpmevent12h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT13H] = { "mhpmevent13h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT14H] = { "mhpmevent14h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT15H] = { "mhpmevent15h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT16H] = { "mhpmevent16h",sscofpmf, read_mhpmeventh, - write_mhpmeventh}, + write_mhpmeventh, + .min_priv_ver = PRIV_VERSION_1_12_0 }, [CSR_MHPMEVENT17H] = { "mhpmevent17h",sscofpmf, read_mhpmeventh, -