1*3e4ecd6cSShenghao Ding# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*3e4ecd6cSShenghao Ding# Copyright (C) 2022 - 2023 Texas Instruments Incorporated
3*3e4ecd6cSShenghao Ding%YAML 1.2
4*3e4ecd6cSShenghao Ding---
5*3e4ecd6cSShenghao Ding$id: http://devicetree.org/schemas/sound/ti,tas2781.yaml#
6*3e4ecd6cSShenghao Ding$schema: http://devicetree.org/meta-schemas/core.yaml#
7*3e4ecd6cSShenghao Ding
8*3e4ecd6cSShenghao Dingtitle: Texas Instruments TAS2781 SmartAMP
9*3e4ecd6cSShenghao Ding
10*3e4ecd6cSShenghao Dingmaintainers:
11*3e4ecd6cSShenghao Ding  - Shenghao Ding <shenghao-ding@ti.com>
12*3e4ecd6cSShenghao Ding
13*3e4ecd6cSShenghao Dingdescription:
14*3e4ecd6cSShenghao Ding  The TAS2781 is a mono, digital input Class-D audio amplifier
15*3e4ecd6cSShenghao Ding  optimized for efficiently driving high peak power into small
16*3e4ecd6cSShenghao Ding  loudspeakers. An integrated on-chip DSP supports Texas Instruments
17*3e4ecd6cSShenghao Ding  Smart Amp speaker protection algorithm. The integrated speaker
18*3e4ecd6cSShenghao Ding  voltage and current sense provides for real time
19*3e4ecd6cSShenghao Ding  monitoring of loudspeaker behavior.
20*3e4ecd6cSShenghao Ding
21*3e4ecd6cSShenghao DingallOf:
22*3e4ecd6cSShenghao Ding  - $ref: dai-common.yaml#
23*3e4ecd6cSShenghao Ding
24*3e4ecd6cSShenghao Dingproperties:
25*3e4ecd6cSShenghao Ding  compatible:
26*3e4ecd6cSShenghao Ding    enum:
27*3e4ecd6cSShenghao Ding      - ti,tas2781
28*3e4ecd6cSShenghao Ding
29*3e4ecd6cSShenghao Ding  reg:
30*3e4ecd6cSShenghao Ding    description:
31*3e4ecd6cSShenghao Ding      I2C address, in multiple tas2781s case, all the i2c address
32*3e4ecd6cSShenghao Ding      aggreate as one Audio Device to support multiple audio slots.
33*3e4ecd6cSShenghao Ding    maxItems: 8
34*3e4ecd6cSShenghao Ding    minItems: 1
35*3e4ecd6cSShenghao Ding    items:
36*3e4ecd6cSShenghao Ding      minimum: 0x38
37*3e4ecd6cSShenghao Ding      maximum: 0x3f
38*3e4ecd6cSShenghao Ding
39*3e4ecd6cSShenghao Ding  reset-gpios:
40*3e4ecd6cSShenghao Ding    maxItems: 1
41*3e4ecd6cSShenghao Ding
42*3e4ecd6cSShenghao Ding  interrupts:
43*3e4ecd6cSShenghao Ding    maxItems: 1
44*3e4ecd6cSShenghao Ding
45*3e4ecd6cSShenghao Ding  '#sound-dai-cells':
46*3e4ecd6cSShenghao Ding    const: 0
47*3e4ecd6cSShenghao Ding
48*3e4ecd6cSShenghao Dingrequired:
49*3e4ecd6cSShenghao Ding  - compatible
50*3e4ecd6cSShenghao Ding  - reg
51*3e4ecd6cSShenghao Ding
52*3e4ecd6cSShenghao DingadditionalProperties: false
53*3e4ecd6cSShenghao Ding
54*3e4ecd6cSShenghao Dingexamples:
55*3e4ecd6cSShenghao Ding  - |
56*3e4ecd6cSShenghao Ding   #include <dt-bindings/gpio/gpio.h>
57*3e4ecd6cSShenghao Ding   i2c {
58*3e4ecd6cSShenghao Ding     /* example with quad tas2781s, such as tablet or pad device */
59*3e4ecd6cSShenghao Ding     #address-cells = <1>;
60*3e4ecd6cSShenghao Ding     #size-cells = <0>;
61*3e4ecd6cSShenghao Ding     quad_tas2781: tas2781@38 {
62*3e4ecd6cSShenghao Ding       compatible = "ti,tas2781";
63*3e4ecd6cSShenghao Ding       reg = <0x38>, /* Audio slot 0 */
64*3e4ecd6cSShenghao Ding             <0x3a>, /* Audio slot 1 */
65*3e4ecd6cSShenghao Ding             <0x39>, /* Audio slot 2 */
66*3e4ecd6cSShenghao Ding             <0x3b>; /* Audio slot 3 */
67*3e4ecd6cSShenghao Ding
68*3e4ecd6cSShenghao Ding       #sound-dai-cells = <0>;
69*3e4ecd6cSShenghao Ding       reset-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
70*3e4ecd6cSShenghao Ding       interrupt-parent = <&gpio1>;
71*3e4ecd6cSShenghao Ding       interrupts = <15>;
72*3e4ecd6cSShenghao Ding     };
73*3e4ecd6cSShenghao Ding   };
74*3e4ecd6cSShenghao Ding...
75