xref: /linux/Documentation/devicetree/bindings/remoteproc/ti,davinci-rproc.txt (revision 9b61b2069681b60d0d0bedbd0fe3c70123dddb19)
1*ae67b800SSuman AnnaTI Davinci DSP devices
2*ae67b800SSuman Anna=======================
3*ae67b800SSuman Anna
4*ae67b800SSuman AnnaThe TI Davinci family of SoCs usually contains a TI DSP Core sub-system that
5*ae67b800SSuman Annais used to offload some of the processor-intensive tasks or algorithms, for
6*ae67b800SSuman Annaachieving various system level goals.
7*ae67b800SSuman Anna
8*ae67b800SSuman AnnaThe processor cores in the sub-system usually contain additional sub-modules
9*ae67b800SSuman Annalike L1 and/or L2 caches/SRAMs, an Interrupt Controller, an external memory
10*ae67b800SSuman Annacontroller, a dedicated local power/sleep controller etc. The DSP processor
11*ae67b800SSuman Annacore used in Davinci SoCs is usually a C674x DSP CPU.
12*ae67b800SSuman Anna
13*ae67b800SSuman AnnaDSP Device Node:
14*ae67b800SSuman Anna================
15*ae67b800SSuman AnnaEach DSP Core sub-system is represented as a single DT node.
16*ae67b800SSuman Anna
17*ae67b800SSuman AnnaRequired properties:
18*ae67b800SSuman Anna--------------------
19*ae67b800SSuman AnnaThe following are the mandatory properties:
20*ae67b800SSuman Anna
21*ae67b800SSuman Anna- compatible:		Should be one of the following,
22*ae67b800SSuman Anna			    "ti,da850-dsp" for DSPs on OMAP-L138 SoCs
23*ae67b800SSuman Anna
24*ae67b800SSuman Anna- reg:			Should contain an entry for each value in 'reg-names'.
25*ae67b800SSuman Anna			Each entry should have the memory region's start address
26*ae67b800SSuman Anna			and the size of the region, the representation matching
27*ae67b800SSuman Anna			the parent node's '#address-cells' and '#size-cells' values.
28*ae67b800SSuman Anna
29*ae67b800SSuman Anna- reg-names:		Should contain strings with the following names, each
30*ae67b800SSuman Anna			representing a specific internal memory region or a
31*ae67b800SSuman Anna			specific register space,
32*ae67b800SSuman Anna			     "l2sram", "l1pram", "l1dram", "host1cfg", "chipsig_base"
33*ae67b800SSuman Anna
34*ae67b800SSuman Anna- interrupts: 		Should contain the interrupt number used to receive the
35*ae67b800SSuman Anna			interrupts from the DSP. The value should follow the
36*ae67b800SSuman Anna			interrupt-specifier format as dictated by the
37*ae67b800SSuman Anna			'interrupt-parent' node.
38*ae67b800SSuman Anna
39*ae67b800SSuman Anna- memory-region:	phandle to the reserved memory node to be associated
40*ae67b800SSuman Anna			with the remoteproc device. The reserved memory node
41*ae67b800SSuman Anna			can be a CMA memory node, and should be defined as
42*ae67b800SSuman Anna			per the bindings in
43*ae67b800SSuman Anna			Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
44*ae67b800SSuman Anna
45*ae67b800SSuman Anna
46*ae67b800SSuman AnnaExample:
47*ae67b800SSuman Anna--------
48*ae67b800SSuman Anna
49*ae67b800SSuman Anna	/* DSP Reserved Memory node */
50*ae67b800SSuman Anna	reserved-memory {
51*ae67b800SSuman Anna		#address-cells = <1>;
52*ae67b800SSuman Anna		#size-cells = <1>;
53*ae67b800SSuman Anna		ranges;
54*ae67b800SSuman Anna
55*ae67b800SSuman Anna		dsp_memory_region: dsp-memory@c3000000 {
56*ae67b800SSuman Anna			compatible = "shared-dma-pool";
57*ae67b800SSuman Anna			reg = <0xc3000000 0x1000000>;
58*ae67b800SSuman Anna			reusable;
59*ae67b800SSuman Anna		};
60*ae67b800SSuman Anna	};
61*ae67b800SSuman Anna
62*ae67b800SSuman Anna	/* DSP node */
63*ae67b800SSuman Anna	{
64*ae67b800SSuman Anna		dsp: dsp@11800000 {
65*ae67b800SSuman Anna			compatible = "ti,da850-dsp";
66*ae67b800SSuman Anna			reg = <0x11800000 0x40000>,
67*ae67b800SSuman Anna			      <0x11e00000 0x8000>,
68*ae67b800SSuman Anna			      <0x11f00000 0x8000>,
69*ae67b800SSuman Anna			      <0x01c14044 0x4>,
70*ae67b800SSuman Anna			      <0x01c14174 0x8>;
71*ae67b800SSuman Anna			reg-names = "l2sram", "l1pram", "l1dram", "host1cfg",
72*ae67b800SSuman Anna				    "chipsig";
73*ae67b800SSuman Anna			interrupt-parent = <&intc>;
74*ae67b800SSuman Anna			interrupts = <28>;
75*ae67b800SSuman Anna			memory-region = <&dsp_memory_region>;
76*ae67b800SSuman Anna		};
77*ae67b800SSuman Anna	};
78