xref: /linux/Documentation/devicetree/bindings/sound/ti,tas2781.yaml (revision b3cc7428a32202936904b5b07cf9f135025bafd6)
13e4ecd6cSShenghao Ding# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
23e4ecd6cSShenghao Ding# Copyright (C) 2022 - 2023 Texas Instruments Incorporated
33e4ecd6cSShenghao Ding%YAML 1.2
43e4ecd6cSShenghao Ding---
53e4ecd6cSShenghao Ding$id: http://devicetree.org/schemas/sound/ti,tas2781.yaml#
63e4ecd6cSShenghao Ding$schema: http://devicetree.org/meta-schemas/core.yaml#
73e4ecd6cSShenghao Ding
83dbb4e36SShenghao Dingtitle: Texas Instruments TAS2563/TAS2781 SmartAMP
93e4ecd6cSShenghao Ding
103e4ecd6cSShenghao Dingmaintainers:
113e4ecd6cSShenghao Ding  - Shenghao Ding <shenghao-ding@ti.com>
123e4ecd6cSShenghao Ding
133dbb4e36SShenghao Dingdescription: |
143dbb4e36SShenghao Ding  The TAS2563/TAS2781 is a mono, digital input Class-D audio
153dbb4e36SShenghao Ding  amplifier optimized for efficiently driving high peak power into
163dbb4e36SShenghao Ding  small loudspeakers. An integrated on-chip DSP supports Texas
173dbb4e36SShenghao Ding  Instruments Smart Amp speaker protection algorithm. The
183dbb4e36SShenghao Ding  integrated speaker voltage and current sense provides for real time
193e4ecd6cSShenghao Ding  monitoring of loudspeaker behavior.
203e4ecd6cSShenghao Ding
213dbb4e36SShenghao Ding  Specifications about the audio amplifier can be found at:
223dbb4e36SShenghao Ding    https://www.ti.com/lit/gpn/tas2563
233dbb4e36SShenghao Ding    https://www.ti.com/lit/gpn/tas2781
243e4ecd6cSShenghao Ding
253e4ecd6cSShenghao Dingproperties:
263e4ecd6cSShenghao Ding  compatible:
273dbb4e36SShenghao Ding    description: |
283dbb4e36SShenghao Ding      ti,tas2563: 6.1-W Boosted Class-D Audio Amplifier With Integrated
293dbb4e36SShenghao Ding      DSP and IV Sense, 16/20/24/32bit stereo I2S or multichannel TDM.
303dbb4e36SShenghao Ding
313dbb4e36SShenghao Ding      ti,tas2781: 24-V Class-D Amplifier with Real Time Integrated Speaker
323dbb4e36SShenghao Ding      Protection and Audio Processing, 16/20/24/32bit stereo I2S or
333dbb4e36SShenghao Ding      multichannel TDM.
343dbb4e36SShenghao Ding    oneOf:
353dbb4e36SShenghao Ding      - items:
363dbb4e36SShenghao Ding          - enum:
373dbb4e36SShenghao Ding              - ti,tas2563
383dbb4e36SShenghao Ding          - const: ti,tas2781
393dbb4e36SShenghao Ding      - enum:
403e4ecd6cSShenghao Ding          - ti,tas2781
413e4ecd6cSShenghao Ding
423e4ecd6cSShenghao Ding  reg:
433e4ecd6cSShenghao Ding    description:
443dbb4e36SShenghao Ding      I2C address, in multiple-AMP case, all the i2c address
4547aab533SBjorn Helgaas      aggregate as one Audio Device to support multiple audio slots.
463e4ecd6cSShenghao Ding    maxItems: 8
473e4ecd6cSShenghao Ding    minItems: 1
483e4ecd6cSShenghao Ding
493e4ecd6cSShenghao Ding  reset-gpios:
503e4ecd6cSShenghao Ding    maxItems: 1
513e4ecd6cSShenghao Ding
523e4ecd6cSShenghao Ding  interrupts:
533e4ecd6cSShenghao Ding    maxItems: 1
543e4ecd6cSShenghao Ding
553e4ecd6cSShenghao Ding  '#sound-dai-cells':
563e4ecd6cSShenghao Ding    const: 0
573e4ecd6cSShenghao Ding
583e4ecd6cSShenghao Dingrequired:
593e4ecd6cSShenghao Ding  - compatible
603e4ecd6cSShenghao Ding  - reg
613e4ecd6cSShenghao Ding
623dbb4e36SShenghao DingallOf:
633dbb4e36SShenghao Ding  - $ref: dai-common.yaml#
643dbb4e36SShenghao Ding  - if:
653dbb4e36SShenghao Ding      properties:
663dbb4e36SShenghao Ding        compatible:
673dbb4e36SShenghao Ding          contains:
683dbb4e36SShenghao Ding            enum:
693dbb4e36SShenghao Ding              - ti,tas2563
703dbb4e36SShenghao Ding    then:
713dbb4e36SShenghao Ding      properties:
723dbb4e36SShenghao Ding        reg:
733dbb4e36SShenghao Ding          description:
743dbb4e36SShenghao Ding            I2C address, in multiple-AMP case, all the i2c address
753dbb4e36SShenghao Ding            aggregate as one Audio Device to support multiple audio slots.
763dbb4e36SShenghao Ding          maxItems: 4
773dbb4e36SShenghao Ding          minItems: 1
783dbb4e36SShenghao Ding          items:
793dbb4e36SShenghao Ding            minimum: 0x4c
803dbb4e36SShenghao Ding            maximum: 0x4f
813dbb4e36SShenghao Ding
823dbb4e36SShenghao Ding  - if:
833dbb4e36SShenghao Ding      properties:
843dbb4e36SShenghao Ding        compatible:
853dbb4e36SShenghao Ding          contains:
863dbb4e36SShenghao Ding            enum:
873dbb4e36SShenghao Ding              - ti,tas2781
883dbb4e36SShenghao Ding    then:
893dbb4e36SShenghao Ding      properties:
903dbb4e36SShenghao Ding        reg:
913dbb4e36SShenghao Ding          description:
923dbb4e36SShenghao Ding            I2C address, in multiple-AMP case, all the i2c address
933dbb4e36SShenghao Ding            aggregate as one Audio Device to support multiple audio slots.
943dbb4e36SShenghao Ding          maxItems: 8
953dbb4e36SShenghao Ding          minItems: 1
963dbb4e36SShenghao Ding          items:
973dbb4e36SShenghao Ding            minimum: 0x38
983dbb4e36SShenghao Ding            maximum: 0x3f
993dbb4e36SShenghao Ding
1003e4ecd6cSShenghao DingadditionalProperties: false
1013e4ecd6cSShenghao Ding
1023e4ecd6cSShenghao Dingexamples:
1033e4ecd6cSShenghao Ding  - |
1043e4ecd6cSShenghao Ding    #include <dt-bindings/gpio/gpio.h>
105*fffe003fSKrzysztof Kozlowski
1063e4ecd6cSShenghao Ding    i2c {
1073e4ecd6cSShenghao Ding        /* example with quad tas2781s, such as tablet or pad device */
1083e4ecd6cSShenghao Ding        #address-cells = <1>;
1093e4ecd6cSShenghao Ding        #size-cells = <0>;
110*fffe003fSKrzysztof Kozlowski
111*fffe003fSKrzysztof Kozlowski        audio-codec@38 {
1123e4ecd6cSShenghao Ding            compatible = "ti,tas2781";
1133e4ecd6cSShenghao Ding            reg = <0x38>, /* Audio slot 0 */
1143e4ecd6cSShenghao Ding                  <0x3a>, /* Audio slot 1 */
1153e4ecd6cSShenghao Ding                  <0x39>, /* Audio slot 2 */
1163e4ecd6cSShenghao Ding                  <0x3b>; /* Audio slot 3 */
1173e4ecd6cSShenghao Ding
1183e4ecd6cSShenghao Ding            #sound-dai-cells = <0>;
1193e4ecd6cSShenghao Ding            reset-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
1203e4ecd6cSShenghao Ding            interrupt-parent = <&gpio1>;
1213e4ecd6cSShenghao Ding            interrupts = <15>;
1223e4ecd6cSShenghao Ding        };
1233e4ecd6cSShenghao Ding    };
1243e4ecd6cSShenghao Ding...
125