[PATCH v2 1/5] dt-bindings: remoteproc: add imx-rproc-psci binding

Jiafei Pan
2026-04-29T03:08:26Z

Add compatible string "fsl,imx-rproc-psci" for i.MX Cortex-A Core's
remoteproc support.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
---
.../remoteproc/fsl,imx-rproc-psci.yaml | 64 +++++++++++++++++++
1 file changed, 64 insertions(+)
create mode 100644 Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc-psci.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc-psci.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc-psci.yaml
new file mode 100644
index 000000000000..cdab9566e588
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc-psci.yaml
@@ -0,0 +1,64 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/fsl,imx-rproc-psci.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NXP i.MX Cortex-A Core Remote Processor via PSCI
+
+maintainers:
+ - Jiafei Pan <Jiafei.Pan@nxp.com>
+
+description:
+ This binding provides support for managing Cortex-A cores as remote
+ processors on i.MX platforms using the PSCI (Power State Coordination
+ Interface) for CPU power management operations. This allows single
+ Cortex-A core or multiple Cortex-A cores to be controlled by Linux as
+ a remote processor, enabling them to run RTOS or bare-metal applications.
+
+properties:
+ compatible:
+ const: fsl,imx-rproc-psci
+
+ fsl,cpus-bits:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ Bitmask indicating which CPU cores are assigned to this remote
+ processor instance. Each bit represents a CPU core, where bit N
+ corresponds to CPU N. For example, 0x2 (0b10) assigns CPU core 1,
+ while 0x6 (0b110) assigns CPU cores 1 and 2.
+
+ memory-region:
+ maxItems: 1
+ description:
+ Phandle to a reserved memory region to be used for the remote
+ processor's code and data.
+
+required:
+ - compatible
+ - fsl,cpus-bits
+ - memory-region
+
+additionalProperties: false
+
+examples:
+ - |
+ / {
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ rtos_ca55_reserved: rtos-ca55@d0000000 {
+ reg = <0 0xd0000000 0 0x10000000>;
+ no-map;
+ };
+ };
+
+ remoteproc-ca55-1 {
+ compatible = "fsl,imx-rproc-psci";
+ /* bitmask: 0b10, assign A55 Core 1 */
+ fsl,cpus-bits = <0x2>;
+ memory-region = <&rtos_ca55_reserved>;
+ };
+ };
--
2.43.0