[PATCH v9 04/17] riscv: Add new csr defines related to vector extension
Palmer Dabbelt
palmer at dabbelt.com
Tue Dec 14 08:29:23 PST 2021
On Tue, 09 Nov 2021 01:48:16 PST (-0800), greentime.hu at sifive.com wrote:
> Follow the riscv vector spec to add new csr numbers.
>
> [guoren at linux.alibaba.com: first porting for new vector related csr]
> Signed-off-by: Greentime Hu <greentime.hu at sifive.com>
> Acked-by: Guo Ren <guoren at kernel.org>
> Co-developed-by: Guo Ren <guoren at linux.alibaba.com>
> Signed-off-by: Guo Ren <guoren at linux.alibaba.com>
> Co-developed-by: Vincent Chen <vincent.chen at sifive.com>
> Signed-off-by: Vincent Chen <vincent.chen at sifive.com>
> ---
> arch/riscv/include/asm/csr.h | 16 ++++++++++++++--
> 1 file changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/arch/riscv/include/asm/csr.h b/arch/riscv/include/asm/csr.h
> index 87ac65696871..069743102fac 100644
> --- a/arch/riscv/include/asm/csr.h
> +++ b/arch/riscv/include/asm/csr.h
> @@ -24,6 +24,12 @@
> #define SR_FS_CLEAN _AC(0x00004000, UL)
> #define SR_FS_DIRTY _AC(0x00006000, UL)
>
> +#define SR_VS _AC(0x00000600, UL) /* Vector Status */
> +#define SR_VS_OFF _AC(0x00000000, UL)
> +#define SR_VS_INITIAL _AC(0x00000200, UL)
> +#define SR_VS_CLEAN _AC(0x00000400, UL)
> +#define SR_VS_DIRTY _AC(0x00000600, UL)
> +
> #define SR_XS _AC(0x00018000, UL) /* Extension Status */
> #define SR_XS_OFF _AC(0x00000000, UL)
> #define SR_XS_INITIAL _AC(0x00008000, UL)
> @@ -31,9 +37,9 @@
> #define SR_XS_DIRTY _AC(0x00018000, UL)
>
> #ifndef CONFIG_64BIT
> -#define SR_SD _AC(0x80000000, UL) /* FS/XS dirty */
> +#define SR_SD _AC(0x80000000, UL) /* FS/VS/XS dirty */
> #else
> -#define SR_SD _AC(0x8000000000000000, UL) /* FS/XS dirty */
> +#define SR_SD _AC(0x8000000000000000, UL) /* FS/VS/XS dirty */
> #endif
>
> /* SATP flags */
> @@ -120,6 +126,12 @@
> #define CSR_MIMPID 0xf13
> #define CSR_MHARTID 0xf14
>
> +#define CSR_VSTART 0x8
> +#define CSR_VCSR 0xf
> +#define CSR_VL 0xc20
> +#define CSR_VTYPE 0xc21
> +#define CSR_VLENB 0xc22
> +
> #ifdef CONFIG_RISCV_M_MODE
> # define CSR_STATUS CSR_MSTATUS
> # define CSR_IE CSR_MIE
Reviewed-by: Palmer Dabbelt <palmer at rivosinc.com>
More information about the linux-riscv
mailing list