Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
529 commits
Select commit Hold shift + click to select a range
ca3f1bc
drm/verisilicon: fix cursor position
Icenowy Dec 5, 2023
d2bdb09
drm/verisilicon: finally fix the cursor position
Icenowy Dec 27, 2023
ee43d33
drm/verisilicon: bias fb address for dual-head offset
Icenowy Dec 28, 2023
54e9f3b
drm/verisilicon: add format_mod_supported to plane
Icenowy Mar 28, 2024
bffceeb
dts: lpi4a: remove mipi screen
RevySR Sep 20, 2024
aaeceee
config: Update openeuler_defconfig
xmzzz Nov 26, 2024
ef51ef6
riscv: Add ACLINT SSWI support
guoren83 Sep 4, 2024
ab2c425
mmc: sdhci-of-dwcmshc: Prevent stale command interrupt handling
Oct 8, 2024
8d311e2
config: Update openeuler_defconfig DRM_ETNAVIV and AIC_FW_PATH
xmzzz Dec 2, 2024
6b1ae7a
config: Disable video_memory module until the bug is resolved
xmzzz Dec 3, 2024
eaacd77
th1520: Fix Makefile for vc8000d vc8000e tracepoints
xmzzz Dec 3, 2024
2dba4c4
th1520: Fix Makefile for npu build error
xmzzz Dec 3, 2024
9269997
th1520: Fixed compilation errors reported by clang
xmzzz Dec 10, 2024
d9e2dfa
sg2042: fix KUnit Error: unrecognized opcode cbo.clean (a0)
woqidaideshi Dec 11, 2024
8d4f455
genirq/irqdomain: Remove the param count restriction from select()
KAGA-KOKO Jan 27, 2024
22b9dad
genirq/msi: Extend msi_parent_ops
KAGA-KOKO Jan 27, 2024
56b4787
genirq/irqdomain: Add DOMAIN_BUS_DEVICE_MSI
KAGA-KOKO Jan 27, 2024
e2d3930
platform-msi: Prepare for real per device domains
KAGA-KOKO Jan 27, 2024
d60ed2e
irqchip: Convert all platform MSI users to the new API
KAGA-KOKO Jan 27, 2024
d19afc1
platform-msi: Remove unused interfaces
KAGA-KOKO Feb 15, 2024
1b75455
genirq/msi: Provide optional translation op
KAGA-KOKO Jan 27, 2024
0e12877
genirq/irqdomain: Don't call ops->select for DOMAIN_BUS_ANY tokens
Feb 20, 2024
6f6dbe1
genirq/msi: Split msi_domain_alloc_irq_at()
KAGA-KOKO Jan 27, 2024
c542103
genirq/msi: Provide DOMAIN_BUS_WIRED_TO_MSI
KAGA-KOKO Jan 27, 2024
3bebe5a
genirq/msi: Optionally use dev->fwnode for device domain
KAGA-KOKO Jan 27, 2024
163fef9
genirq/msi: Provide allocation/free functions for "wired" MSI interrupts
KAGA-KOKO Jan 27, 2024
e5af0f2
genirq/irqdomain: Reroute device MSI create_mapping
KAGA-KOKO Jan 27, 2024
dd725c2
genirq/msi: Provide MSI_FLAG_PARENT_PM_DEV
KAGA-KOKO Jan 27, 2024
7785ba9
RISC-V: Detect Smstateen extension
mdchitale Sep 13, 2023
5c4b48b
dt-bindings: riscv: Add smstateen entry
mdchitale Sep 13, 2023
b9bef9a
mm: add statistics for PUD level pagetable
Sep 18, 2023
4c62b1a
riscv: tlb: fix __p*d_free_tlb()
xhackerustc Dec 19, 2023
6744e03
riscv: tlb: convert __p*d_free_tlb() to inline functions
xhackerustc Dec 19, 2023
ec4ae26
riscv: enable MMU_GATHER_RCU_TABLE_FREE for SMP && MMU
xhackerustc Dec 19, 2023
fe3700d
riscv: enable HAVE_FAST_GUP if MMU
xhackerustc Dec 19, 2023
5997dea
irqchip/riscv-intc: Add support for RISC-V AIA
avpatel Feb 22, 2024
ca6899a
irqchip/riscv-intc: Fix low-level interrupt handler setup for AIA
avpatel Feb 26, 2024
f630376
irqchip/riscv-intc: Fix use of AIA interrupts 32-63 on riscv32
SiFiveHolland Mar 12, 2024
0a57ca0
genirq/matrix: Dynamic bitmap allocation
bjorn-rivos Feb 22, 2024
b3c05f7
dt-bindings: interrupt-controller: Add RISC-V incoming MSI controller
avpatel Mar 7, 2024
bd06219
irqchip: Add RISC-V incoming MSI controller early driver
avpatel Mar 7, 2024
dca3a8e
irqchip/riscv-imsic: Add device MSI domain support for platform devices
avpatel Mar 7, 2024
fe29fc5
irqchip/riscv-imsic: Fix boot time update effective affinity warning
avpatel Apr 13, 2024
41e47e6
irqchip/riscv-imsic: Fix output text of base address
Sep 9, 2024
f1b2b13
irqchip/riscv-imsic: Add device MSI domain support for PCI devices
avpatel Mar 7, 2024
7c82398
dt-bindings: interrupt-controller: Add RISC-V advanced PLIC
avpatel Mar 7, 2024
35ba88b
irqchip: Add RISC-V advanced PLIC driver for direct-mode
avpatel Mar 7, 2024
0e7306e
irqchip/riscv-aplic: Fix an IS_ERR() vs NULL bug in probe()
Aug 20, 2024
d724ecd
irqchip/riscv-aplic: Add support for MSI-mode
avpatel Mar 7, 2024
8b74709
cpumask: Introduce cpumask_first_and_and()
Apr 16, 2024
b3a6636
irqchip/riscv-aplic-direct: Avoid explicit cpumask allocation on stack
Apr 16, 2024
353cb36
irqchip/riscv-aplic: Simplify the initialization code
ruanjinjie-eng Jun 3, 2024
cb9b2a2
irqchip/riscv-aplic: Retrigger MSI interrupt on source configuration
yong-xuan Aug 9, 2024
6f42c58
irqchip/riscv-aplic: Prevent crash when MSI domain is missing
SiFiveHolland Nov 14, 2024
f37d8f4
RISC-V: Select APLIC and IMSIC drivers
avpatel Mar 7, 2024
e019bce
MAINTAINERS: Add entry for RISC-V AIA drivers
avpatel Mar 7, 2024
13e7c8a
kconfig: fix kernel-mode FPU support
xmzzz Jan 10, 2025
14ed679
sg2042: riscv: dts: Add cache info for SG2042
xmzzz Jan 9, 2025
22cb1d9
riscv: config: enable zstd-compressed firmware support
woqidaideshi Mar 12, 2025
2572486
riscv: Kconfig: Enable amdkfd driver config
xmzzz Feb 12, 2025
91b0b2c
riscv: config: Update openeuler_defconfig for ROCm
xmzzz Mar 20, 2025
e9a997c
riscv: k1x: add spacemit k1 soc support
Feb 18, 2025
a09f603
riscv: k1x: dt-bindings: add clock dt-bindings for spacemit k1
Feb 19, 2025
6007ffe
driver: k1x: clk: add clock driver for spacemit k1
Feb 19, 2025
b6c98f5
riscv: k1x: dts: add clock support for spacemit k1
Feb 19, 2025
59b4e34
riscv: k1x: config: enable clock driver for spacemit k1
Feb 25, 2025
4c42e96
riscv: k1x: dt-bindings: add reset dt-bindings for spacemit k1
Feb 19, 2025
a8fde7b
driver: k1x: add reset driver for spacemit k1
Feb 19, 2025
418b0c5
riscv: k1x: dts: add reset support for spacemit k1
Feb 19, 2025
c916fd3
riscv: k1x: config: enable reset driver for spacemit k1
Feb 25, 2025
c17bc66
riscv: k1x: dt-bindings: support pinctrl binding for spacemit k1x soc
Feb 20, 2025
96ad198
driver: k1x: add pinctrl driver for spacemit k1x
Feb 20, 2025
d5f70e4
riscv: k1x: dts: add pinctrl support for spacemit k1x soc
Feb 20, 2025
4652bed
riscv: k1x: config: enable pinctrl driver for spacemit k1
Feb 25, 2025
e521902
driver: k1x: add gpio driver for spacemit k1
Feb 20, 2025
97dfc02
riscv: k1x: dts: add gpio support spacemit k1x soc
Feb 20, 2025
09ef472
riscv: k1x: config: enable gpio driver for spacemit k1
Feb 25, 2025
a8c5759
driver: k1x: add uart serial driver support for spacemit k1x
Feb 20, 2025
a1a9509
riscv: k1x: dts: add uart support for spacemit k1x soc
Feb 20, 2025
203809b
riscv: config: enable serial driver for spacemit k1
Mar 1, 2025
5f7b5a4
riscv: config: Enable Spacemit k1 support
Mar 22, 2025
478092d
RISC-V: KVM: Share APLIC and IMSIC defines with irqchip drivers
avpatel Apr 11, 2024
7101fd0
RISC-V: KVM: Use IMSIC guest files when available
avpatel Apr 11, 2024
72e2e30
RISC-V: Remove unnecessary include from compat.h
woqidaideshi Apr 1, 2025
8551006
RISC-V: Detect Zicond from ISA string
avpatel Sep 15, 2023
2b62c70
riscv: add ISA extension parsing for Zbc
clementleger Nov 14, 2023
876bd15
RISC-V: Enable cbo.zero in usermode
Sep 18, 2023
be805e0
riscv: Rearrange hwcap.h and cpufeature.h
XiaoWang1772 Oct 31, 2023
844d781
RISC-V: clarify the QEMU workaround in ISA parser
a4lg Jul 26, 2023
818f443
riscv: annotate check_unaligned_access_boot_cpu() with __init
clementleger Oct 4, 2023
7beb5d8
riscv: add ISA extension parsing for scalar crypto
evangreen Nov 14, 2023
af56184
riscv: add ISA extension parsing for vector crypto
clementleger Nov 14, 2023
0734c29
riscv: add ISA extension parsing for Zfh/Zfh[min]
clementleger Nov 14, 2023
30db7e9
riscv: add ISA extension parsing for Zihintntl
clementleger Nov 14, 2023
258e52b
riscv: add ISA extension parsing for Zvfh[min]
clementleger Nov 14, 2023
5ef2a97
riscv: add ISA extension parsing for Zfa
clementleger Nov 14, 2023
2fadb33
RISC-V: Remove the removed single-letter extensions
palmer-dabbelt Nov 10, 2023
03d2f38
riscv: add ISA extension parsing for Ztso
clementleger Dec 20, 2023
d7f51cd
riscv: add ISA extension parsing for Zacas
clementleger Dec 20, 2023
2cf70a3
riscv: Fix enabling cbo.zero when running in M-mode
SiFiveHolland Feb 28, 2024
40d4796
riscv: Add a custom ISA extension for the [ms]envcfg CSR
SiFiveHolland Feb 28, 2024
edcf4db
riscv: cpufeature: Fix extension subset checking
charlie-rivos May 3, 2024
de64fd7
riscv: vector: add a comment when calling riscv_setup_vsize()
AndybnACT May 9, 2024
cbf48f7
riscv: cpufeature: call match_isa_ext() for single-letter extensions
AndybnACT May 9, 2024
eb7c65d
perf: RISC-V: Eliminate redundant interrupt enable/disable operations
lyctw Feb 22, 2024
30af871
perf: RISC-V: Introduce Andes PMU to support perf event sampling
lyctw Feb 22, 2024
25a0ad2
riscv: cpufeature: add zve32[xf] and zve64[xfd] isa detection
AndybnACT May 9, 2024
c6cadff
riscv: vector: adjust minimum Vector requirement to ZVE32X
AndybnACT May 9, 2024
62b6f89
riscv: add ISA extension parsing for Zimop
clementleger Jun 19, 2024
19d9bd9
riscv: add ISA extensions validation callback
clementleger Jun 19, 2024
d790629
riscv: add ISA parsing for Zca, Zcf, Zcd and Zcb
clementleger Jun 19, 2024
698a273
riscv: add ISA extension parsing for Zcmop
clementleger Jun 19, 2024
38fa54a
riscv/barrier: Define RISCV_FULL_BARRIER
ericchancf Feb 17, 2024
55ca13a
riscv/barrier: Consolidate fence definitions
ericchancf Feb 17, 2024
2367449
riscv/cmpxchg: Deduplicate xchg() asm functions
Jan 3, 2024
a1a37f7
riscv/cmpxchg: Deduplicate cmpxchg() asm and macros
Jan 3, 2024
d316804
riscv/cmpxchg: Implement cmpxchg for variables of size 1 and 2
Jan 3, 2024
2a28d45
riscv/cmpxchg: Implement xchg for variables of size 1 and 2
Jan 3, 2024
f9067f6
riscv: cmpxchg: implement arch_cmpxchg64_{relaxed|acquire|release}
xhackerustc Mar 25, 2024
adaddf8
riscv: Fix fully ordered LR/SC xchg[8|16]() implementations
May 30, 2024
e7474bd
riscv: Add Zawrs support for spinlocks
cmuellner Apr 26, 2024
f45b39a
riscv: Provide a definition for 'pause'
Apr 26, 2024
9ee23b2
riscv: Extend cpufeature.c to detect vendor extensions
charlie-rivos Jul 19, 2024
2d5a40a
riscv: cpufeature: Do not drop Linux-internal extensions
SiFiveHolland Jul 18, 2024
9f27ea4
riscv: Add ISA extension parsing for Svvptc
Jul 17, 2024
e8b29fe
riscv: Save/restore envcfg CSR during CPU suspend
SiFiveHolland Feb 28, 2024
7854ea4
cpuidle: RISC-V: Move few functions to arch/riscv
vlsunil Jan 18, 2024
2d2acc3
riscv: Do not save the scratch CSR during suspend
SiFiveHolland Mar 12, 2024
8d7fc87
riscv: Enable cbo.zero only when all harts support Zicboz
SiFiveHolland Aug 14, 2024
5de302f
riscv: Call riscv_user_isa_enable() only on the boot hart
SiFiveHolland Aug 14, 2024
59f4d27
riscv: Add ISA extension parsing for pointer masking
SiFiveHolland Oct 16, 2024
d102e2b
riscv: Do not fail to build on byte/halfword operations with Zawrs
Nov 3, 2024
c424427
riscv: Implement cmpxchg32/64() using Zacas
Nov 3, 2024
ed1bc3b
riscv: Implement cmpxchg8/16() using Zabha
Nov 3, 2024
d41d9f4
riscv: Add ISA extension parsing for Ziccrse
Nov 3, 2024
bcc7b2f
RISC-V: Add Svade and Svadu Extensions Support
yong-xuan Jul 26, 2024
5996b2d
RISC-V: hwprobe: Expose Zicboz extension and its block size
Sep 18, 2023
9279107
docs: move riscv under arch
makelinux Sep 30, 2023
34bdc42
riscv: hwprobe: export missing Zbc ISA extension
clementleger Nov 14, 2023
ad65595
riscv: hwprobe: add support for scalar crypto ISA extensions
clementleger Nov 14, 2023
5312919
riscv: hwprobe: export vector crypto ISA extensions
clementleger Nov 14, 2023
6dfdce5
riscv: hwprobe: export Zfh[min] ISA extensions
clementleger Nov 14, 2023
e8247ef
riscv: hwprobe: export Zhintntl ISA extension
clementleger Nov 14, 2023
4fb8bc9
riscv: hwprobe: export Zvfh[min] ISA extensions
clementleger Nov 14, 2023
986cfe2
riscv: hwprobe: export Zfa ISA extension
clementleger Nov 14, 2023
bba5cdf
RISC-V: selftests: Statically link hwprobe test
Sep 18, 2023
977df03
RISC-V: selftests: Convert hwprobe test to kselftest API
Sep 18, 2023
67d576e
RISC-V: selftests: Add CBO tests
Sep 18, 2023
09f1003
RISC-V: hwprobe: Clarify cpus size parameter
Nov 22, 2023
12750ba
RISC-V: hwprobe: Introduce which-cpus flag
Nov 22, 2023
8b733dc
riscv: hwprobe: export Ztso ISA extension
clementleger Dec 20, 2023
37eed4f
riscv: hwprobe: export Zacas ISA extension
clementleger Dec 20, 2023
be578b3
riscv: hwprobe: export Zicond extension
clementleger Dec 20, 2023
0a82cec
riscv: hwprobe: fix invalid sign extension for RISCV_HWPROBE_EXT_ZVFHMIN
clementleger Apr 9, 2024
244e3b1
RISC-V: Move the hwprobe syscall to its own file
Nov 22, 2023
91b2cb9
riscv: hwprobe: export Zihintpause ISA extension
clementleger Feb 21, 2024
46035a1
riscv: hwprobe: add zve Vector subextensions into hwprobe interface
AndybnACT May 9, 2024
143f44f
riscv: hwprobe: export Zimop ISA extension
clementleger Jun 19, 2024
3650660
riscv: hwprobe: export Zca, Zcf, Zcd and Zcb ISA extensions
clementleger Jun 19, 2024
e78a11a
riscv: hwprobe: export Zcmop ISA extension
clementleger Jun 19, 2024
7a30472
riscv: hwprobe: export highest virtual userspace address
clementleger Apr 10, 2024
685169b
riscv: hwprobe: export Zawrs ISA extension
Apr 26, 2024
73af8d8
RISC-V: Provide the frequency of time CSR via hwprobe
palmer-dabbelt Jul 2, 2024
276c09b
riscv: hwprobe: Export the Supm ISA extension
SiFiveHolland Oct 16, 2024
fb30f1e
RISC-V: hwprobe: sort EXT_KEY()s in hwprobe_isa_ext0() alphabetically
ConchuOD Jul 17, 2024
4865843
riscv: Introduce vendor variants of extension helpers
charlie-rivos Jul 19, 2024
6e70278
riscv: cpufeature: Extract common elements from extension checking
charlie-rivos Jul 19, 2024
448b786
riscv: Move cpufeature.h macros into their own header
Nov 3, 2024
10a50b5
riscv: errata: Rename defines for Andes
lyctw Feb 22, 2024
8626189
ACPICA: SRAT: Add RISC-V RINTC affinity structure
uestc-gr Apr 25, 2025
1345f7d
ACPI: RISCV: Add NUMA support based on SRAT and SLIT
uestc-gr Apr 25, 2025
7514c48
ACPI: NUMA: Add handler for SRAT RINTC affinity structure
uestc-gr Apr 25, 2025
3b58dbe
ACPI: NUMA: Make some NUMA-related functions available for RISC-V
uestc-gr Apr 25, 2025
e8c6482
ACPI: NUMA: change the ACPI_NUMA to a hidden option
uestc-gr Apr 25, 2025
eba10cd
ACPI: NUMA: replace pr_info with pr_debug in arch_acpi_numa_init
uestc-gr Apr 25, 2025
5fe176d
irqchip/sifive-plic: Convert PLIC driver into a platform driver
avpatel Feb 22, 2024
0d21221
irqchip/sifive-plic: Use dev_xyz() in-place of pr_xyz()
avpatel Feb 22, 2024
1da31ea
irqchip/sifive-plic: Use devm_xyz() for managed allocation
avpatel Feb 22, 2024
a990cf3
irqchip/sifive-plic: Use riscv_get_intc_hwnode() to get parent fwnode
avpatel Feb 22, 2024
7a79a01
irqchip/sifive-plic: Cleanup PLIC contexts upon irqdomain creation fa…
avpatel Feb 22, 2024
035484a
irqchip/sifive-plic: Parse number of interrupts and contexts early in…
avpatel Feb 22, 2024
26100b5
irqchip/sifive-plic: Improve locking safety by using irqsave/irqrestore
avpatel Feb 22, 2024
e34b0da
irqchip/sifive-plic: Avoid explicit cpumask allocation on stack
Apr 16, 2024
7bdd975
irqchip/sifive-plic: Chain to parent IRQ after handlers are ready
SiFiveHolland May 29, 2024
ccea228
irqchip/sifive-plic: Probe plic driver early for Allwinner D1 platform
avpatel Aug 20, 2024
a90ce24
arm64: PCI: Migrate ACPI related functions to pci-acpi.c
vlsunil Aug 12, 2024
ad1e193
ACPI: scan: Add a weak arch_sort_irqchip_probe() to order the IRQCHIP…
vlsunil Aug 12, 2024
44943b9
ACPI: bus: Add acpi_riscv_init() function
vlsunil Aug 12, 2024
443b26d
ACPI: scan: Extract CSI-2 connection graph from _CRS
rafaeljw Nov 6, 2023
547c28d
ACPI: utils: Dynamically determine acpi_handle_list size
rafaeljw Sep 27, 2023
c4bdb75
ACPI: utils: Fix error path in acpi_evaluate_reference()
rafaeljw Dec 7, 2023
a4c1593
ACPI: utils: Rearrange in acpi_evaluate_reference()
rafaeljw Dec 8, 2023
713f6ae
ACPI: utils: Return bool from acpi_evaluate_reference()
rafaeljw Dec 8, 2023
ef2acd3
ACPI: utils: Refine acpi_handle_list_equal() slightly
rafaeljw Dec 8, 2023
357b3b5
ACPI: utils: Fix white space in struct acpi_handle_list definition
rafaeljw Dec 8, 2023
ff0d830
ACPI: scan: Refactor dependency creation
vlsunil Aug 12, 2024
38fc819
ACPI: scan: Add RISC-V interrupt controllers to honor list
vlsunil Aug 12, 2024
db87f79
ACPI: scan: Define weak function to populate dependencies
vlsunil Aug 12, 2024
29cbab4
ACPI: bus: Add RINTC IRQ model for RISC-V
vlsunil Aug 12, 2024
de3ef0a
ACPI: pci_link: Clear the dependencies after probe
vlsunil Aug 12, 2024
adab440
ACPI: RISC-V: Implement PCI related functionality
vlsunil Aug 12, 2024
d0b5aef
ACPI: RISC-V: Implement function to reorder irqchip probe entries
vlsunil Aug 12, 2024
614066e
ACPI: RISC-V: Initialize GSI mapping structures
vlsunil Aug 12, 2024
f646743
ACPI: RISC-V: Implement function to add implicit dependencies
vlsunil Aug 12, 2024
a05b567
irqchip/riscv-intc: Add ACPI support for AIA
vlsunil Aug 12, 2024
f68e673
irqchip/riscv-imsic-state: Create separate function for DT
vlsunil Aug 12, 2024
310f0be
irqchip/riscv-imsic: Add ACPI support
vlsunil Aug 12, 2024
1edfab0
irqchip/riscv-aplic: Add ACPI support
vlsunil Aug 12, 2024
de9ba27
irqchip/sifive-plic: Add ACPI support
vlsunil Aug 27, 2024
aba543d
irqchip/riscv-intc: Fix SMP=n boot with ACPI
vlsunil Oct 14, 2024
b5a8eb0
clocksource/timer-riscv: ACPI: Add timer_cannot_wakeup_cpu
vlsunil Sep 27, 2023
89acee9
RISC-V: ACPI: Enhance acpi_os_ioremap with MMIO remapping
vlsunil Oct 18, 2023
6f8c537
RISC-V: ACPI: Update the return value of acpi_get_rhct()
vlsunil Oct 18, 2023
e4725b2
RISC-V: ACPI: RHCT: Add function to get CBO block sizes
vlsunil Oct 18, 2023
1574afc
RISC-V: cacheflush: Initialize CBO variables on ACPI systems
vlsunil Oct 18, 2023
75e5e35
driver: k1: add an interconnect process driver
May 17, 2025
0504014
riscv: k1: dts: add memory ranges define
May 17, 2025
cae8cce
riscv: config: enable memory range driver for spacemit k1
May 20, 2025
41d4043
riscv: dmi: Add SMBIOS/DMI support
uestc-gr May 20, 2025
f5a8632
serial/8250_dw: Add ACPI ID for SG2044 UART
Apr 16, 2025
aadc91c
irqchip: Add Sophgo SG2044 MSI controller driver
May 7, 2025
e994915
riscv: openeuler_defconfig: Enable Sophgo SG2044 MSI drivers
May 7, 2025
476737f
drivers: i2c: Add ACPI support for Sophgo I2C Controller
Apr 22, 2025
56bb046
drivers: spi: Add ACPI support for Sophgo SPI Controller
Apr 22, 2025
f182967
ACPI: RISC-V: Add LPI driver
vlsunil Jan 18, 2024
1b1e7a3
ACPI: Enable ACPI_PROCESSOR for RISC-V
vlsunil Jan 18, 2024
f5e7255
lib/string_choices: Add str_plural() helper
mwajdecz Feb 14, 2024
60415c0
dt-bindings: interrupt-controller: Add T-HEAD C900 ACLINT SSWI device
inochisa Oct 31, 2024
0d4c90a
irqchip: Add T-HEAD C900 ACLINT SSWI driver
inochisa Oct 31, 2024
5a96b87
drivers: Add ACPI support for thead-c900-aclint-sswi
Jan 8, 2025
deb81b3
riscv: openeuler_defconfig: Enable T-HEAD C900 ACLINT SSWI drivers
May 7, 2025
9efb3f5
RISC-V: Enable IPI CPU Backtrace
uestc-gr Jun 5, 2025
915100a
RISC-V: ACPI: Enable SPCR table for console output on RISC-V
uestc-gr Jun 13, 2025
398f324
iommu/vt-d: add wrapper functions for page allocations
uestc-gr Jun 18, 2025
ce128ba
sizes.h: Add entries between SZ_32G and SZ_64T
uestc-gr Jun 18, 2025
146a21b
iommu: constify of_phandle_args in xlate
uestc-gr Jun 18, 2025
eda60ad
dt-bindings: iommu: riscv: Add bindings for RISC-V IOMMU
uestc-gr Jun 18, 2025
2c65ebe
iommu/riscv: Add RISC-V IOMMU platform device driver
uestc-gr Jun 18, 2025
7bedb5b
iommu/riscv: Add RISC-V IOMMU PCIe device driver
uestc-gr Jun 18, 2025
5d41c7b
iommu/riscv: Enable IOMMU registration and device probe.
uestc-gr Jun 18, 2025
02e86d3
iommu/riscv: Device directory management.
uestc-gr Jun 18, 2025
eec104d
iommu/riscv: Command and fault queue support
uestc-gr Jun 18, 2025
47fbdfc
iommu/riscv: Paging domain support
uestc-gr Jun 18, 2025
5d92b2c
RISC-V: KVM: Add kvm_vcpu_config
yechao-w Jul 14, 2025
b78107c
RISC-V: KVM: Enable Smstateen accesses
yechao-w Jul 14, 2025
1c69659
RISCV: KVM: Add senvcfg context save/restore
yechao-w Jul 14, 2025
4a4e935
RISCV: KVM: Add sstateen0 context save/restore
yechao-w Jul 14, 2025
00d5387
RISCV: KVM: Add sstateen0 to ONE_REG
yechao-w Jul 14, 2025
c2cfafc
RISC-V: KVM: Fix indentation in kvm_riscv_vcpu_set_reg_csr()
yechao-w Jul 14, 2025
7c41ed9
KVM: RISC-V: reset smstateen CSRs
yechao-w Jul 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion Documentation/arch/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ implementation.
openrisc/index
parisc/index
../powerpc/index
../riscv/index
riscv/index
s390/index
sh/index
sparc/index
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
271 changes: 271 additions & 0 deletions Documentation/arch/riscv/hwprobe.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,271 @@
.. SPDX-License-Identifier: GPL-2.0

