| # 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>; |
| }; |
| }; |