summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/sound/davinci-mcasp-audio.txt
blob: 1945aecf0a3abf99413d725fdb19c104b056b414 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Texas Instruments McASP controller

Required properties:
- compatible :
	"ti,dm646x-mcasp-audio"	: for DM646x platforms
	"ti,da830-mcasp-audio"	: for both DA830 & DA850 platforms
	"ti,am33xx-mcasp-audio"	: for AM33xx platforms (AM33xx, TI81xx)

- reg : Should contain reg specifiers for the entries in the reg-names property.
- reg-names : Should contain:
         * "mpu" for the main registers (required). For compatibility with
           existing software, it is recommended this is the first entry.
         * "dat" for separate data port register access (optional).
- interrupts : Interrupt number for McASP
- op-mode : I2S/DIT ops mode.
- tdm-slots : Slots for TDM operation.
- num-serializer : Serializers used by McASP.
- serial-dir : A list of serializer pin mode. The list number should be equal
		to "num-serializer" parameter. Each entry is a number indication
		serializer pin direction. (0 - INACTIVE, 1 - TX, 2 - RX)
- dmas: two element list of DMA controller phandles and DMA request line
        ordered pairs.
- dma-names: identifier string for each DMA request line in the dmas property.
	     These strings correspond 1:1 with the ordered pairs in dmas. The dma
	     identifiers must be "rx" and "tx".

Optional properties:

- ti,hwmods : Must be "mcasp<n>", n is controller instance starting 0
- tx-num-evt : FIFO levels.
- rx-num-evt : FIFO levels.
- sram-size-playback : size of sram to be allocated during playback
- sram-size-capture  : size of sram to be allocated during capture

Example:

mcasp0: mcasp0@1d00000 {
	compatible = "ti,da830-mcasp-audio";
	#address-cells = <1>;
	#size-cells = <0>;
	reg = <0x100000 0x3000>;
	reg-names "mpu";
	interrupts = <82 83>;
	op-mode = <0>;		/* MCASP_IIS_MODE */
	tdm-slots = <2>;
	num-serializer = <16>;
	serial-dir = <
			0 0 0 0	/* 0: INACTIVE, 1: TX, 2: RX */
			0 0 0 0
			0 0 0 1
			2 0 0 0 >;
	tx-num-evt = <1>;
	rx-num-evt = <1>;
};