RISC-V Hardware Probing Interface
---------------------------------

The RISC-V hardware probing interface is based around a single syscall, which
is defined in <asm/hwprobe.h>::

struct riscv_hwprobe {
__s64 key;
__u64 value;
};

long sys_riscv_hwprobe(struct riscv_hwprobe *pairs, size_t pair_count,
size_t cpusetsize, cpu_set_t *cpus,
unsigned int flags);

The arguments are split into three groups: an array of key-value pairs, a CPU
set, and some flags. The key-value pairs are supplied with a count. Userspace
must prepopulate the key field for each element, and the kernel will fill in the
value if the key is recognized. If a key is unknown to the kernel, its key field
will be cleared to -1, and its value set to 0. The CPU set is defined by
CPU_SET(3) with size ``cpusetsize`` bytes. For value-like keys (eg. vendor,
arch, impl), the returned value will only be valid if all CPUs in the given set
have the same value. Otherwise -1 will be returned. For boolean-like keys, the
value returned will be a logical AND of the values for the specified CPUs.
Usermode can supply NULL for ``cpus`` and 0 for ``cpusetsize`` as a shortcut for
all online CPUs. The currently supported flags are:

* :c:macro:`RISCV_HWPROBE_WHICH_CPUS`: This flag basically reverses the behavior
of sys_riscv_hwprobe(). Instead of populating the values of keys for a given
set of CPUs, the values of each key are given and the set of CPUs is reduced
by sys_riscv_hwprobe() to only those which match each of the key-value pairs.
How matching is done depends on the key type. For value-like keys, matching
means to be the exact same as the value. For boolean-like keys, matching
means the result of a logical AND of the pair's value with the CPU's value is
exactly the same as the pair's value. Additionally, when ``cpus`` is an empty
set, then it is initialized to all online CPUs which fit within it, i.e. the
CPU set returned is the reduction of all the online CPUs which can be
represented with a CPU set of size ``cpusetsize``.

