Re: [PATCH v11 10/14] riscv: hwprobe: Add thead vendor extension probing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 11/14/24 10:21, Charlie Jenkins wrote:
Add a new hwprobe key "RISCV_HWPROBE_KEY_VENDOR_EXT_THEAD_0" which
allows userspace to probe for the new RISCV_ISA_VENDOR_EXT_XTHEADVECTOR
vendor extension.


Hi Charlie,

How about changing the name of the key from "RISCV_ISA_VENDOR_EXT_XTHEADVECTOR" to "RISCV_HWPROBE_KEY_VENDOR_EXT_0" and use marchid to identify what the vendor is, each vendor will have its own bit definition in this value. So we can avoid adding so many hwprobe keys for each vendor in the future.

I proposed a commit here: https://github.com/cyyself/linux/commit/36390645d85d1ac75dd71172f167719df4297f59

This new key will allow userspace code to probe for which thead vendor
extensions are supported. This API is modeled to be consistent with
RISCV_HWPROBE_KEY_IMA_EXT_0. The bitmask returned will have each bit
corresponding to a supported thead vendor extension of the cpumask set.
Just like RISCV_HWPROBE_KEY_IMA_EXT_0, this allows a userspace program
to determine all of the supported thead vendor extensions in one call.

Signed-off-by: Charlie Jenkins <charlie@xxxxxxxxxxxx>
Reviewed-by: Evan Green <evan@xxxxxxxxxxxx>
---
  arch/riscv/include/asm/hwprobe.h                   |  3 +-
  .../include/asm/vendor_extensions/thead_hwprobe.h  | 19 +++++++++++
  .../include/asm/vendor_extensions/vendor_hwprobe.h | 37 ++++++++++++++++++++++
  arch/riscv/include/uapi/asm/hwprobe.h              |  3 +-
  arch/riscv/include/uapi/asm/vendor/thead.h         |  3 ++
  arch/riscv/kernel/sys_hwprobe.c                    |  5 +++
  arch/riscv/kernel/vendor_extensions/Makefile       |  1 +
  .../riscv/kernel/vendor_extensions/thead_hwprobe.c | 19 +++++++++++
  8 files changed, 88 insertions(+), 2 deletions(-)






[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux