xref: /freebsd/sys/contrib/device-tree/Bindings/sound/maxim,max98925.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1*aa1a8ff2SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*aa1a8ff2SEmmanuel Vadot%YAML 1.2
3*aa1a8ff2SEmmanuel Vadot---
4*aa1a8ff2SEmmanuel Vadot$id: http://devicetree.org/schemas/sound/maxim,max98925.yaml#
5*aa1a8ff2SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*aa1a8ff2SEmmanuel Vadot
7*aa1a8ff2SEmmanuel Vadottitle: Maxim Integrated MAX98925/MAX98926/MAX98927 speaker amplifier
8*aa1a8ff2SEmmanuel Vadot
9*aa1a8ff2SEmmanuel Vadotmaintainers:
10*aa1a8ff2SEmmanuel Vadot  - Ryan Lee <ryans.lee@maximintegrated.com>
11*aa1a8ff2SEmmanuel Vadot
12*aa1a8ff2SEmmanuel Vadotproperties:
13*aa1a8ff2SEmmanuel Vadot  compatible:
14*aa1a8ff2SEmmanuel Vadot    enum:
15*aa1a8ff2SEmmanuel Vadot      - maxim,max98925
16*aa1a8ff2SEmmanuel Vadot      - maxim,max98926
17*aa1a8ff2SEmmanuel Vadot      - maxim,max98927
18*aa1a8ff2SEmmanuel Vadot
19*aa1a8ff2SEmmanuel Vadot  reg:
20*aa1a8ff2SEmmanuel Vadot    maxItems: 1
21*aa1a8ff2SEmmanuel Vadot
22*aa1a8ff2SEmmanuel Vadot  reset-gpios:
23*aa1a8ff2SEmmanuel Vadot    maxItems: 1
24*aa1a8ff2SEmmanuel Vadot
25*aa1a8ff2SEmmanuel Vadot  '#sound-dai-cells':
26*aa1a8ff2SEmmanuel Vadot    const: 0
27*aa1a8ff2SEmmanuel Vadot
28*aa1a8ff2SEmmanuel Vadot  vmon-slot-no:
29*aa1a8ff2SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
30*aa1a8ff2SEmmanuel Vadot    minimum: 0
31*aa1a8ff2SEmmanuel Vadot    maximum: 30
32*aa1a8ff2SEmmanuel Vadot    default: 0
33*aa1a8ff2SEmmanuel Vadot    description:
34*aa1a8ff2SEmmanuel Vadot      Slot number used to send voltage information or in inteleave mode this
35*aa1a8ff2SEmmanuel Vadot      will be used as interleave slot.
36*aa1a8ff2SEmmanuel Vadot
37*aa1a8ff2SEmmanuel Vadot  imon-slot-no:
38*aa1a8ff2SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
39*aa1a8ff2SEmmanuel Vadot    minimum: 0
40*aa1a8ff2SEmmanuel Vadot    maximum: 30
41*aa1a8ff2SEmmanuel Vadot    default: 0
42*aa1a8ff2SEmmanuel Vadot    description:
43*aa1a8ff2SEmmanuel Vadot      Slot number used to send current information.
44*aa1a8ff2SEmmanuel Vadot
45*aa1a8ff2SEmmanuel Vadot  maxim,interleave-mode:
46*aa1a8ff2SEmmanuel Vadot    type: boolean
47*aa1a8ff2SEmmanuel Vadot    description:
48*aa1a8ff2SEmmanuel Vadot      When using two MAX9892X in a system it is possible to create ADC data
49*aa1a8ff2SEmmanuel Vadot      that will overflow the frame size. When enabled, the Digital Audio
50*aa1a8ff2SEmmanuel Vadot      Interleave mode provides a means to output VMON and IMON data from two
51*aa1a8ff2SEmmanuel Vadot      devices on a single DOUT line when running smaller frames sizes such as
52*aa1a8ff2SEmmanuel Vadot      32 BCLKS per LRCLK or 48 BCLKS per LRCLK.
53*aa1a8ff2SEmmanuel Vadot
54*aa1a8ff2SEmmanuel Vadotrequired:
55*aa1a8ff2SEmmanuel Vadot  - compatible
56*aa1a8ff2SEmmanuel Vadot  - reg
57*aa1a8ff2SEmmanuel Vadot
58*aa1a8ff2SEmmanuel VadotallOf:
59*aa1a8ff2SEmmanuel Vadot  - $ref: dai-common.yaml#
60*aa1a8ff2SEmmanuel Vadot  - if:
61*aa1a8ff2SEmmanuel Vadot      properties:
62*aa1a8ff2SEmmanuel Vadot        compatible:
63*aa1a8ff2SEmmanuel Vadot          contains:
64*aa1a8ff2SEmmanuel Vadot            enum:
65*aa1a8ff2SEmmanuel Vadot              - maxim,max98927
66*aa1a8ff2SEmmanuel Vadot    then:
67*aa1a8ff2SEmmanuel Vadot      properties:
68*aa1a8ff2SEmmanuel Vadot        vmon-slot-no:
69*aa1a8ff2SEmmanuel Vadot          minimum: 0
70*aa1a8ff2SEmmanuel Vadot          maximum: 15
71*aa1a8ff2SEmmanuel Vadot
72*aa1a8ff2SEmmanuel Vadot        imon-slot-no:
73*aa1a8ff2SEmmanuel Vadot          minimum: 0
74*aa1a8ff2SEmmanuel Vadot          maximum: 15
75*aa1a8ff2SEmmanuel Vadot
76*aa1a8ff2SEmmanuel VadotadditionalProperties: false
77*aa1a8ff2SEmmanuel Vadot
78*aa1a8ff2SEmmanuel Vadotexamples:
79*aa1a8ff2SEmmanuel Vadot  - |
80*aa1a8ff2SEmmanuel Vadot    i2c {
81*aa1a8ff2SEmmanuel Vadot        #address-cells = <1>;
82*aa1a8ff2SEmmanuel Vadot        #size-cells = <0>;
83*aa1a8ff2SEmmanuel Vadot
84*aa1a8ff2SEmmanuel Vadot        #include <dt-bindings/gpio/gpio.h>
85*aa1a8ff2SEmmanuel Vadot        audio-codec@3a {
86*aa1a8ff2SEmmanuel Vadot            compatible = "maxim,max98927";
87*aa1a8ff2SEmmanuel Vadot            reg = <0x3a>;
88*aa1a8ff2SEmmanuel Vadot            #sound-dai-cells = <0>;
89*aa1a8ff2SEmmanuel Vadot
90*aa1a8ff2SEmmanuel Vadot            pinctrl-0 = <&speaker_default>;
91*aa1a8ff2SEmmanuel Vadot            pinctrl-names = "default";
92*aa1a8ff2SEmmanuel Vadot
93*aa1a8ff2SEmmanuel Vadot            reset-gpios = <&tlmm 69 GPIO_ACTIVE_LOW>;
94*aa1a8ff2SEmmanuel Vadot
95*aa1a8ff2SEmmanuel Vadot            vmon-slot-no = <1>;
96*aa1a8ff2SEmmanuel Vadot            imon-slot-no = <0>;
97*aa1a8ff2SEmmanuel Vadot        };
98*aa1a8ff2SEmmanuel Vadot    };
99