All other flags are reserved for future compatibility and must be zero.

On success 0 is returned, on failure a negative error code is returned.

The following keys are defined:

* :c:macro:`RISCV_HWPROBE_KEY_MVENDORID`: Contains the value of ``mvendorid``,
as defined by the RISC-V privileged architecture specification.

* :c:macro:`RISCV_HWPROBE_KEY_MARCHID`: Contains the value of ``marchid``, as
defined by the RISC-V privileged architecture specification.

* :c:macro:`RISCV_HWPROBE_KEY_MIMPLID`: Contains the value of ``mimplid``, as
defined by the RISC-V privileged architecture specification.

* :c:macro:`RISCV_HWPROBE_KEY_BASE_BEHAVIOR`: A bitmask containing the base
user-visible behavior that this kernel supports. The following base user ABIs
are defined:

* :c:macro:`RISCV_HWPROBE_BASE_BEHAVIOR_IMA`: Support for rv32ima or
rv64ima, as defined by version 2.2 of the user ISA and version 1.10 of the
privileged ISA, with the following known exceptions (more exceptions may be
added, but only if it can be demonstrated that the user ABI is not broken):

* The ``fence.i`` instruction cannot be directly executed by userspace
programs (it may still be executed in userspace via a
kernel-controlled mechanism such as the vDSO).

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

