xref: /freebsd/sys/contrib/device-tree/Bindings/sound/cirrus,cs42l84.yaml (revision 5f62a964e9f8abc6a05d8338273fadd154f0a206)
1*5f62a964SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*5f62a964SEmmanuel Vadot%YAML 1.2
3*5f62a964SEmmanuel Vadot---
4*5f62a964SEmmanuel Vadot$id: http://devicetree.org/schemas/sound/cirrus,cs42l84.yaml#
5*5f62a964SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*5f62a964SEmmanuel Vadot
7*5f62a964SEmmanuel Vadottitle: Cirrus Logic CS42L84 audio CODEC
8*5f62a964SEmmanuel Vadot
9*5f62a964SEmmanuel Vadotmaintainers:
10*5f62a964SEmmanuel Vadot  - Martin Povišer <povik+lin@cutebit.org>
11*5f62a964SEmmanuel Vadot
12*5f62a964SEmmanuel Vadotdescription: |
13*5f62a964SEmmanuel Vadot  The CS42L84 is a headphone jack codec made by Cirrus Logic and embedded
14*5f62a964SEmmanuel Vadot  in personal computers sold by Apple. It was first seen in 2021 Macbook
15*5f62a964SEmmanuel Vadot  Pro models. It has stereo DAC for playback, mono ADC for capture, and
16*5f62a964SEmmanuel Vadot  is somewhat similar to CS42L42 but with a different regmap.
17*5f62a964SEmmanuel Vadot
18*5f62a964SEmmanuel Vadotproperties:
19*5f62a964SEmmanuel Vadot  compatible:
20*5f62a964SEmmanuel Vadot    enum:
21*5f62a964SEmmanuel Vadot      - cirrus,cs42l84
22*5f62a964SEmmanuel Vadot
23*5f62a964SEmmanuel Vadot  reg:
24*5f62a964SEmmanuel Vadot    maxItems: 1
25*5f62a964SEmmanuel Vadot
26*5f62a964SEmmanuel Vadot  reset-gpios:
27*5f62a964SEmmanuel Vadot    maxItems: 1
28*5f62a964SEmmanuel Vadot
29*5f62a964SEmmanuel Vadot  interrupts:
30*5f62a964SEmmanuel Vadot    maxItems: 1
31*5f62a964SEmmanuel Vadot
32*5f62a964SEmmanuel Vadot  '#sound-dai-cells':
33*5f62a964SEmmanuel Vadot    const: 0
34*5f62a964SEmmanuel Vadot
35*5f62a964SEmmanuel Vadotrequired:
36*5f62a964SEmmanuel Vadot  - compatible
37*5f62a964SEmmanuel Vadot  - reg
38*5f62a964SEmmanuel Vadot
39*5f62a964SEmmanuel VadotadditionalProperties: false
40*5f62a964SEmmanuel Vadot
41*5f62a964SEmmanuel Vadotexamples:
42*5f62a964SEmmanuel Vadot  - |
43*5f62a964SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
44*5f62a964SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
45*5f62a964SEmmanuel Vadot    i2c {
46*5f62a964SEmmanuel Vadot      #address-cells = <1>;
47*5f62a964SEmmanuel Vadot      #size-cells = <0>;
48*5f62a964SEmmanuel Vadot
49*5f62a964SEmmanuel Vadot      jack_codec: codec@4b {
50*5f62a964SEmmanuel Vadot          compatible = "cirrus,cs42l84";
51*5f62a964SEmmanuel Vadot          reg = <0x4b>;
52*5f62a964SEmmanuel Vadot          reset-gpios = <&pinctrl_nub 4 GPIO_ACTIVE_LOW>;
53*5f62a964SEmmanuel Vadot          interrupts-extended = <&pinctrl_ap 180 IRQ_TYPE_LEVEL_LOW>;
54*5f62a964SEmmanuel Vadot          #sound-dai-cells = <0>;
55*5f62a964SEmmanuel Vadot      };
56*5f62a964SEmmanuel Vadot    };
57