67 lines
2.6 KiB
Plaintext
67 lines
2.6 KiB
Plaintext
Cirrus Logic Tacna class audio codecs
|
|
|
|
This describes audio configuration bindings for these codecs.
|
|
|
|
See also the core bindings for the parent MFD driver:
|
|
See Documentation/devicetree/bindings/mfd/tacna.txt
|
|
|
|
and defines for values used in these bindings:
|
|
include/dt-bindings/sound/tacna.h
|
|
|
|
These properties are all contained in the parent MFD node.
|
|
|
|
Optional properties:
|
|
- cirrus,in-type : A list of input type settings for each input.
|
|
Maximum of 16 cells, with four cells per input in the order
|
|
INnL_1, INnR_1 INnL_2 INnR_2.
|
|
For non-muxed inputs the first two cells for that input set the mode for
|
|
the left and right channel and the second two cells must be 0.
|
|
For muxed inputs the first two cells for that input set the mode of the
|
|
left and right _1 inputs and the second two cells set the mode of the left
|
|
and right _2 inputs.
|
|
Valid mode values are one of the TACNA_IN_TYPE_xxx. If the array is shorter
|
|
than the number of inputs the unspecified inputs default to
|
|
TACNA_IN_TYPE_DIFF.
|
|
|
|
- cirrus,out-mono : Mono bit for each output. A non-zero value indicates the
|
|
corresponding output is mono.
|
|
Cells are:
|
|
<OUT1_HP1 OUT1_HP2> (cs47l96, cs47l97)
|
|
<OUT1 OUT2 OUT3 ...> (all other codecs)
|
|
|
|
- cirrus,max-channels-clocked : Maximum number of channels that I2S clocks
|
|
will be generated for. Useful when clock master for systems where the I2S
|
|
bus has multiple data lines.
|
|
One cell for each AIF, use a value of zero for AIFs that should be handled
|
|
normally.
|
|
|
|
- cirrus,pdm-fmt : PDM speaker data format, must contain 2 cells
|
|
(OUT5 and OUT6). One of the TACNA_PDM_FMT_MODE_x values.
|
|
The second cell is ignored for codecs that do not have OUT6.
|
|
|
|
- cirrus,pdm-mute : PDM mute format sequence, must contain 2 cells
|
|
(OUT5 and OUT6).
|
|
The second cell is ignored for codecs that do not have OUT6.
|
|
See datasheet for a description of the OUTnPDM_MUTE_SEQ field.
|
|
|
|
- cirrus,pdm-sup : Indicates how the MICBIAS pins have been externally
|
|
connected to DMICs on each input, one cell per input.
|
|
<IN1 IN2 IN3 ...>
|
|
A value of 0 indicates VOUT_MIC and is the default, other values depend on
|
|
the value of the INn_PDM_SUP field.
|
|
See the datasheet for a description of the INn_PDM_SUP field.
|
|
|
|
Example:
|
|
|
|
cs47l96@0 {
|
|
compatible = "cirrus,cs47l96";
|
|
|
|
cirrus,in-type = <
|
|
TACNA_IN_TYPE_DIFF TACNA_IN_TYPE_DIFF /* IN1[LR]_1 differential */
|
|
TACNA_IN_TYPE_SE TACNA_IN_TYPE_SE /* IN1[LR]_2 single-ended */
|
|
TACNA_IN_TYPE_DIFF TACNA_IN_TYPE_DIFF /* IN2[LR]_1 differential */
|
|
>;
|
|
cirrus,out-mono = <0 0 0 0>;
|
|
cirrus,max-channels-clocked = <2 0 0>;
|
|
};
|