* :c:macro:`RISCV_HWPROBE_IMA_FD`: The F and D extensions are supported, as
defined by commit cd20cee ("FMIN/FMAX now implement
minimumNumber/maximumNumber, not minNum/maxNum") of the RISC-V ISA manual.

* :c:macro:`RISCV_HWPROBE_IMA_C`: The C extension is supported, as defined
by version 2.2 of the RISC-V ISA manual.

* :c:macro:`RISCV_HWPROBE_IMA_V`: The V extension is supported, as defined by
version 1.0 of the RISC-V Vector extension manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZBA`: The Zba address generation extension is
supported, as defined in version 1.0 of the Bit-Manipulation ISA
extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZBB`: The Zbb extension is supported, as defined
in version 1.0 of the Bit-Manipulation ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZBS`: The Zbs extension is supported, as defined
in version 1.0 of the Bit-Manipulation ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZICBOZ`: The Zicboz extension is supported, as
ratified in commit 3dd606f ("Create cmobase-v1.0.pdf") of riscv-CMOs.

* :c:macro:`RISCV_HWPROBE_EXT_ZBC` The Zbc extension is supported, as defined
in version 1.0 of the Bit-Manipulation ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZBKB` The Zbkb extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZBKC` The Zbkc extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZBKX` The Zbkx extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZKND` The Zknd extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZKNE` The Zkne extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZKNH` The Zknh extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZKSED` The Zksed extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZKSH` The Zksh extension is supported, as
defined in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZKT` The Zkt extension is supported, as defined
in version 1.0 of the Scalar Crypto ISA extensions.

* :c:macro:`RISCV_HWPROBE_EXT_ZVBB`: The Zvbb extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVBC`: The Zvbc extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKB`: The Zvkb extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKG`: The Zvkg extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKNED`: The Zvkned extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKNHA`: The Zvknha extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKNHB`: The Zvknhb extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKSED`: The Zvksed extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKSH`: The Zvksh extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZVKT`: The Zvkt extension is supported as
defined in version 1.0 of the RISC-V Cryptography Extensions Volume II.

* :c:macro:`RISCV_HWPROBE_EXT_ZFH`: The Zfh extension version 1.0 is supported
as defined in the RISC-V ISA manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZFHMIN`: The Zfhmin extension version 1.0 is
supported as defined in the RISC-V ISA manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZIHINTNTL`: The Zihintntl extension version 1.0
is supported as defined in the RISC-V ISA manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZVFH`: The Zvfh extension is supported as
defined in the RISC-V Vector manual starting from commit e2ccd0548d6c
("Remove draft warnings from Zvfh[min]").

* :c:macro:`RISCV_HWPROBE_EXT_ZVFHMIN`: The Zvfhmin extension is supported as
defined in the RISC-V Vector manual starting from commit e2ccd0548d6c
("Remove draft warnings from Zvfh[min]").

* :c:macro:`RISCV_HWPROBE_EXT_ZFA`: The Zfa extension is supported as
defined in the RISC-V ISA manual starting from commit 056b6ff467c7
("Zfa is ratified").

* :c:macro:`RISCV_HWPROBE_EXT_ZTSO`: The Ztso extension is supported as
defined in the RISC-V ISA manual starting from commit 5618fb5a216b
("Ztso is now ratified.")

* :c:macro:`RISCV_HWPROBE_EXT_ZACAS`: The Zacas extension is supported as
defined in the Atomic Compare-and-Swap (CAS) instructions manual starting
from commit 5059e0ca641c ("update to ratified").

* :c:macro:`RISCV_HWPROBE_EXT_ZICOND`: The Zicond extension is supported as
defined in the RISC-V Integer Conditional (Zicond) operations extension
manual starting from commit 95cf1f9 ("Add changes requested by Ved
during signoff")

* :c:macro:`RISCV_HWPROBE_EXT_ZIHINTPAUSE`: The Zihintpause extension is
supported as defined in the RISC-V ISA manual starting from commit
d8ab5c78c207 ("Zihintpause is ratified").

* :c:macro:`RISCV_HWPROBE_EXT_ZVE32X`: The Vector sub-extension Zve32x is
supported, as defined by version 1.0 of the RISC-V Vector extension manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZVE32F`: The Vector sub-extension Zve32f is
supported, as defined by version 1.0 of the RISC-V Vector extension manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZVE64X`: The Vector sub-extension Zve64x is
supported, as defined by version 1.0 of the RISC-V Vector extension manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZVE64F`: The Vector sub-extension Zve64f is
supported, as defined by version 1.0 of the RISC-V Vector extension manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZVE64D`: The Vector sub-extension Zve64d is
supported, as defined by version 1.0 of the RISC-V Vector extension manual.

* :c:macro:`RISCV_HWPROBE_EXT_ZIMOP`: The Zimop May-Be-Operations extension is
supported as defined in the RISC-V ISA manual starting from commit
58220614a5f ("Zimop is ratified/1.0").

* :c:macro:`RISCV_HWPROBE_EXT_ZCA`: The Zca extension part of Zc* standard
extensions for code size reduction, as ratified in commit 8be3419c1c0
("Zcf doesn't exist on RV64 as it contains no instructions") of
riscv-code-size-reduction.

* :c:macro:`RISCV_HWPROBE_EXT_ZCB`: The Zcb extension part of Zc* standard
extensions for code size reduction, as ratified in commit 8be3419c1c0
("Zcf doesn't exist on RV64 as it contains no instructions") of
riscv-code-size-reduction.

* :c:macro:`RISCV_HWPROBE_EXT_ZCD`: The Zcd extension part of Zc* standard
extensions for code size reduction, as ratified in commit 8be3419c1c0
("Zcf doesn't exist on RV64 as it contains no instructions") of
riscv-code-size-reduction.

* :c:macro:`RISCV_HWPROBE_EXT_ZCF`: The Zcf extension part of Zc* standard
extensions for code size reduction, as ratified in commit 8be3419c1c0
("Zcf doesn't exist on RV64 as it contains no instructions") of
riscv-code-size-reduction.

* :c:macro:`RISCV_HWPROBE_EXT_ZCMOP`: The Zcmop May-Be-Operations extension is
supported as defined in the RISC-V ISA manual starting from commit
c732a4f39a4 ("Zcmop is ratified/1.0").

* :c:macro:`RISCV_HWPROBE_EXT_ZAWRS`: The Zawrs extension is supported as
ratified in commit 98918c844281 ("Merge pull request #1217 from
riscv/zawrs") of riscv-isa-manual.

* :c:macro:`RISCV_HWPROBE_EXT_SUPM`: The Supm extension is supported as
defined in version 1.0 of the RISC-V Pointer Masking extensions.

* :c:macro:`RISCV_HWPROBE_KEY_CPUPERF_0`: A bitmask that contains performance
information about the selected set of processors.

* :c:macro:`RISCV_HWPROBE_MISALIGNED_UNKNOWN`: The performance of misaligned
accesses is unknown.

* :c:macro:`RISCV_HWPROBE_MISALIGNED_EMULATED`: Misaligned accesses are
emulated via software, either in or below the kernel. These accesses are
always extremely slow.

* :c:macro:`RISCV_HWPROBE_MISALIGNED_SLOW`: Misaligned accesses are slower
than equivalent byte accesses. Misaligned accesses may be supported
directly in hardware, or trapped and emulated by software.

* :c:macro:`RISCV_HWPROBE_MISALIGNED_FAST`: Misaligned accesses are faster
than equivalent byte accesses.

* :c:macro:`RISCV_HWPROBE_MISALIGNED_UNSUPPORTED`: Misaligned accesses are
not supported at all and will generate a misaligned address fault.

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

* :c:macro:`RISCV_HWPROBE_KEY_HIGHEST_VIRT_ADDRESS`: An unsigned long which
represent the highest userspace virtual address usable.

* :c:macro:`RISCV_HWPROBE_KEY_TIME_CSR_FREQ`: Frequency (in Hz) of `time CSR`.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwlock/xuantie,th1520-hwspinlock.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: XUANTIE th1520 SoC HwSpinlock

maintainers:
- Liu Yibin <jiulong@linux.alibaba.com>

properties:
compatible:
items:
- const: th1520,hwspinlock

reg:
maxItems: 1


required:
- compatible
- reg

additionalProperties: false

examples:

- |
hwspinlock: hwspinlock@ffefc10000 {
compatible = "th1520,hwspinlock";
reg = <0xff 0xefc10000 0x0 0x10000>;
status = "disabled";
};
52 changes: 52 additions & 0 deletions Documentation/devicetree/bindings/iio/adc/thead,th1520-adc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/adc/xuantie,th1520-adc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: XuanTie TH1520 Analog to Digital Converter (ADC)

maintainers:
- Fugang Duan <duanfugang.dfg@linux.alibaba.com>
- Xiangyi Zeng <xiangyi.zeng@linux.alibaba.com>
- Wei Fu <wefu@redhat.com>

description: |
12-Bit Analog to Digital Converter (ADC) on XuanTie TH1520
properties:
compatible:
const: xuantie,th1520-adc

reg:
maxItems: 1

interrupts:
maxItems: 1

clocks:
maxItems: 1

clock-names:
const: adc

required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- status

additionalProperties: false

examples:
- |
adc: adc@0xfffff51000 {
compatible = "xuantie,th1520-adc";
reg = <0xff 0xfff51000 0x0 0x1000>;
interrupts = <61 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&aonsys_clk>;
clock-names = "adc";
/* ADC pin is proprietary,no need to config pinctrl */
status = "disabled";
};
Loading