Unverified Commit e8fd215e authored by Cyan Yang's avatar Cyan Yang Committed by Palmer Dabbelt
Browse files

riscv: hwprobe: Document SiFive xsfvqmaccdod and xsfvqmaccqoq vendor extensions



Document the support for sifive vendor extensions using the key
RISCV_HWPROBE_KEY_VENDOR_EXT_SIFIVE_0 and two vendor extensions for SiFive
Int8 Matrix Multiplication Instructions using
RISCV_HWPROBE_VENDOR_EXT_XSFVQMACCDOD and
RISCV_HWPROBE_VENDOR_EXT_XSFVQMACCQOQ.

Signed-off-by: default avatarCyan Yang <cyan.yang@sifive.com>
Link: https://lore.kernel.org/r/20250418053239.4351-4-cyan.yang@sifive.com


Signed-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
parent 2d147d77
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -335,3 +335,17 @@ The following keys are defined:

* :c:macro:`RISCV_HWPROBE_KEY_ZICBOM_BLOCK_SIZE`: An unsigned int which
  represents the size of the Zicbom block in bytes.

* :c:macro:`RISCV_HWPROBE_KEY_VENDOR_EXT_SIFIVE_0`: A bitmask containing the
  sifive vendor extensions that are compatible with the
  :c:macro:`RISCV_HWPROBE_BASE_BEHAVIOR_IMA`: base system behavior.

  * SIFIVE

    * :c:macro:`RISCV_HWPROBE_VENDOR_EXT_XSFVQMACCDOD`: The Xsfqmaccdod vendor
        extension is supported in version 1.1 of SiFive Int8 Matrix Multiplication
	Extensions Specification.

    * :c:macro:`RISCV_HWPROBE_VENDOR_EXT_XSFVQMACCQOQ`: The Xsfqmaccqoq vendor
        extension is supported in version 1.1 of SiFive Int8 Matrix Multiplication
	Instruction Extensions Specification.
+1 −1
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@

#include <uapi/asm/hwprobe.h>

#define RISCV_HWPROBE_MAX_KEY 12
#define RISCV_HWPROBE_MAX_KEY 13

static inline bool riscv_hwprobe_key_is_valid(__s64 key)
{
+1 −0
Original line number Diff line number Diff line
@@ -104,6 +104,7 @@ struct riscv_hwprobe {
#define		RISCV_HWPROBE_MISALIGNED_VECTOR_UNSUPPORTED	4
#define RISCV_HWPROBE_KEY_VENDOR_EXT_THEAD_0	11
#define RISCV_HWPROBE_KEY_ZICBOM_BLOCK_SIZE	12
#define RISCV_HWPROBE_KEY_VENDOR_EXT_SIFIVE_0	13
/* Increase RISCV_HWPROBE_MAX_KEY when adding items. */

/* Flags */