mirror-linux/Documentation/devicetree/bindings/mailbox
Stephan Gerhold c3c5138714 dt-bindings: mailbox: qcom,apcs: Add separate node for clock-controller
APCS "global" is sort of a "miscellaneous" hardware block that combines
multiple registers inside the application processor subsystem. Two distinct
use cases are currently stuffed together in a single device tree node:

 - Mailbox: to communicate with other remoteprocs in the system.
 - Clock: for controlling the CPU frequency.

These two use cases have unavoidable circular dependencies: the mailbox is
needed as early as possible during boot to start controlling shared
resources like clocks and power domains, while the clock controller needs
one of these shared clocks as its parent. Currently, there is no way to
distinguish these two use cases for generic mechanisms like fw_devlink.

This is currently blocking conversion of the deprecated custom "qcom,ipc"
properties to the standard "mboxes", see e.g. commit d92e9ea2f0
("arm64: dts: qcom: msm8939: revert use of APCS mbox for RPM"):
  1. remoteproc &rpm needs mboxes = <&apcs1_mbox 8>;
  2. The clock controller inside &apcs1_mbox needs
     clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>.
  3. &rpmcc is a child of remoteproc &rpm

The mailbox itself does not need any clocks and should probe early to
unblock the rest of the boot process. The "clocks" are only needed for the
separate clock controller. In Linux, these are already two separate drivers
that can probe independently.

Break up the circular dependency chain in the device tree by separating the
clock controller into a separate child node. Deprecate the old approach of
specifying the clock properties as part of the root node, but keep them for
backwards compatibility.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
2025-05-29 10:01:30 -05:00
..
allwinner,sun6i-a31-msgbox.yaml
altera-mailbox.txt
amlogic,meson-gxbb-mhu.yaml dt-bindings: mailbox: Drop unneeded quotes 2023-04-04 12:12:12 -05:00
apple,mailbox.yaml dt-bindings: mailbox: apple,mailbox: Add t8112 compatibles 2023-03-28 19:39:18 +09:00
arm,mhu.yaml dt-bindings: mailbox: arm,mhu: Make secure interrupt optional 2022-08-10 15:12:49 -06:00
arm,mhuv2.yaml dt-bindings: dsp: fsl,dsp: fix power domain count 2024-11-01 17:25:02 +08:00
arm,mhuv3.yaml dt-bindings: mailbox: arm,mhuv3: Add bindings 2024-05-19 22:30:09 -05:00
brcm,bcm2835-mbox.yaml dt-bindings: mailbox: convert bcm2835-mbox bindings to YAML 2023-06-30 17:35:45 -05:00
brcm,iproc-flexrm-mbox.txt dt-bindings: Fix various typos 2024-09-13 14:01:34 -05:00
brcm,iproc-pdc-mbox.txt
fsl,mu.yaml dt-bindings: mailbox: fsl,mu: Add i.MX94 compatible 2025-03-26 20:58:25 -05:00
google,gs101-mbox.yaml dt-bindings: mailbox: add google,gs101-mbox 2025-01-18 16:18:10 -06:00
hisilicon,hi3660-mailbox.txt
hisilicon,hi6220-mailbox.txt
mailbox.txt
marvell,armada-3700-rwtm-mailbox.txt
mediatek,gce-mailbox.yaml dt-bindings: mailbox: mediatek: Add support for MT8196 GCE mailbox 2025-03-26 20:58:24 -05:00
mediatek,gce-props.yaml dt-bindings: mailbox: Add mediatek,gce-props.yaml 2024-07-10 13:24:55 -05:00
microchip,mpfs-mailbox.yaml dt-bindings: mailbox: mpfs: fix reg properties 2024-11-24 12:53:34 -06:00
microchip,sbi-ipc.yaml dt-bindings: mailbox: add binding for Microchip IPC mailbox controller 2025-01-18 16:09:13 -06:00
mtk,adsp-mbox.yaml dt-bindings: mailbox: mtk,adsp-mbox: Add compatible for MT8188 2024-09-22 19:19:17 -05:00
nvidia,tegra186-hsp.yaml dt-bindings: mailbox: tegra: Document Tegra264 HSP 2023-06-30 17:35:45 -05:00
qcom,apcs-kpss-global.yaml dt-bindings: mailbox: qcom,apcs: Add separate node for clock-controller 2025-05-29 10:01:30 -05:00
qcom,cpucp-mbox.yaml dt-bindings: mailbox: qcom: Add CPUCP mailbox controller bindings 2024-07-10 13:24:55 -05:00
qcom-ipcc.yaml dt-bindings: mailbox: qcom-ipcc: Add SM8750 2024-11-24 13:01:27 -06:00
rockchip-mailbox.txt
sophgo,cv1800b-mailbox.yaml dt-bindings: mailbox: add Sophgo CV18XX series SoC 2025-05-26 16:23:39 -05:00
sprd-mailbox.yaml dt-bindings: mailbox: Drop unneeded quotes 2023-04-04 12:12:12 -05:00
st,sti-mailbox.yaml dt-bindings: mailbox: sti-mailbox: convert to DT schema 2023-02-23 14:47:12 -06:00
st,stm32-ipcc.yaml dt-bindings: mailbox: Drop unneeded quotes 2023-04-04 12:12:12 -05:00
thead,th1520-mbox.yaml dt-bindings: mailbox: Add thead,th1520-mailbox bindings 2024-11-24 13:06:42 -06:00
ti,message-manager.txt
ti,omap-mailbox.yaml dt-bindings: use capital "OR" for multiple licenses in SPDX 2023-08-23 15:00:31 -05:00
ti,secure-proxy.yaml
xgene-slimpro-mailbox.txt
xlnx,zynqmp-ipi-mailbox.yaml dt-bindings: mailbox: add Versal IPI bindings 2024-01-13 23:08:50 -06:00