126 lines
3.2 KiB
YAML
126 lines
3.2 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/remoteproc/ti,k3-m4f-rproc.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: TI K3 M4F processor subsystems
|
|
|
|
maintainers:
|
|
- Hari Nagalla <hnagalla@ti.com>
|
|
- Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
|
|
description: |
|
|
Some K3 family SoCs have Arm Cortex M4F cores. AM64x is a SoC in K3
|
|
family with a M4F core. Typically safety oriented applications may use
|
|
the M4F core in isolation without an IPC. Where as some industrial and
|
|
home automation applications, may use the M4F core as a remote processor
|
|
with IPC communications.
|
|
|
|
$ref: /schemas/arm/keystone/ti,k3-sci-common.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- ti,am64-m4fss
|
|
|
|
power-domains:
|
|
maxItems: 1
|
|
|
|
"#address-cells":
|
|
const: 2
|
|
|
|
"#size-cells":
|
|
const: 2
|
|
|
|
reg:
|
|
items:
|
|
- description: IRAM internal memory region
|
|
- description: DRAM internal memory region
|
|
|
|
reg-names:
|
|
items:
|
|
- const: iram
|
|
- const: dram
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
firmware-name:
|
|
maxItems: 1
|
|
description: Name of firmware to load for the M4F core
|
|
|
|
mboxes:
|
|
description:
|
|
OMAP Mailbox specifier denoting the sub-mailbox, to be used for
|
|
communication with the remote processor. This property should match
|
|
with the sub-mailbox node used in the firmware image.
|
|
maxItems: 1
|
|
|
|
memory-region:
|
|
description:
|
|
phandle to the reserved memory nodes to be associated with the
|
|
remoteproc device. Optional memory regions available for firmware
|
|
specific purposes.
|
|
(see reserved-memory/reserved-memory.yaml in dtschema project)
|
|
maxItems: 8
|
|
items:
|
|
- description: regions used for DMA allocations like vrings, vring buffers
|
|
and memory dedicated to firmware's specific purposes.
|
|
additionalItems: true
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- reg-names
|
|
- ti,sci
|
|
- ti,sci-dev-id
|
|
- ti,sci-proc-ids
|
|
- resets
|
|
- firmware-name
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
reserved-memory {
|
|
#address-cells = <2>;
|
|
#size-cells = <2>;
|
|
|
|
mcu_m4fss_dma_memory_region: m4f-dma-memory@9cb00000 {
|
|
compatible = "shared-dma-pool";
|
|
reg = <0x00 0x9cb00000 0x00 0x100000>;
|
|
no-map;
|
|
};
|
|
|
|
mcu_m4fss_memory_region: m4f-memory@9cc00000 {
|
|
compatible = "shared-dma-pool";
|
|
reg = <0x00 0x9cc00000 0x00 0xe00000>;
|
|
no-map;
|
|
};
|
|
};
|
|
|
|
soc {
|
|
#address-cells = <2>;
|
|
#size-cells = <2>;
|
|
|
|
mailbox0_cluster0: mailbox-0 {
|
|
#mbox-cells = <1>;
|
|
};
|
|
|
|
remoteproc@5000000 {
|
|
compatible = "ti,am64-m4fss";
|
|
reg = <0x00 0x5000000 0x00 0x30000>,
|
|
<0x00 0x5040000 0x00 0x10000>;
|
|
reg-names = "iram", "dram";
|
|
resets = <&k3_reset 9 1>;
|
|
firmware-name = "am62-mcu-m4f0_0-fw";
|
|
mboxes = <&mailbox0_cluster0>, <&mbox_m4_0>;
|
|
memory-region = <&mcu_m4fss_dma_memory_region>,
|
|
<&mcu_m4fss_memory_region>;
|
|
ti,sci = <&dmsc>;
|
|
ti,sci-dev-id = <9>;
|
|
ti,sci-proc-ids = <0x18 0xff>;
|
|
};
|
|
};
|