All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/6] Provide a fraemework for RISC-V ISA extensions
@ 2022-02-10 21:40 ` Atish Patra
  0 siblings, 0 replies; 54+ messages in thread
From: Atish Patra @ 2022-02-10 21:40 UTC (permalink / raw)
  To: linux-kernel
  Cc: Atish Patra, Albert Ou, Atish Patra, Anup Patel, Damien Le Moal,
	devicetree, Jisheng Zhang, Krzysztof Kozlowski, linux-riscv,
	Palmer Dabbelt, Paul Walmsley, Rob Herring

This series implements a generic framework to parse multi-letter ISA
extensions. This series is based on Tsukasa's v3 isa extension improvement
series[1]. I have fixed few bugs and improved comments from that series
(PATCH1-3). I have not used PATCH 4 from that series as we are not using
ISA extension versioning as of now. We can add that later if required.

PATCH 4 allows the probing of multi-letter extensions via a macro.
It continues to use the common isa extensions between all the harts.
Thus hetergenous hart systems will only see the common ISA extensions.

PATCH 6 improves the /proc/cpuinfo interface for the available ISA extensions
via /proc/cpuinfo.

Here is the example output of /proc/cpuinfo:
(with debug patches in Qemu and Linux kernel)

/ # cat /proc/cpuinfo
processor	: 0
hart		: 0
isa		: rv64imafdcsu
isa-ext		: sstc,sscofpmf
mmu		: sv48

processor	: 1
hart		: 1
isa		: rv64imafdcsu
isa-ext		: sstc,sscofpmf
mmu		: sv48

processor	: 2
hart		: 2
isa		: rv64imafdcsu
isa-ext		: sstc,sscofpmf
mmu		: sv48

processor	: 3
hart		: 3
isa		: rv64imafdcsu
isa-ext		: sstc,sscofpmf
mmu		: sv48

Anybody adding support for any new multi-letter extensions should add an
entry to the riscv_isa_ext_id and the isa extension array. 
E.g. The patch[2] adds the support for sstc extension.

[1] https://lore.kernel.org/all/0f568515-a05e-8204-aae3-035975af3ee8@irq.a4lg.com/T/
[2] https://github.com/atishp04/linux/commit/dfc9b0d16f5a6e4695f0b3ca2f6e3f99654992db 


Changes from v1->v2:
1. Instead of adding a separate DT property use the riscv,isa property.
2. Based on Tsukasa's v3 isa extension improvement series.

Atish Patra (3):
RISC-V: Implement multi-letter ISA extension probing framework
RISC-V: Do no continue isa string parsing without correct XLEN
RISC-V: Improve /proc/cpuinfo output for ISA extensions

Tsukasa OI (3):
RISC-V: Correctly print supported extensions
RISC-V: Minimal parser for "riscv, isa" strings
RISC-V: Extract multi-letter extension names from "riscv,isa"

arch/riscv/include/asm/hwcap.h |  25 +++++++
arch/riscv/kernel/cpu.c        |  44 ++++++++++-
arch/riscv/kernel/cpufeature.c | 132 ++++++++++++++++++++++++++++-----
3 files changed, 180 insertions(+), 21 deletions(-)

--
2.30.2


^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2022-02-16  0:48 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-10 21:40 [PATCH v2 0/6] Provide a fraemework for RISC-V ISA extensions Atish Patra
2022-02-10 21:40 ` Atish Patra
2022-02-10 21:40 ` [PATCH v2 1/6] RISC-V: Correctly print supported extensions Atish Patra
2022-02-10 21:40   ` Atish Patra
2022-02-10 21:40 ` [PATCH v2 2/6] RISC-V: Minimal parser for "riscv, isa" strings Atish Patra
2022-02-10 21:40   ` Atish Patra
2022-02-12  6:25   ` Tsukasa OI
2022-02-12  6:29     ` [PATCH v3 1/3] RISC-V: Correctly print supported extensions Tsukasa OI
2022-02-14 20:04       ` Heiko Stübner
2022-02-12  6:30     ` [PATCH v3 2/3] RISC-V: Minimal parser for "riscv, isa" strings Tsukasa OI
2022-02-14 20:04       ` Heiko Stübner
2022-02-12  6:30     ` [PATCH v3 3/3] RISC-V: Extract multi-letter extension names from "riscv, isa" Tsukasa OI
2022-02-14 20:04       ` Heiko Stübner
2022-02-14 20:07     ` [PATCH v2 2/6] RISC-V: Minimal parser for "riscv, isa" strings Atish Patra
2022-02-15  3:27       ` Tsukasa OI
2022-02-15  7:36         ` Atish Patra
2022-02-10 21:40 ` [PATCH v2 3/6] RISC-V: Extract multi-letter extension names from "riscv,isa" Atish Patra
2022-02-10 21:40   ` [PATCH v2 3/6] RISC-V: Extract multi-letter extension names from "riscv, isa" Atish Patra
2022-02-10 21:40 ` [PATCH v2 4/6] RISC-V: Implement multi-letter ISA extension probing framework Atish Patra
2022-02-10 21:40   ` Atish Patra
2022-02-14 20:05   ` Heiko Stübner
2022-02-14 20:05     ` Heiko Stübner
2022-02-14 20:14     ` Atish Patra
2022-02-14 20:14       ` Atish Patra
2022-02-14 20:24       ` Heiko Stübner
2022-02-14 20:24         ` Heiko Stübner
2022-02-14 20:42         ` Atish Patra
2022-02-14 20:42           ` Atish Patra
2022-02-14 22:22           ` Heiko Stübner
2022-02-14 22:22             ` Heiko Stübner
2022-02-14 23:22             ` Atish Kumar Patra
2022-02-14 23:22               ` Atish Kumar Patra
2022-02-15  9:12               ` Atish Kumar Patra
2022-02-15  9:12                 ` Atish Kumar Patra
2022-02-15  9:48                 ` Heiko Stübner
2022-02-15  9:48                   ` Heiko Stübner
2022-02-15  9:50                   ` Heiko Stübner
2022-02-15  9:50                     ` Heiko Stübner
2022-02-16  0:47                     ` Atish Kumar Patra
2022-02-16  0:47                       ` Atish Kumar Patra
2022-02-10 21:40 ` [PATCH v2 5/6] RISC-V: Do no continue isa string parsing without correct XLEN Atish Patra
2022-02-10 21:40   ` Atish Patra
2022-02-10 21:58   ` Andreas Schwab
2022-02-10 21:58     ` Andreas Schwab
2022-02-11 12:52     ` Geert Uytterhoeven
2022-02-11 12:52       ` Geert Uytterhoeven
2022-02-14 20:15       ` Atish Patra
2022-02-14 20:15         ` Atish Patra
2022-02-14 20:06   ` Heiko Stübner
2022-02-14 20:06     ` Heiko Stübner
2022-02-10 21:40 ` [PATCH v2 6/6] RISC-V: Improve /proc/cpuinfo output for ISA extensions Atish Patra
2022-02-10 21:40   ` Atish Patra
2022-02-14 20:07   ` Heiko Stübner
2022-02-14 20:07     ` Heiko Stübner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.