From: Rob Herring <robh@kernel.org>
To: Anup Patel <apatel@ventanamicro.com>
Cc: "Jassi Brar" <jassisinghbrar@gmail.com>,
"Atish Patra" <atish.patra@linux.dev>,
"Michael Turquette" <mturquette@baylibre.com>,
"Uwe Kleine-König" <ukleinek@kernel.org>,
linux-riscv@lists.infradead.org, linux-clk@vger.kernel.org,
"Anup Patel" <anup@brainfault.org>,
"Bartosz Golaszewski" <brgl@bgdev.pl>,
"Rafael J . Wysocki" <rafael@kernel.org>,
"Linus Walleij" <linus.walleij@linaro.org>,
"Rahul Pathak" <rpathak@ventanamicro.com>,
devicetree@vger.kernel.org, "Conor Dooley" <conor+dt@kernel.org>,
"Leyfoon Tan" <leyfoon.tan@starfivetech.com>,
"Paul Walmsley" <paul.walmsley@sifive.com>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Mika Westerberg" <mika.westerberg@linux.intel.com>,
"Stephen Boyd" <sboyd@kernel.org>,
linux-kernel@vger.kernel.org,
"Samuel Holland" <samuel.holland@sifive.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Andrew Jones" <ajones@ventanamicro.com>,
"Len Brown" <lenb@kernel.org>
Subject: Re: [PATCH v3 02/23] dt-bindings: mailbox: Add bindings for RPMI shared memory transport
Date: Mon, 19 May 2025 12:26:47 -0500 [thread overview]
Message-ID: <20250519172647.GA2603742-robh@kernel.org> (raw)
In-Reply-To: <20250511133939.801777-3-apatel@ventanamicro.com>
On Sun, May 11, 2025 at 07:09:18PM +0530, Anup Patel wrote:
> Add device tree bindings for the common RISC-V Platform Management
> Interface (RPMI) shared memory transport as a mailbox controller.
>
> Signed-off-by: Anup Patel <apatel@ventanamicro.com>
> ---
> .../mailbox/riscv,rpmi-shmem-mbox.yaml | 148 ++++++++++++++++++
> 1 file changed, 148 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/mailbox/riscv,rpmi-shmem-mbox.yaml
>
> diff --git a/Documentation/devicetree/bindings/mailbox/riscv,rpmi-shmem-mbox.yaml b/Documentation/devicetree/bindings/mailbox/riscv,rpmi-shmem-mbox.yaml
> new file mode 100644
> index 000000000000..3194c066d952
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mailbox/riscv,rpmi-shmem-mbox.yaml
> @@ -0,0 +1,148 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mailbox/riscv,rpmi-shmem-mbox.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: RISC-V Platform Management Interface (RPMI) shared memory mailbox
> +
> +maintainers:
> + - Anup Patel <anup@brainfault.org>
> +
> +description: |
> + The RISC-V Platform Management Interface (RPMI) [1] defines a common shared
> + memory based RPMI transport. This RPMI shared memory transport integrates as
> + mailbox controller in the SBI implementation or supervisor software whereas
> + each RPMI service group is mailbox client in the SBI implementation and
> + supervisor software.
> +
> + ===========================================
> + References
> + ===========================================
> +
> + [1] RISC-V Platform Management Interface (RPMI)
> + https://github.com/riscv-non-isa/riscv-rpmi/releases
> +
> +properties:
> + compatible:
> + const: riscv,rpmi-shmem-mbox
> +
> + reg:
> + oneOf:
> + - items:
> + - description: A2P request queue base address
> + - description: P2A acknowledgment queue base address
> + - description: P2A request queue base address
> + - description: A2P acknowledgment queue base address
> + - description: A2P doorbell address
> + - items:
> + - description: A2P request queue base address
> + - description: P2A acknowledgment queue base address
> + - description: P2A request queue base address
> + - description: A2P acknowledgment queue base address
> + - items:
> + - description: A2P request queue base address
> + - description: P2A acknowledgment queue base address
> + - description: A2P doorbell address
> + - items:
> + - description: A2P request queue base address
> + - description: P2A acknowledgment queue base address
> +
> + reg-names:
> + oneOf:
> + - items:
> + - const: a2p-req
> + - const: p2a-ack
> + - const: p2a-req
> + - const: a2p-ack
> + - const: a2p-doorbell
> + - items:
> + - const: a2p-req
> + - const: p2a-ack
> + - const: p2a-req
> + - const: a2p-ack
> + - items:
> + - const: a2p-req
> + - const: p2a-ack
> + - const: a2p-doorbell
> + - items:
> + - const: a2p-req
> + - const: p2a-ack
This can all be just:
minItems: 2
items:
- const: a2p-req
- const: p2a-ack
- enum: [ p2a-req, a2p-doorbell ]
- const: a2p-ack
- const: a2p-doorbell
> +
> + interrupts:
> + maxItems: 1
> + description:
> + The RPMI shared memory transport supports wired interrupt specified by
> + this property as the P2A doorbell.
"The RPMI shared memory transport P2A doorbell"
> +
> + msi-parent:
> + description:
> + The RPMI shared memory transport supports P2A doorbell as a system MSI
> + and this property specifies the target MSI controller.
> +
> + riscv,slot-size:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + minimum: 64
> + description:
> + Power-of-2 RPMI slot size of the RPMI shared memory transport.
> +
> + riscv,a2p-doorbell-value:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + default: 0x1
> + description:
> + Value written to the 32-bit A2P doorbell register.
> +
> + riscv,p2a-doorbell-sysmsi-index:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + The RPMI shared memory transport supports P2A doorbell as a system MSI
> + and this property specifies system MSI index to be used for configuring
> + the P2A doorbell MSI.
> +
> + "#mbox-cells":
> + const: 1
> + description:
> + The first cell specifies RPMI service group ID.
> +
> +required:
> + - compatible
> + - reg
> + - reg-names
> + - riscv,slot-size
> + - "#mbox-cells"
> +
> +anyOf:
> + - required:
> + - interrupts
> + - required:
> + - msi-parent
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + // Example 1 (RPMI shared memory with only 2 queues):
> + mailbox@10080000 {
> + compatible = "riscv,rpmi-shmem-mbox";
> + reg = <0x10080000 0x10000>,
> + <0x10090000 0x10000>;
> + reg-names = "a2p-req", "p2a-ack";
> + msi-parent = <&imsic_mlevel>;
> + riscv,slot-size = <64>;
> + #mbox-cells = <1>;
> + };
> + - |
> + // Example 2 (RPMI shared memory with only 4 queues):
> + mailbox@10001000 {
> + compatible = "riscv,rpmi-shmem-mbox";
> + reg = <0x10001000 0x800>,
> + <0x10001800 0x800>,
> + <0x10002000 0x800>,
> + <0x10002800 0x800>,
> + <0x10003000 0x4>;
> + reg-names = "a2p-req", "p2a-ack", "p2a-req", "a2p-ack", "a2p-doorbell";
> + msi-parent = <&imsic_mlevel>;
> + riscv,slot-size = <64>;
> + riscv,a2p-doorbell-value = <0x00008000>;
> + #mbox-cells = <1>;
> + };
> --
> 2.43.0
>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2025-05-19 18:10 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-11 13:39 [PATCH v3 00/23] Linux SBI MPXY and RPMI drivers Anup Patel
2025-05-11 13:39 ` [PATCH v3 01/23] riscv: Add new error codes defined by SBI v3.0 Anup Patel
2025-05-11 13:39 ` [PATCH v3 02/23] dt-bindings: mailbox: Add bindings for RPMI shared memory transport Anup Patel
2025-05-19 17:26 ` Rob Herring [this message]
2025-05-21 6:12 ` Anup Patel
2025-05-11 13:39 ` [PATCH v3 03/23] dt-bindings: mailbox: Add bindings for RISC-V SBI MPXY extension Anup Patel
2025-05-11 13:39 ` [PATCH v3 04/23] RISC-V: Add defines for the SBI message proxy extension Anup Patel
2025-05-11 13:39 ` [PATCH v3 05/23] mailbox: Add common header for RPMI messages sent via mailbox Anup Patel
2025-05-11 13:39 ` [PATCH v3 06/23] mailbox: Allow controller specific mapping using fwnode Anup Patel
2025-05-11 13:39 ` [PATCH v3 07/23] mailbox: Add RISC-V SBI message proxy (MPXY) based mailbox driver Anup Patel
2025-05-12 18:54 ` Thomas Gleixner
2025-05-21 6:08 ` Anup Patel
2025-05-11 13:39 ` [PATCH v3 08/23] dt-bindings: clock: Add RPMI clock service message proxy bindings Anup Patel
2025-05-11 13:39 ` [PATCH v3 09/23] dt-bindings: clock: Add RPMI clock service controller bindings Anup Patel
2025-05-11 13:39 ` [PATCH v3 10/23] clk: Add clock driver for the RISC-V RPMI clock service group Anup Patel
2025-05-12 7:07 ` Andy Shevchenko
2025-05-12 9:58 ` Rahul Pathak
2025-05-12 14:15 ` Andy Shevchenko
2025-05-22 13:14 ` Rahul Pathak
2025-05-23 16:35 ` Andy Shevchenko
2025-05-11 13:39 ` [PATCH v3 11/23] dt-bindings: Add RPMI system MSI message proxy bindings Anup Patel
2025-05-11 13:39 ` [PATCH v3 12/23] dt-bindings: Add RPMI system MSI interrupt controller bindings Anup Patel
2025-05-11 13:39 ` [PATCH v3 13/23] irqchip: Add driver for the RPMI system MSI service group Anup Patel
2025-05-12 6:50 ` Andy Shevchenko
2025-05-21 11:37 ` Anup Patel
2025-05-21 14:11 ` Andy Shevchenko
2025-05-23 11:38 ` Anup Patel
2025-05-12 18:58 ` Thomas Gleixner
2025-05-21 11:37 ` Anup Patel
2025-05-11 13:39 ` [PATCH v3 14/23] ACPI: property: Refactor acpi_fwnode_get_reference_args() Anup Patel
2025-05-12 8:43 ` Andy Shevchenko
2025-05-11 13:39 ` [PATCH v3 15/23] ACPI: property: Add support for cells property Anup Patel
2025-05-12 7:16 ` Andy Shevchenko
2025-05-12 8:30 ` Sunil V L
2025-05-11 13:39 ` [PATCH v3 16/23] ACPI: scan: Update honor list for RPMI System MSI Anup Patel
2025-05-11 13:39 ` [PATCH v3 17/23] ACPI: RISC-V: Create interrupt controller list in sorted order Anup Patel
2025-05-11 13:39 ` [PATCH v3 18/23] ACPI: RISC-V: Add support to update gsi range Anup Patel
2025-05-12 7:31 ` Andy Shevchenko
2025-05-11 13:39 ` [PATCH v3 19/23] ACPI: RISC-V: Add RPMI System MSI to GSI mapping Anup Patel
2025-05-11 13:39 ` [PATCH v3 20/23] mailbox/riscv-sbi-mpxy: Add ACPI support Anup Patel
2025-05-12 7:28 ` Andy Shevchenko
2025-05-12 8:36 ` Sunil V L
2025-05-12 8:47 ` Andy Shevchenko
2025-05-12 8:57 ` Sunil V L
2025-05-11 13:39 ` [PATCH v3 21/23] irqchip/riscv-rpmi-sysmsi: " Anup Patel
2025-05-12 7:34 ` Andy Shevchenko
2025-05-12 8:42 ` Sunil V L
2025-05-11 13:39 ` [PATCH v3 22/23] RISC-V: Enable GPIO keyboard and event device in RV64 defconfig Anup Patel
2025-05-11 13:39 ` [PATCH v3 23/23] MAINTAINERS: Add entry for RISC-V RPMI and MPXY drivers Anup Patel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250519172647.GA2603742-robh@kernel.org \
--to=robh@kernel.org \
--cc=ajones@ventanamicro.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=anup@brainfault.org \
--cc=apatel@ventanamicro.com \
--cc=atish.patra@linux.dev \
--cc=brgl@bgdev.pl \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jassisinghbrar@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=lenb@kernel.org \
--cc=leyfoon.tan@starfivetech.com \
--cc=linus.walleij@linaro.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=mika.westerberg@linux.intel.com \
--cc=mturquette@baylibre.com \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=rafael@kernel.org \
--cc=rpathak@ventanamicro.com \
--cc=samuel.holland@sifive.com \
--cc=sboyd@kernel.org \
--cc=tglx@linutronix.de \
--cc=ukleinek@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).