dt-bindings: mailbox: Add MT8196 GPUEB Mailbox

The MediaTek MT8196 SoC includes an embedded MCU referred to as "GPUEB",
acting as glue logic to control power and frequency of the Mali GPU.
This MCU runs special-purpose firmware for this use, and the main
application processor communicates with it through a mailbox.

Add a binding that describes this mailbox.

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
This commit is contained in:
Nicolas Frattaroli
2025-10-03 22:15:05 +02:00
committed by Jassi Brar
parent bb160e791a
commit d3e35a151a

View File

@@ -0,0 +1,64 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/mailbox/mediatek,mt8196-gpueb-mbox.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: MediaTek MFlexGraphics GPUEB Mailbox Controller
maintainers:
- Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
properties:
compatible:
enum:
- mediatek,mt8196-gpueb-mbox
reg:
items:
- description: mailbox data registers
- description: mailbox control registers
reg-names:
items:
- const: data
- const: ctl
clocks:
items:
- description: main clock of the GPUEB MCU
interrupts:
items:
- description: fires when a new message is received
"#mbox-cells":
const: 1
description:
The number of the mailbox channel.
required:
- compatible
- reg
- reg-names
- clocks
- interrupts
- "#mbox-cells"
additionalProperties: false
examples:
- |
#include <dt-bindings/clock/mediatek,mt8196-clock.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
mailbox@4b09fd80 {
compatible = "mediatek,mt8196-gpueb-mbox";
reg = <0x4b09fd80 0x280>,
<0x4b170000 0x7c>;
reg-names = "data", "ctl";
clocks = <&topckgen CLK_TOP_MFG_EB>;
interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH 0>;
#mbox-cells = <1>;
};