162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/sound/cirrus,madera.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Cirrus Logic Madera class audio CODECs 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - patches@opensource.cirrus.com 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_cidescription: | 1362306a36Sopenharmony_ci This describes audio configuration bindings for these codecs. 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci See also the core bindings for the parent MFD driver: 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci Documentation/devicetree/bindings/mfd/cirrus,madera.yaml 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci and defines for values used in these bindings: 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci include/dt-bindings/sound/madera.h 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci The properties are all contained in the parent MFD node. 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ciallOf: 2662306a36Sopenharmony_ci - $ref: dai-common.yaml# 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ciproperties: 2962306a36Sopenharmony_ci '#sound-dai-cells': 3062306a36Sopenharmony_ci description: 3162306a36Sopenharmony_ci The first cell indicating the audio interface. 3262306a36Sopenharmony_ci const: 1 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci cirrus,inmode: 3562306a36Sopenharmony_ci description: 3662306a36Sopenharmony_ci A list of input mode settings for each input. A maximum 3762306a36Sopenharmony_ci of 24 cells, with four cells per input in the order INnAL, 3862306a36Sopenharmony_ci INnAR INnBL INnBR. For non-muxed inputs the first two cells 3962306a36Sopenharmony_ci for that input set the mode for the left and right channel 4062306a36Sopenharmony_ci and the second two cells must be 0. For muxed inputs the 4162306a36Sopenharmony_ci first two cells for that input set the mode of the left and 4262306a36Sopenharmony_ci right A inputs and the second two cells set the mode of the 4362306a36Sopenharmony_ci left and right B inputs. Valid mode values are one of the 4462306a36Sopenharmony_ci MADERA_INMODE_xxx. If the array is shorter than the number 4562306a36Sopenharmony_ci of inputs the unspecified inputs default to MADERA_INMODE_DIFF. 4662306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 4762306a36Sopenharmony_ci minItems: 1 4862306a36Sopenharmony_ci maxItems: 24 4962306a36Sopenharmony_ci items: 5062306a36Sopenharmony_ci minimum: 0 5162306a36Sopenharmony_ci maximum: 1 5262306a36Sopenharmony_ci default: 0 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci cirrus,out-mono: 5562306a36Sopenharmony_ci description: 5662306a36Sopenharmony_ci Mono bit for each output, maximum of six cells if the array 5762306a36Sopenharmony_ci is shorter outputs will be set to stereo. 5862306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 5962306a36Sopenharmony_ci minItems: 1 6062306a36Sopenharmony_ci maxItems: 6 6162306a36Sopenharmony_ci items: 6262306a36Sopenharmony_ci minimum: 0 6362306a36Sopenharmony_ci maximum: 1 6462306a36Sopenharmony_ci default: 0 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci cirrus,dmic-ref: 6762306a36Sopenharmony_ci description: | 6862306a36Sopenharmony_ci Indicates how the MICBIAS pins have been externally connected 6962306a36Sopenharmony_ci to DMICs on each input, one cell per input. 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci <IN1 IN2 IN3 ...> 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci A value of 0 indicates MICVDD and is the default, 7462306a36Sopenharmony_ci other values depend on the codec: For CS47L35 one of the 7562306a36Sopenharmony_ci CS47L35_DMIC_REF_xxx values For all other codecs one of 7662306a36Sopenharmony_ci the MADERA_DMIC_REF_xxx values Also see the datasheet for a 7762306a36Sopenharmony_ci description of the INn_DMIC_SUP field. 7862306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 7962306a36Sopenharmony_ci minItems: 1 8062306a36Sopenharmony_ci maxItems: 6 8162306a36Sopenharmony_ci items: 8262306a36Sopenharmony_ci minimum: 0 8362306a36Sopenharmony_ci maximum: 3 8462306a36Sopenharmony_ci default: 0 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci cirrus,max-channels-clocked: 8762306a36Sopenharmony_ci description: 8862306a36Sopenharmony_ci Maximum number of channels that I2S clocks will be generated 8962306a36Sopenharmony_ci for. Useful when clock master for systems where the I2S bus 9062306a36Sopenharmony_ci has multiple data lines. One cell for each AIF, use a value 9162306a36Sopenharmony_ci of zero for AIFs that should be handled normally. 9262306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 9362306a36Sopenharmony_ci minItems: 1 9462306a36Sopenharmony_ci maxItems: 4 9562306a36Sopenharmony_ci items: 9662306a36Sopenharmony_ci default: 0 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci cirrus,pdm-fmt: 9962306a36Sopenharmony_ci description: 10062306a36Sopenharmony_ci PDM speaker data format, must contain 2 cells (OUT5 and 10162306a36Sopenharmony_ci OUT6). See the PDM_SPKn_FMT field in the datasheet for a 10262306a36Sopenharmony_ci description of this value. The second cell is ignored for 10362306a36Sopenharmony_ci codecs that do not have OUT6. 10462306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 10562306a36Sopenharmony_ci minItems: 2 10662306a36Sopenharmony_ci maxItems: 2 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_ci cirrus,pdm-mute: 10962306a36Sopenharmony_ci description: | 11062306a36Sopenharmony_ci PDM mute format, must contain 2 cells (OUT5 and OUT6). See the 11162306a36Sopenharmony_ci PDM_SPKn_CTRL_1 register in the datasheet for a description 11262306a36Sopenharmony_ci of this value. The second cell is ignored for codecs that 11362306a36Sopenharmony_ci do not have OUT6. 11462306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32-array 11562306a36Sopenharmony_ci minItems: 2 11662306a36Sopenharmony_ci maxItems: 2 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ciadditionalProperties: true 119