xref: /freebsd/sys/contrib/device-tree/Bindings/sound/wlf,arizona.yaml (revision 8bab661a3316d8bd9b9fbd11a3b4371b91507bd2)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/sound/wlf,arizona.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel Vadottitle: Cirrus Logic/Wolfson Microelectronics Arizona class audio SoCs
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - patches@opensource.cirrus.com
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel Vadotdescription: |
13c66ec88fSEmmanuel Vadot  These devices are audio SoCs with extensive digital capabilities and a range
14c66ec88fSEmmanuel Vadot  of analogue I/O.
15c66ec88fSEmmanuel Vadot
16c66ec88fSEmmanuel Vadot  This document lists sound specific bindings, see the primary binding
17c66ec88fSEmmanuel Vadot  document ../mfd/arizona.yaml
18c66ec88fSEmmanuel Vadot
19*8bab661aSEmmanuel VadotallOf:
20*8bab661aSEmmanuel Vadot  - $ref: dai-common.yaml#
21*8bab661aSEmmanuel Vadot
22c66ec88fSEmmanuel Vadotproperties:
23c66ec88fSEmmanuel Vadot  '#sound-dai-cells':
24c66ec88fSEmmanuel Vadot    description:
25c66ec88fSEmmanuel Vadot      The first cell indicating the audio interface.
26c66ec88fSEmmanuel Vadot    const: 1
27c66ec88fSEmmanuel Vadot
28c66ec88fSEmmanuel Vadot  wlf,inmode:
29c66ec88fSEmmanuel Vadot    description:
30c66ec88fSEmmanuel Vadot      A list of INn_MODE register values, where n is the number of input
31c66ec88fSEmmanuel Vadot      signals. Valid values are 0 (Differential), 1 (Single-ended) and
32c66ec88fSEmmanuel Vadot      2 (Digital Microphone). If absent, INn_MODE registers set to 0 by
33c66ec88fSEmmanuel Vadot      default.  If present, values must be specified less than or equal
34c66ec88fSEmmanuel Vadot      to the number of input signals. If values less than the number of
35c66ec88fSEmmanuel Vadot      input signals, elements that have not been specified are set to 0 by
36c66ec88fSEmmanuel Vadot      default. Entries are <IN1, IN2, IN3, IN4> (wm5102, wm5110, wm8280,
37c66ec88fSEmmanuel Vadot      wm8997) and <IN1A, IN2A, IN1B, IN2B> (wm8998, wm1814)
38c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
39c66ec88fSEmmanuel Vadot    minItems: 1
40c66ec88fSEmmanuel Vadot    maxItems: 4
41c66ec88fSEmmanuel Vadot    items:
42c66ec88fSEmmanuel Vadot      minimum: 0
43c66ec88fSEmmanuel Vadot      maximum: 2
44c66ec88fSEmmanuel Vadot      default: 0
45c66ec88fSEmmanuel Vadot
46c66ec88fSEmmanuel Vadot  wlf,out-mono:
47c66ec88fSEmmanuel Vadot    description:
48c66ec88fSEmmanuel Vadot      A list of boolean values indicating whether each output is mono
49c66ec88fSEmmanuel Vadot      or stereo. Position within the list indicates the output affected
50c66ec88fSEmmanuel Vadot      (eg. First entry in the list corresponds to output 1). A non-zero
51c66ec88fSEmmanuel Vadot      value indicates a mono output. If present, the number of values
52c66ec88fSEmmanuel Vadot      should be less than or equal to the number of outputs, if less values
53c66ec88fSEmmanuel Vadot      are supplied the additional outputs will be treated as stereo.
54c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
55c66ec88fSEmmanuel Vadot    minItems: 1
56c66ec88fSEmmanuel Vadot    maxItems: 6
57c66ec88fSEmmanuel Vadot    items:
58c66ec88fSEmmanuel Vadot      minimum: 0
59c66ec88fSEmmanuel Vadot      maximum: 1
60c66ec88fSEmmanuel Vadot      default: 0
61c66ec88fSEmmanuel Vadot
62c66ec88fSEmmanuel Vadot  wlf,dmic-ref:
63c66ec88fSEmmanuel Vadot    description:
64c66ec88fSEmmanuel Vadot      DMIC reference voltage source for each input, can be selected from
65c66ec88fSEmmanuel Vadot      either MICVDD or one of the MICBIAS's, defines (ARIZONA_DMIC_xxxx)
66c66ec88fSEmmanuel Vadot      are provided in dt-bindings/mfd/arizona.h. If present, the number
67c66ec88fSEmmanuel Vadot      of values should be less than or equal to the number of inputs,
68c66ec88fSEmmanuel Vadot      unspecified inputs will use the chip default.
69c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
70c66ec88fSEmmanuel Vadot    minItems: 1
71c66ec88fSEmmanuel Vadot    maxItems: 4
72c66ec88fSEmmanuel Vadot    items:
73c66ec88fSEmmanuel Vadot      minimum: 0
74c66ec88fSEmmanuel Vadot      maximum: 3
75c66ec88fSEmmanuel Vadot      default: 0
76c66ec88fSEmmanuel Vadot
77c66ec88fSEmmanuel Vadot  wlf,max-channels-clocked:
78c66ec88fSEmmanuel Vadot    description:
79c66ec88fSEmmanuel Vadot      The maximum number of channels to be clocked on each AIF, useful for
80c66ec88fSEmmanuel Vadot      I2S systems with multiple data lines being mastered.  Specify one
81c66ec88fSEmmanuel Vadot      cell for each AIF to be configured, specify zero for AIFs that should
82c66ec88fSEmmanuel Vadot      be handled normally.  If present, number of cells must be less than
83c66ec88fSEmmanuel Vadot      or equal to the number of AIFs. If less than the number of AIFs, for
84c66ec88fSEmmanuel Vadot      cells that have not been specified the corresponding AIFs will be
85c66ec88fSEmmanuel Vadot      treated as default setting.
86c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
87c66ec88fSEmmanuel Vadot    minItems: 1
88c66ec88fSEmmanuel Vadot    maxItems: 3
89c66ec88fSEmmanuel Vadot    items:
90c66ec88fSEmmanuel Vadot      default: 0
91c66ec88fSEmmanuel Vadot
92c66ec88fSEmmanuel Vadot  wlf,spk-fmt:
93c66ec88fSEmmanuel Vadot    description:
94c66ec88fSEmmanuel Vadot      PDM speaker data format, must contain 2 cells (OUT5 and OUT6).  See
95c66ec88fSEmmanuel Vadot      the datasheet for values.  The second cell is ignored for codecs that
96c66ec88fSEmmanuel Vadot      do not have OUT6 (wm5102, wm8997, wm8998, wm1814)
97c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
98c66ec88fSEmmanuel Vadot    minItems: 2
99c66ec88fSEmmanuel Vadot    maxItems: 2
100c66ec88fSEmmanuel Vadot
101c66ec88fSEmmanuel Vadot  wlf,spk-mute:
102c66ec88fSEmmanuel Vadot    description:
103c66ec88fSEmmanuel Vadot      PDM speaker mute setting, must contain 2 cells (OUT5 and OUT6).  See
104c66ec88fSEmmanuel Vadot      the datasheet for values.  The second cell is ignored for codecs that
105c66ec88fSEmmanuel Vadot      do not have OUT6 (wm5102, wm8997, wm8998, wm1814)
106c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
107c66ec88fSEmmanuel Vadot    minItems: 2
108c66ec88fSEmmanuel Vadot    maxItems: 2
109c66ec88fSEmmanuel Vadot
110c66ec88fSEmmanuel Vadot  wlf,out-volume-limit:
111c66ec88fSEmmanuel Vadot    description:
112c66ec88fSEmmanuel Vadot      The volume limit value that should be applied to each output
113c66ec88fSEmmanuel Vadot      channel. See the datasheet for exact values. Channels are specified
114c66ec88fSEmmanuel Vadot      in the order OUT1L, OUT1R, OUT2L, OUT2R, etc.
115c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
116c66ec88fSEmmanuel Vadot    minItems: 1
117c66ec88fSEmmanuel Vadot    maxItems: 12
1186be33864SEmmanuel Vadot
1196be33864SEmmanuel VadotadditionalProperties: true
120