xref: /openbmc/linux/Documentation/devicetree/bindings/remoteproc/st-rproc.txt (revision 8c57a5e7b2820f349c95b8c8393fec1e0f4070d2)
1*6cb0e0f6SLee JonesSTMicroelectronics Co-Processor Bindings
2*6cb0e0f6SLee Jones----------------------------------------
3*6cb0e0f6SLee Jones
4*6cb0e0f6SLee JonesThis binding provides support for adjunct processors found on ST SoCs.
5*6cb0e0f6SLee Jones
6*6cb0e0f6SLee JonesCo-processors can be controlled from the bootloader or the primary OS. If
7*6cb0e0f6SLee Jonesthe bootloader starts a co-processor, the primary OS must detect its state
8*6cb0e0f6SLee Jonesand act accordingly.
9*6cb0e0f6SLee Jones
10*6cb0e0f6SLee JonesRequired properties:
11*6cb0e0f6SLee Jones- compatible		Should be one of:
12*6cb0e0f6SLee Jones				"st,st231-rproc"
13*6cb0e0f6SLee Jones				"st,st40-rproc"
14*6cb0e0f6SLee Jones- memory-region		Reserved memory (See: ../reserved-memory/reserved-memory.txt)
15*6cb0e0f6SLee Jones- resets		Reset lines (See: ../reset/reset.txt)
16*6cb0e0f6SLee Jones- reset-names		Must be "sw_reset" and "pwr_reset"
17*6cb0e0f6SLee Jones- clocks		Clock for co-processor (See: ../clock/clock-bindings.txt)
18*6cb0e0f6SLee Jones- clock-frequency	Clock frequency to set co-processor at if the bootloader
19*6cb0e0f6SLee Jones			hasn't already done so
20*6cb0e0f6SLee Jones- st,syscfg		System configuration register which holds the boot vector
21*6cb0e0f6SLee Jones			for the co-processor
22*6cb0e0f6SLee Jones				1st cell: Phandle to syscon block
23*6cb0e0f6SLee Jones				2nd cell: Boot vector register offset
24*6cb0e0f6SLee Jones
25*6cb0e0f6SLee JonesExample:
26*6cb0e0f6SLee Jones
27*6cb0e0f6SLee Jones	audio_reserved: rproc@42000000 {
28*6cb0e0f6SLee Jones		compatible = "shared-dma-pool";
29*6cb0e0f6SLee Jones		reg = <0x42000000 0x01000000>;
30*6cb0e0f6SLee Jones		no-map;
31*6cb0e0f6SLee Jones	};
32*6cb0e0f6SLee Jones
33*6cb0e0f6SLee Jones	st231-audio {
34*6cb0e0f6SLee Jones		compatible	= "st,st231-rproc";
35*6cb0e0f6SLee Jones		memory-region	= <&audio_reserved>;
36*6cb0e0f6SLee Jones		resets		= <&softreset STIH407_ST231_AUD_SOFTRESET>;
37*6cb0e0f6SLee Jones		reset-names	= "sw_reset";
38*6cb0e0f6SLee Jones		clocks		= <&clk_s_c0_flexgen CLK_ST231_AUD_0>;
39*6cb0e0f6SLee Jones		clock-frequency	= <600000000>;
40*6cb0e0f6SLee Jones		st,syscfg	= <&syscfg_core 0x228>;
41*6cb0e0f6SLee Jones	};
42