mirror of https://github.com/torvalds/linux.git
RISC-V Devicetrees for v6.20 (or v7.0)
Anlogic: Minor change to the extension information, to add the "b" extension that's a catch-all for 3 of the extensions already in the dts. Starfive: Append the jh7110 compatible to jh7110s devicetrees, as that will enable OpenSBI etc to run without adding support for this minor variant. The "s" device differs from the non "s" device only in thermal limits and voltage/frequency characteristics. Microchip: Redo the mpfs clock setup yet again, to something approaching correct. The original binding conjured up for the platform was wildly inaccurate, and even with the original improvements, a bigger change to using syscons was required to support several peripherals that also inhabit the memory regions that the clocks lie in. The damage to the dts isn't that bad in the end, and of course the whole thing has been done in a backwards compatible manner, with the code changes being merged a cycle or two ago in the kernel and like a year ago in U-Boot (the only other user that I am aware of). Generic: Additions to extensions.yaml, mainly for things in the "rva23" profile that appear for the first time on the Spacemit K3 SoC. Signed-off-by: Conor Dooley <conor.dooley@microchip.com> -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQRh246EGq/8RLhDjO14tDGHoIJi0gUCaXpxIgAKCRB4tDGHoIJi 0mQcAQC8QEci1lhxDUJvMW2DdvDnM2l/D4Fw6XUMHB3AkoaWIgD+MqhU0LzES8wG IxdJN2WzaaOAVE83zMaSgpdi5Y497wU= =Ntyt -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAml6j9oACgkQmmx57+YA GNmQWRAAmQ3cmwtY+HyZazjBuSlGBdWeziq9LQcTz7I58PO3M+8bR8AiQ2SjBHsL iYd7oezxjC7CIOXarwgX/HFS60G0d3rpWqAr1bxBsO+tWAiswQiE8/KVCWuY31ER Gq4ulAT3TrIYt5PNbAkKSM6csXZ8/NCORC/XQb7zk7LjQCg+H4ny7cE8//klXmCx BMAIb2RoCJSzIBjFLz9eS404l+GNnqVBXbxtvbQZUCHuAJWUns3yVnod4IPzVc9e APc2gDRHbRL/iGprVvD4yeZ/7x5GYpi8MR4W9nvvSxKvbhn5+ZOFN0e8LGBZuN2I XdLqdyZ8NYB7c8V3KIoTkrO68A/mBuQHjSI0UfyW2qUSQ52ZWmY/Q0H/+N1cHZCo /Rpqly6lIwICRzVEc84OfIikM0pEfg8QmDmcdzn8EppULV49natkoTgxIPkqdAsz yOEPYa8zLH/G8PdVNe84ZCn4D/BM1Iu4Y4Z/t2Ib+Vr3Ai8ZP96ZoHuc+JPzvunW F2lIdQ3AZhD+7HX2pyXWH7sZSKNc747AE5cEpnH+3WndF9XCPG8mFNvxOR17pFS+ YGWk91YMOnfpq+P51l9M8whhRTYNav/M411dY7pgLx9UCsheXotdRrqrfYHAEFS7 gCLAR4W1wXnVDFMRHQ8OJiaT8vPlrVbpSy1S+OuCo6nIFpFDO4g= =58in -----END PGP SIGNATURE----- Merge tag 'riscv-dt-for-v6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux into soc/dt RISC-V Devicetrees for v6.20 (or v7.0) Anlogic: Minor change to the extension information, to add the "b" extension that's a catch-all for 3 of the extensions already in the dts. Starfive: Append the jh7110 compatible to jh7110s devicetrees, as that will enable OpenSBI etc to run without adding support for this minor variant. The "s" device differs from the non "s" device only in thermal limits and voltage/frequency characteristics. Microchip: Redo the mpfs clock setup yet again, to something approaching correct. The original binding conjured up for the platform was wildly inaccurate, and even with the original improvements, a bigger change to using syscons was required to support several peripherals that also inhabit the memory regions that the clocks lie in. The damage to the dts isn't that bad in the end, and of course the whole thing has been done in a backwards compatible manner, with the code changes being merged a cycle or two ago in the kernel and like a year ago in U-Boot (the only other user that I am aware of). Generic: Additions to extensions.yaml, mainly for things in the "rva23" profile that appear for the first time on the Spacemit K3 SoC. Signed-off-by: Conor Dooley <conor.dooley@microchip.com> * tag 'riscv-dt-for-v6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux: riscv: dts: anlogic: dr1v90: Add "b" ISA extension dt-bindings: riscv: extensions: Drop unnecessary select schema dt-bindings: riscv: Add Sha and its comprised extensions dt-bindings: riscv: Add Ssccptr, Sscounterenw, Sstvala, Sstvecd, Ssu64xl dt-bindings: riscv: Add descriptions for Za64rs, Ziccamoa, Ziccif, and Zicclsm dt-bindings: riscv: Add B ISA extension description dt-bindings: riscv: update ratified version of h, svinval, svnapot, svpbmt riscv: dts: starfive: Append JH-7110 SoC compatible to VisionFive 2 Lite eMMC board riscv: dts: starfive: Append JH-7110 SoC compatible to VisionFive 2 Lite board dt-bindings: riscv: starfive: Append JH-7110 SoC compatible to VisionFive 2 Lite board riscv: dts: microchip: convert clock and reset to use syscon riscv: dts: microchip: fix mailbox description Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
25ed1e9840
|
|
@ -24,12 +24,6 @@ description: |
|
|||
ratified states, with the exception of the I, Zicntr & Zihpm extensions.
|
||||
See the "i" property for more information.
|
||||
|
||||
select:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: riscv
|
||||
|
||||
properties:
|
||||
riscv,isa:
|
||||
description:
|
||||
|
|
@ -109,6 +103,13 @@ properties:
|
|||
The standard C extension for compressed instructions, as ratified in
|
||||
the 20191213 version of the unprivileged ISA specification.
|
||||
|
||||
- const: b
|
||||
description:
|
||||
The standard B extension for bit manipulation instructions, as
|
||||
ratified in the 20240411 version of the unprivileged ISA
|
||||
specification. The B standard extension comprises instructions
|
||||
provided by the Zba, Zbb, and Zbs extensions.
|
||||
|
||||
- const: v
|
||||
description:
|
||||
The standard V extension for vector operations, as ratified
|
||||
|
|
@ -117,10 +118,62 @@ properties:
|
|||
|
||||
- const: h
|
||||
description:
|
||||
The standard H extension for hypervisors as ratified in the 20191213
|
||||
version of the privileged ISA specification.
|
||||
The standard H extension for hypervisors as ratified in the RISC-V
|
||||
Instruction Set Manual, Volume II Privileged Architecture,
|
||||
Document Version 20211203.
|
||||
|
||||
# multi-letter extensions, sorted alphanumerically
|
||||
- const: sha
|
||||
description: |
|
||||
The standard Sha extension for augmented hypervisor extension as
|
||||
ratified in RVA23 Profiles Version 1.0, with commit 0273f3c921b6
|
||||
("rva23/rvb23 ratified").
|
||||
|
||||
Sha captures the full set of features that are mandated to be
|
||||
supported along with the H extension. Sha comprises the following
|
||||
extensions: H, Shcounterenw, Shgatpa, Shtvala, Shvsatpa, Shvstvala,
|
||||
Shvstvecd, and Ssstateen.
|
||||
|
||||
- const: shcounterenw
|
||||
description: |
|
||||
The standard Shcounterenw extension for support writable enables
|
||||
in hcounteren for any supported counter, as ratified in RISC-V
|
||||
Profiles Version 1.0, with commit b1d806605f87 ("Updated to
|
||||
ratified state.")
|
||||
|
||||
- const: shgatpa
|
||||
description: |
|
||||
The standard Shgatpa extension indicates that for each supported
|
||||
virtual memory scheme SvNN supported in satp, the corresponding
|
||||
hgatp SvNNx4 mode must be supported. The hgatp mode Bare must
|
||||
also be supported. It is ratified in RISC-V Profiles Version 1.0,
|
||||
with commit b1d806605f87 ("Updated to ratified state.")
|
||||
|
||||
- const: shtvala
|
||||
description: |
|
||||
The standard Shtvala extension for htval be written with the
|
||||
faulting guest physical address in all circumstances permitted by
|
||||
the ISA. It is ratified in RISC-V Profiles Version 1.0, with
|
||||
commit b1d806605f87 ("Updated to ratified state.")
|
||||
|
||||
- const: shvsatpa
|
||||
description: |
|
||||
The standard Shvsatpa extension for vsatp supporting all translation
|
||||
modes supported in satp, as ratified in RISC-V Profiles Version 1.0,
|
||||
with commit b1d806605f87 ("Updated to ratified state.")
|
||||
|
||||
- const: shvstvala
|
||||
description: |
|
||||
The standard Shvstvala extension for vstval provides all needed
|
||||
values as ratified in RISC-V Profiles Version 1.0, with commit
|
||||
b1d806605f87 ("Updated to ratified state.")
|
||||
|
||||
- const: shvstvecd
|
||||
description: |
|
||||
The standard Shvstvecd extension for vstvec supporting Direct mode,
|
||||
as ratified in RISC-V Profiles Version 1.0, with commit b1d806605f87
|
||||
("Updated to ratified state.")
|
||||
|
||||
- const: smaia
|
||||
description: |
|
||||
The standard Smaia supervisor-level extension for the advanced
|
||||
|
|
@ -153,24 +206,62 @@ properties:
|
|||
behavioural changes to interrupts as frozen at commit ccbddab
|
||||
("Merge pull request #42 from riscv/jhauser-2023-RC4") of riscv-aia.
|
||||
|
||||
- const: ssccptr
|
||||
description: |
|
||||
The standard Ssccptr extension for main memory (cacheability and
|
||||
coherence) hardware page-table reads, as ratified in RISC-V
|
||||
Profiles Version 1.0, with commit b1d806605f87 ("Updated to
|
||||
ratified state.")
|
||||
|
||||
- const: sscofpmf
|
||||
description: |
|
||||
The standard Sscofpmf supervisor-level extension for count overflow
|
||||
and mode-based filtering as ratified at commit 01d1df0 ("Add ability
|
||||
to manually trigger workflow. (#2)") of riscv-count-overflow.
|
||||
|
||||
- const: sscounterenw
|
||||
description: |
|
||||
The standard Sscounterenw extension for support writable enables
|
||||
in scounteren for any supported counter, as ratified in RISC-V
|
||||
Profiles Version 1.0, with commit b1d806605f87 ("Updated to
|
||||
ratified state.")
|
||||
|
||||
- const: ssnpm
|
||||
description: |
|
||||
The standard Ssnpm extension for next-mode pointer masking as
|
||||
ratified at commit d70011dde6c2 ("Update to ratified state")
|
||||
of riscv-j-extension.
|
||||
|
||||
- const: ssstateen
|
||||
description: |
|
||||
The standard Ssstateen extension for supervisor-mode view of the
|
||||
state-enable extension, as ratified in RISC-V Profiles Version 1.0,
|
||||
with commit b1d806605f87 ("Updated to ratified state.")
|
||||
|
||||
- const: sstc
|
||||
description: |
|
||||
The standard Sstc supervisor-level extension for time compare as
|
||||
ratified at commit 3f9ed34 ("Add ability to manually trigger
|
||||
workflow. (#2)") of riscv-time-compare.
|
||||
|
||||
- const: sstvala
|
||||
description: |
|
||||
The standard Sstvala extension for stval provides all needed values
|
||||
as ratified in RISC-V Profiles Version 1.0, with commit b1d806605f87
|
||||
("Updated to ratified state.")
|
||||
|
||||
- const: sstvecd
|
||||
description: |
|
||||
The standard Sstvecd extension for stvec supports Direct mode as
|
||||
ratified in RISC-V Profiles Version 1.0, with commit b1d806605f87
|
||||
("Updated to ratified state.")
|
||||
|
||||
- const: ssu64xl
|
||||
description: |
|
||||
The standard Ssu64xl extension for UXLEN=64 must be supported, as
|
||||
ratified in RISC-V Profiles Version 1.0, with commit b1d806605f87
|
||||
("Updated to ratified state.")
|
||||
|
||||
- const: svade
|
||||
description: |
|
||||
The standard Svade supervisor-level extension for SW-managed PTE A/D
|
||||
|
|
@ -202,20 +293,22 @@ properties:
|
|||
- const: svinval
|
||||
description:
|
||||
The standard Svinval supervisor-level extension for fine-grained
|
||||
address-translation cache invalidation as ratified in the 20191213
|
||||
version of the privileged ISA specification.
|
||||
address-translation cache invalidation as ratified in the RISC-V
|
||||
Instruction Set Manual, Volume II Privileged Architecture,
|
||||
Document Version 20211203.
|
||||
|
||||
- const: svnapot
|
||||
description:
|
||||
The standard Svnapot supervisor-level extensions for napot
|
||||
translation contiguity as ratified in the 20191213 version of the
|
||||
privileged ISA specification.
|
||||
translation contiguity as ratified in the RISC-V Instruction Set
|
||||
Manual, Volume II Privileged Architecture, Document Version
|
||||
20211203.
|
||||
|
||||
- const: svpbmt
|
||||
description:
|
||||
The standard Svpbmt supervisor-level extensions for page-based
|
||||
memory types as ratified in the 20191213 version of the privileged
|
||||
ISA specification.
|
||||
memory types as ratified in the RISC-V Instruction Set Manual,
|
||||
Volume II Privileged Architecture, Document Version 20211203.
|
||||
|
||||
- const: svrsw60t59b
|
||||
description:
|
||||
|
|
@ -230,6 +323,12 @@ properties:
|
|||
as ratified at commit 4a69197e5617 ("Update to ratified state") of
|
||||
riscv-svvptc.
|
||||
|
||||
- const: za64rs
|
||||
description:
|
||||
The standard Za64rs extension for reservation set size of at most
|
||||
64 bytes, as ratified in RISC-V Profiles Version 1.0, with commit
|
||||
b1d806605f87 ("Updated to ratified state.")
|
||||
|
||||
- const: zaamo
|
||||
description: |
|
||||
The standard Zaamo extension for atomic memory operations as
|
||||
|
|
@ -371,6 +470,27 @@ properties:
|
|||
in commit 64074bc ("Update version numbers for Zfh/Zfinx") of
|
||||
riscv-isa-manual.
|
||||
|
||||
- const: ziccamoa
|
||||
description:
|
||||
The standard Ziccamoa extension for main memory (cacheability and
|
||||
coherence) must support all atomics in A, as ratified in RISC-V
|
||||
Profiles Version 1.0, with commit b1d806605f87 ("Updated to
|
||||
ratified state.")
|
||||
|
||||
- const: ziccif
|
||||
description:
|
||||
The standard Ziccif extension for main memory (cacheability and
|
||||
coherence) instruction fetch atomicity, as ratified in RISC-V
|
||||
Profiles Version 1.0, with commit b1d806605f87 ("Updated to
|
||||
ratified state.")
|
||||
|
||||
- const: zicclsm
|
||||
description:
|
||||
The standard Zicclsm extension for main memory (cacheability and
|
||||
coherence) must support misaligned loads and stores, as ratified
|
||||
in RISC-V Profiles Version 1.0, with commit b1d806605f87 ("Updated
|
||||
to ratified state.")
|
||||
|
||||
- const: ziccrse
|
||||
description:
|
||||
The standard Ziccrse extension which provides forward progress
|
||||
|
|
@ -749,6 +869,42 @@ properties:
|
|||
then:
|
||||
contains:
|
||||
const: f
|
||||
# B comprises Zba, Zbb, and Zbs
|
||||
- if:
|
||||
contains:
|
||||
const: b
|
||||
then:
|
||||
allOf:
|
||||
- contains:
|
||||
const: zba
|
||||
- contains:
|
||||
const: zbb
|
||||
- contains:
|
||||
const: zbs
|
||||
# Zba, Zbb, Zbs together require B
|
||||
- if:
|
||||
allOf:
|
||||
- contains:
|
||||
const: zba
|
||||
- contains:
|
||||
const: zbb
|
||||
- contains:
|
||||
const: zbs
|
||||
then:
|
||||
contains:
|
||||
const: b
|
||||
# Za64rs and Ziccrse depend on Zalrsc or A
|
||||
- if:
|
||||
contains:
|
||||
anyOf:
|
||||
- const: za64rs
|
||||
- const: ziccrse
|
||||
then:
|
||||
oneOf:
|
||||
- contains:
|
||||
const: zalrsc
|
||||
- contains:
|
||||
const: a
|
||||
# Zcb depends on Zca
|
||||
- if:
|
||||
contains:
|
||||
|
|
@ -790,6 +946,16 @@ properties:
|
|||
then:
|
||||
contains:
|
||||
const: f
|
||||
# Ziccamoa depends on Zaamo or A
|
||||
- if:
|
||||
contains:
|
||||
const: ziccamoa
|
||||
then:
|
||||
oneOf:
|
||||
- contains:
|
||||
const: zaamo
|
||||
- contains:
|
||||
const: a
|
||||
# Zvfbfmin depends on V or Zve32f
|
||||
- if:
|
||||
contains:
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ properties:
|
|||
- starfive,visionfive-2-lite
|
||||
- starfive,visionfive-2-lite-emmc
|
||||
- const: starfive,jh7110s
|
||||
- const: starfive,jh7110
|
||||
|
||||
additionalProperties: true
|
||||
|
||||
|
|
|
|||
|
|
@ -27,8 +27,9 @@ cpu@0 {
|
|||
mmu-type = "riscv,sv39";
|
||||
reg = <0>;
|
||||
riscv,isa-base = "rv64i";
|
||||
riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "zba", "zbb", "zbc",
|
||||
"zbkc", "zbs", "zicntr", "zicsr", "zifencei",
|
||||
riscv,isa-extensions = "i", "m", "a", "f", "d", "c", "b",
|
||||
"zba", "zbb", "zbc", "zbkc", "zbs",
|
||||
"zicntr", "zicsr", "zifencei",
|
||||
"zihintpause", "zihpm";
|
||||
|
||||
cpu0_intc: interrupt-controller {
|
||||
|
|
|
|||
|
|
@ -251,14 +251,17 @@ pdma: dma-controller@3000000 {
|
|||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
clkcfg: clkcfg@20002000 {
|
||||
compatible = "microchip,mpfs-clkcfg";
|
||||
reg = <0x0 0x20002000 0x0 0x1000>, <0x0 0x3E001000 0x0 0x1000>;
|
||||
clocks = <&refclk>;
|
||||
#clock-cells = <1>;
|
||||
mss_top_sysreg: syscon@20002000 {
|
||||
compatible = "microchip,mpfs-mss-top-sysreg", "syscon", "simple-mfd";
|
||||
reg = <0x0 0x20002000 0x0 0x1000>;
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
sysreg_scb: syscon@20003000 {
|
||||
compatible = "microchip,mpfs-sysreg-scb", "syscon";
|
||||
reg = <0x0 0x20003000 0x0 0x1000>;
|
||||
};
|
||||
|
||||
ccc_se: clock-controller@38010000 {
|
||||
compatible = "microchip,mpfs-ccc";
|
||||
reg = <0x0 0x38010000 0x0 0x1000>, <0x0 0x38020000 0x0 0x1000>,
|
||||
|
|
@ -447,7 +450,7 @@ mac0: ethernet@20110000 {
|
|||
local-mac-address = [00 00 00 00 00 00];
|
||||
clocks = <&clkcfg CLK_MAC0>, <&clkcfg CLK_AHB>;
|
||||
clock-names = "pclk", "hclk";
|
||||
resets = <&clkcfg CLK_MAC0>;
|
||||
resets = <&mss_top_sysreg CLK_MAC0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
|
@ -461,7 +464,7 @@ mac1: ethernet@20112000 {
|
|||
local-mac-address = [00 00 00 00 00 00];
|
||||
clocks = <&clkcfg CLK_MAC1>, <&clkcfg CLK_AHB>;
|
||||
clock-names = "pclk", "hclk";
|
||||
resets = <&clkcfg CLK_MAC1>;
|
||||
resets = <&mss_top_sysreg CLK_MAC1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
|
@ -521,10 +524,14 @@ usb: usb@20201000 {
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
mbox: mailbox@37020000 {
|
||||
control_scb: syscon@37020000 {
|
||||
compatible = "microchip,mpfs-control-scb", "syscon";
|
||||
reg = <0x0 0x37020000 0x0 0x100>;
|
||||
};
|
||||
|
||||
mbox: mailbox@37020800 {
|
||||
compatible = "microchip,mpfs-mailbox";
|
||||
reg = <0x0 0x37020000 0x0 0x58>, <0x0 0x2000318C 0x0 0x40>,
|
||||
<0x0 0x37020800 0x0 0x100>;
|
||||
reg = <0x0 0x37020800 0x0 0x1000>;
|
||||
interrupt-parent = <&plic>;
|
||||
interrupts = <96>;
|
||||
#mbox-cells = <1>;
|
||||
|
|
@ -541,5 +548,12 @@ syscontroller_qspi: spi@37020100 {
|
|||
clocks = <&scbclk>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
clkcfg: clkcfg@3e001000 {
|
||||
compatible = "microchip,mpfs-clkcfg";
|
||||
reg = <0x0 0x3e001000 0x0 0x1000>;
|
||||
clocks = <&refclk>;
|
||||
#clock-cells = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
/ {
|
||||
model = "StarFive VisionFive 2 Lite eMMC";
|
||||
compatible = "starfive,visionfive-2-lite-emmc", "starfive,jh7110s";
|
||||
compatible = "starfive,visionfive-2-lite-emmc", "starfive,jh7110s", "starfive,jh7110";
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
/ {
|
||||
model = "StarFive VisionFive 2 Lite";
|
||||
compatible = "starfive,visionfive-2-lite", "starfive,jh7110s";
|
||||
compatible = "starfive,visionfive-2-lite", "starfive,jh7110s", "starfive,jh7110";
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
|
|
|
|||
Loading…
Reference in New Issue