1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/interrupt-controller/riscv,rpmi-mpxy-system-msi.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: RISC-V RPMI system MSI service group based message proxy 8 9maintainers: 10 - Anup Patel <anup@brainfault.org> 11 12description: | 13 The RISC-V Platform Management Interface (RPMI) [1] defines a 14 messaging protocol which is modular and extensible. The supervisor 15 software can send/receive RPMI messages via SBI MPXY extension [2] 16 or some dedicated supervisor-mode RPMI transport. 17 18 The RPMI specification [1] defines system MSI service group which 19 allow application processors to receive MSIs upon system events 20 such as P2A doorbell, graceful shutdown/reboot request, CPU hotplug 21 event, memory hotplug event, etc from the platform microcontroller. 22 The SBI implementation (machine mode firmware or hypervisor) can 23 implement an SBI MPXY channel to allow RPMI system MSI service 24 group access to the supervisor software. 25 26 =========================================== 27 References 28 =========================================== 29 30 [1] RISC-V Platform Management Interface (RPMI) v1.0 (or higher) 31 https://github.com/riscv-non-isa/riscv-rpmi/releases 32 33 [2] RISC-V Supervisor Binary Interface (SBI) v3.0 (or higher) 34 https://github.com/riscv-non-isa/riscv-sbi-doc/releases 35 36properties: 37 compatible: 38 description: 39 Intended for use by the SBI implementation. 40 const: riscv,rpmi-mpxy-system-msi 41 42 mboxes: 43 maxItems: 1 44 description: 45 Mailbox channel of the underlying RPMI transport. 46 47 riscv,sbi-mpxy-channel-id: 48 $ref: /schemas/types.yaml#/definitions/uint32 49 description: 50 The SBI MPXY channel id to be used for providing RPMI access to 51 the supervisor software. 52 53required: 54 - compatible 55 - mboxes 56 - riscv,sbi-mpxy-channel-id 57 58additionalProperties: false 59 60examples: 61 - | 62 interrupt-controller { 63 compatible = "riscv,rpmi-mpxy-system-msi"; 64 mboxes = <&rpmi_shmem_mbox 0x2>; 65 riscv,sbi-mpxy-channel-id = <0x2000>; 66 }; 67... 68