hc
2023-05-26 a23f51ed7a39e452c1037343a84d7db1ca2c5bd7
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
55
56
57
58
59
60
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, AM43xx, TI81xx)
   "ti,dra7-mcasp-audio"    : for DRA7xx platforms
 
- 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).
- op-mode : I2S/DIT ops mode. 0 for I2S mode. 1 for DIT mode used for S/PDIF,
          IEC60958-1, and AES-3 formats.
- tdm-slots : Slots for TDM operation. Indicates number of channels transmitted
            or received over one serializer.
- serial-dir : A list of serializer configuration. Each entry is a number
               indication for 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
- interrupts : Interrupt numbers for McASP
- interrupt-names : Known interrupt names are "tx" and "rx"
- pinctrl-0: Should specify pin control group used for this controller.
- pinctrl-names: Should contain only one value - "default", for more details
           please refer to pinctrl-bindings.txt
- fck_parent : Should contain a valid clock name which will be used as parent
          for the McASP fck
 
Example:
 
mcasp0: mcasp0@1d00000 {
   compatible = "ti,da830-mcasp-audio";
   reg = <0x100000 0x3000>;
   reg-names "mpu";
   interrupts = <82>, <83>;
   interrupt-names = "tx", "rx";
   op-mode = <0>;        /* MCASP_IIS_MODE */
   tdm-slots = <2>;
   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>;
};