1*440b075bSKrzysztof Kozlowski# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 22a218020SSuman Anna%YAML 1.2 32a218020SSuman Anna--- 42a218020SSuman Anna$id: http://devicetree.org/schemas/remoteproc/ti,k3-dsp-rproc.yaml# 52a218020SSuman Anna$schema: http://devicetree.org/meta-schemas/core.yaml# 62a218020SSuman Anna 72a218020SSuman Annatitle: TI K3 DSP devices 82a218020SSuman Anna 92a218020SSuman Annamaintainers: 102a218020SSuman Anna - Suman Anna <s-anna@ti.com> 112a218020SSuman Anna 122a218020SSuman Annadescription: | 132a218020SSuman Anna The TI K3 family of SoCs usually have one or more TI DSP Core sub-systems 142a218020SSuman Anna that are used to offload some of the processor-intensive tasks or algorithms, 152a218020SSuman Anna for achieving various system level goals. 162a218020SSuman Anna 172a218020SSuman Anna These processor sub-systems usually contain additional sub-modules like 182a218020SSuman Anna L1 and/or L2 caches/SRAMs, an Interrupt Controller, an external memory 192a218020SSuman Anna controller, a dedicated local power/sleep controller etc. The DSP processor 202a218020SSuman Anna cores in the K3 SoCs are usually either a TMS320C66x CorePac processor or a 212a218020SSuman Anna TMS320C71x CorePac processor. 222a218020SSuman Anna 232a218020SSuman Anna Each DSP Core sub-system is represented as a single DT node. Each node has a 242a218020SSuman Anna number of required or optional properties that enable the OS running on the 252a218020SSuman Anna host processor (Arm CorePac) to perform the device management of the remote 262a218020SSuman Anna processor and to communicate with the remote processor. 272a218020SSuman Anna 282a218020SSuman AnnaallOf: 292a218020SSuman Anna - $ref: /schemas/arm/keystone/ti,k3-sci-common.yaml# 302a218020SSuman Anna 312a218020SSuman Annaproperties: 322a218020SSuman Anna compatible: 33c6caf22eSSuman Anna enum: 3444d90833SHari Nagalla - ti,am62a-c7xv-dsp 35c6caf22eSSuman Anna - ti,j721e-c66-dsp 36c6caf22eSSuman Anna - ti,j721e-c71-dsp 3783b57e60SHari Nagalla - ti,j721s2-c71-dsp 382a218020SSuman Anna description: 3944d90833SHari Nagalla Use "ti,am62a-c7xv-dsp" for AM62A Deep learning DSPs on K3 AM62A SoCs 402a218020SSuman Anna Use "ti,j721e-c66-dsp" for C66x DSPs on K3 J721E SoCs 41c6caf22eSSuman Anna Use "ti,j721e-c71-dsp" for C71x DSPs on K3 J721E SoCs 4283b57e60SHari Nagalla Use "ti,j721s2-c71-dsp" for C71x DSPs on K3 J721S2 SoCs 432a218020SSuman Anna 442a218020SSuman Anna resets: 452a218020SSuman Anna description: | 462a218020SSuman Anna Should contain the phandle to the reset controller node managing the 472a218020SSuman Anna local resets for this device, and a reset specifier. 482a218020SSuman Anna maxItems: 1 492a218020SSuman Anna 502a218020SSuman Anna firmware-name: 512a218020SSuman Anna description: | 522a218020SSuman Anna Should contain the name of the default firmware image 532a218020SSuman Anna file located on the firmware search path 542a218020SSuman Anna 552a218020SSuman Anna mboxes: 562a218020SSuman Anna description: | 572a218020SSuman Anna OMAP Mailbox specifier denoting the sub-mailbox, to be used for 582a218020SSuman Anna communication with the remote processor. This property should match 592a218020SSuman Anna with the sub-mailbox node used in the firmware image. 602a218020SSuman Anna maxItems: 1 612a218020SSuman Anna 622a218020SSuman Anna memory-region: 632a218020SSuman Anna minItems: 2 642a218020SSuman Anna maxItems: 8 652a218020SSuman Anna description: | 662a218020SSuman Anna phandle to the reserved memory nodes to be associated with the remoteproc 672a218020SSuman Anna device. There should be at least two reserved memory nodes defined. The 682a218020SSuman Anna reserved memory nodes should be carveout nodes, and should be defined as 692a218020SSuman Anna per the bindings in 702a218020SSuman Anna Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt 712a218020SSuman Anna items: 722a218020SSuman Anna - description: region used for dynamic DMA allocations like vrings and 732a218020SSuman Anna vring buffers 742a218020SSuman Anna - description: region reserved for firmware image sections 752a218020SSuman Anna additionalItems: true 762a218020SSuman Anna 772a218020SSuman Anna# Optional properties: 782a218020SSuman Anna# -------------------- 792a218020SSuman Anna 802a218020SSuman Anna sram: 812a218020SSuman Anna $ref: /schemas/types.yaml#/definitions/phandle-array 822a218020SSuman Anna minItems: 1 832a218020SSuman Anna maxItems: 4 8439bd2b6aSRob Herring items: 8539bd2b6aSRob Herring maxItems: 1 862a218020SSuman Anna description: | 872a218020SSuman Anna phandles to one or more reserved on-chip SRAM regions. The regions 882a218020SSuman Anna should be defined as child nodes of the respective SRAM node, and 892a218020SSuman Anna should be defined as per the generic bindings in, 902a218020SSuman Anna Documentation/devicetree/bindings/sram/sram.yaml 912a218020SSuman Anna 92c6caf22eSSuman Annaif: 93c6caf22eSSuman Anna properties: 94c6caf22eSSuman Anna compatible: 95c6caf22eSSuman Anna enum: 96c6caf22eSSuman Anna - ti,j721e-c66-dsp 97c6caf22eSSuman Annathen: 98c6caf22eSSuman Anna properties: 99c6caf22eSSuman Anna reg: 100c6caf22eSSuman Anna items: 101c6caf22eSSuman Anna - description: Address and Size of the L2 SRAM internal memory region 102c6caf22eSSuman Anna - description: Address and Size of the L1 PRAM internal memory region 103c6caf22eSSuman Anna - description: Address and Size of the L1 DRAM internal memory region 104c6caf22eSSuman Anna reg-names: 105c6caf22eSSuman Anna items: 106c6caf22eSSuman Anna - const: l2sram 107c6caf22eSSuman Anna - const: l1pram 108c6caf22eSSuman Anna - const: l1dram 109c6caf22eSSuman Annaelse: 110c6caf22eSSuman Anna if: 111c6caf22eSSuman Anna properties: 112c6caf22eSSuman Anna compatible: 113c6caf22eSSuman Anna enum: 11444d90833SHari Nagalla - ti,am62a-c7xv-dsp 115c6caf22eSSuman Anna - ti,j721e-c71-dsp 11683b57e60SHari Nagalla - ti,j721s2-c71-dsp 117c6caf22eSSuman Anna then: 118c6caf22eSSuman Anna properties: 119c6caf22eSSuman Anna reg: 120c6caf22eSSuman Anna items: 121c6caf22eSSuman Anna - description: Address and Size of the L2 SRAM internal memory region 122c6caf22eSSuman Anna - description: Address and Size of the L1 DRAM internal memory region 123c6caf22eSSuman Anna reg-names: 124c6caf22eSSuman Anna items: 125c6caf22eSSuman Anna - const: l2sram 126c6caf22eSSuman Anna - const: l1dram 127c6caf22eSSuman Anna 1282a218020SSuman Annarequired: 1292a218020SSuman Anna - compatible 1302a218020SSuman Anna - reg 1312a218020SSuman Anna - reg-names 1322a218020SSuman Anna - ti,sci 1332a218020SSuman Anna - ti,sci-dev-id 1342a218020SSuman Anna - ti,sci-proc-ids 1352a218020SSuman Anna - resets 1362a218020SSuman Anna - firmware-name 1372a218020SSuman Anna - mboxes 1382a218020SSuman Anna - memory-region 1392a218020SSuman Anna 1402a218020SSuman AnnaunevaluatedProperties: false 1412a218020SSuman Anna 1422a218020SSuman Annaexamples: 1432a218020SSuman Anna - | 144f13f5d72SSinthu Raja soc { 1452a218020SSuman Anna #address-cells = <2>; 1462a218020SSuman Anna #size-cells = <2>; 1472a218020SSuman Anna 14824a4b57aSRob Herring mailbox0_cluster3: mailbox-0 { 14924a4b57aSRob Herring #mbox-cells = <1>; 15024a4b57aSRob Herring }; 15124a4b57aSRob Herring 15224a4b57aSRob Herring mailbox0_cluster4: mailbox-1 { 15324a4b57aSRob Herring #mbox-cells = <1>; 15424a4b57aSRob Herring }; 15524a4b57aSRob Herring 1562a218020SSuman Anna bus@100000 { 1572a218020SSuman Anna compatible = "simple-bus"; 1582a218020SSuman Anna #address-cells = <2>; 1592a218020SSuman Anna #size-cells = <2>; 1602a218020SSuman Anna ranges = <0x00 0x00100000 0x00 0x00100000 0x00 0x00020000>, /* ctrl mmr */ 161c6caf22eSSuman Anna <0x00 0x64800000 0x00 0x64800000 0x00 0x00800000>, /* C71_0 */ 1622a218020SSuman Anna <0x4d 0x80800000 0x4d 0x80800000 0x00 0x00800000>, /* C66_0 */ 1632a218020SSuman Anna <0x4d 0x81800000 0x4d 0x81800000 0x00 0x00800000>; /* C66_1 */ 1642a218020SSuman Anna 1652a218020SSuman Anna /* J721E C66_0 DSP node */ 1662a218020SSuman Anna dsp@4d80800000 { 1672a218020SSuman Anna compatible = "ti,j721e-c66-dsp"; 1682a218020SSuman Anna reg = <0x4d 0x80800000 0x00 0x00048000>, 1692a218020SSuman Anna <0x4d 0x80e00000 0x00 0x00008000>, 1702a218020SSuman Anna <0x4d 0x80f00000 0x00 0x00008000>; 1712a218020SSuman Anna reg-names = "l2sram", "l1pram", "l1dram"; 1722a218020SSuman Anna ti,sci = <&dmsc>; 1732a218020SSuman Anna ti,sci-dev-id = <142>; 1742a218020SSuman Anna ti,sci-proc-ids = <0x03 0xFF>; 1752a218020SSuman Anna resets = <&k3_reset 142 1>; 1762a218020SSuman Anna firmware-name = "j7-c66_0-fw"; 1772a218020SSuman Anna memory-region = <&c66_0_dma_memory_region>, 1782a218020SSuman Anna <&c66_0_memory_region>; 1792a218020SSuman Anna mboxes = <&mailbox0_cluster3 &mbox_c66_0>; 1802a218020SSuman Anna }; 181c6caf22eSSuman Anna 182c6caf22eSSuman Anna /* J721E C71_0 DSP node */ 183c6caf22eSSuman Anna c71_0: dsp@64800000 { 184c6caf22eSSuman Anna compatible = "ti,j721e-c71-dsp"; 185c6caf22eSSuman Anna reg = <0x00 0x64800000 0x00 0x00080000>, 186c6caf22eSSuman Anna <0x00 0x64e00000 0x00 0x0000c000>; 187c6caf22eSSuman Anna reg-names = "l2sram", "l1dram"; 188c6caf22eSSuman Anna ti,sci = <&dmsc>; 189c6caf22eSSuman Anna ti,sci-dev-id = <15>; 190c6caf22eSSuman Anna ti,sci-proc-ids = <0x30 0xFF>; 191c6caf22eSSuman Anna resets = <&k3_reset 15 1>; 192c6caf22eSSuman Anna firmware-name = "j7-c71_0-fw"; 193c6caf22eSSuman Anna memory-region = <&c71_0_dma_memory_region>, 194c6caf22eSSuman Anna <&c71_0_memory_region>; 195c6caf22eSSuman Anna mboxes = <&mailbox0_cluster4 &mbox_c71_0>; 196c6caf22eSSuman Anna }; 1972a218020SSuman Anna }; 1982a218020SSuman Anna }; 199