1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2019-20 Texas Instruments Incorporated
3%YAML 1.2
4---
5$id: "http://devicetree.org/schemas/sound/tas2770.yaml#"
6$schema: "http://devicetree.org/meta-schemas/core.yaml#"
7
8title: Texas Instruments TAS2770 Smart PA
9
10maintainers:
11  - Shi Fu <shifu0704@thundersoft.com>
12
13description: |
14  The TAS2770 is a mono, digital input Class-D audio amplifier optimized for
15  efficiently driving high peak power into small loudspeakers.
16  Integrated speaker voltage and current sense provides for
17  real time monitoring of loudspeaker behavior.
18
19allOf:
20  - $ref: dai-common.yaml#
21
22properties:
23  compatible:
24    enum:
25      - ti,tas2770
26
27  reg:
28    maxItems: 1
29    description: |
30       I2C address of the device can be between 0x41 to 0x48.
31
32  reset-gpio:
33    maxItems: 1
34    description: GPIO used to reset the device.
35
36  shutdown-gpios:
37    maxItems: 1
38    description: GPIO used to control the state of the device.
39
40  interrupts:
41    maxItems: 1
42
43  ti,imon-slot-no:
44    $ref: /schemas/types.yaml#/definitions/uint32
45    description: TDM TX current sense time slot.
46
47  ti,vmon-slot-no:
48    $ref: /schemas/types.yaml#/definitions/uint32
49    description: TDM TX voltage sense time slot.
50
51  ti,asi-format:
52    deprecated: true
53    $ref: /schemas/types.yaml#/definitions/uint32
54    description: Sets TDM RX capture edge.
55    enum:
56      - 0 # Rising edge
57      - 1 # Falling edge
58
59  '#sound-dai-cells':
60    # The codec has a single DAI, the #sound-dai-cells=<1>; case is left in for backward
61    # compatibility but is deprecated.
62    enum: [0, 1]
63
64required:
65  - compatible
66  - reg
67
68unevaluatedProperties: false
69
70examples:
71  - |
72   #include <dt-bindings/gpio/gpio.h>
73   i2c {
74     #address-cells = <1>;
75     #size-cells = <0>;
76     codec: codec@41 {
77       compatible = "ti,tas2770";
78       reg = <0x41>;
79       #sound-dai-cells = <0>;
80       interrupt-parent = <&gpio1>;
81       interrupts = <14>;
82       reset-gpio = <&gpio1 15 0>;
83       shutdown-gpios = <&gpio1 14 0>;
84       ti,imon-slot-no = <0>;
85       ti,vmon-slot-no = <2>;
86     };
87   };
88