Skip to content

Commit a9e6060

Browse files
committed
Merge tag 'sound-6.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound updates from Takashi Iwai: "We've received a lot of activities in this cycle, mostly about leaf driver codes rather than the core part, but with a good mixture of code cleanups and new driver additions. Below are some highlights: ASoC: - Support for automatically enumerating DAIs from standards conforming SoundWire SDCA devices; not much used as of this writing, rather for future implementations - Conversion of quite a few drivers to newer GPIO APIs - Continued cleanups and helper usages in allover places - Support for a wider range of Intel AVS platforms - Support for AMD ACP 7.x platforms, Cirrus Logic CS35L63 and CS48L32 Everest Semiconductor ES8375 and ES8389, Longsoon-1 AC'97 controllers, nVidia Tegra264, Richtek ALC203 and RT9123 and Rockchip SAI controllers HD-audio: - Lots of cleanups of TAS2781 codec drivers - A new HD-audio control bound via ACPI for Nvidia - Support for Tegra264, Intel WCL, usual new codec quirks USB-audio: - Fix a race at removal of MIDI device - Pioneer DJM-V10 support, Scarlett2 driver cleanups Misc: - Cleanups of deprecated PCI functions - Removal of unused / dead function codes" * tag 'sound-6.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (364 commits) firmware: cs_dsp: Fix OOB memory read access in KUnit test ASoC: codecs: add support for ES8375 ASoC: dt-bindings: Add Everest ES8375 audio CODEC ALSA: hda: acpi: Make driver's match data const static ALSA: hda: acpi: Use SYSTEM_SLEEP_PM_OPS() ALSA: atmel: Replace deprecated strcpy() with strscpy() ALSA: core: fix up bus match const issues. ASoC: wm_adsp: Make cirrus_dir const ASoC: tegra: Tegra264 support in isomgr_bw ASoC: tegra: AHUB: Add Tegra264 support ASoC: tegra: ADX: Add Tegra264 support ASoC: tegra: AMX: Add Tegra264 support ASoC: tegra: I2S: Add Tegra264 support ASoC: tegra: Update PLL rate for Tegra264 ASoC: tegra: ASRC: Update ARAM address ASoC: tegra: ADMAIF: Add Tegra264 support ASoC: tegra: CIF: Add Tegra264 support dt-bindings: ASoC: Document Tegra264 APE support dt-bindings: ASoC: admaif: Add missing properties ASoC: dt-bindings: audio-graph-card2: reference audio-graph routing property ...
2 parents 11147c1 + 534e9cf commit a9e6060

File tree

389 files changed

+21912
-7139
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

389 files changed

+21912
-7139
lines changed

Documentation/devicetree/bindings/bus/nvidia,tegra210-aconnect.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ properties:
2121
- const: nvidia,tegra210-aconnect
2222
- items:
2323
- enum:
24+
- nvidia,tegra264-aconnect
2425
- nvidia,tegra234-aconnect
2526
- nvidia,tegra186-aconnect
2627
- nvidia,tegra194-aconnect

Documentation/devicetree/bindings/sound/audio-graph-card2.yaml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@ properties:
1818
label:
1919
maxItems: 1
2020
routing:
21-
description: |
22-
A list of the connections between audio components.
23-
Each entry is a pair of strings, the first being the
24-
connection's sink, the second being the connection's source.
25-
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
21+
$ref: audio-graph.yaml#/properties/routing
2622
aux-devs:
2723
description: |
2824
List of phandles pointing to auxiliary devices, such
@@ -39,6 +35,8 @@ properties:
3935
description: Codec to Codec node
4036
hp-det-gpios:
4137
$ref: audio-graph.yaml#/properties/hp-det-gpios
38+
mic-det-gpios:
39+
$ref: audio-graph.yaml#/properties/mic-det-gpios
4240
widgets:
4341
$ref: audio-graph.yaml#/properties/widgets
4442

Lines changed: 195 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,195 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/cirrus,cs48l32.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Cirrus Logic CS48L32 audio DSP.
8+
9+
maintainers:
10+
- patches@opensource.cirrus.com
11+
12+
description: |
13+
The CS48L32 is a high-performance low-power audio DSP for smartphones and
14+
other portable audio devices. The CS48L32 combines a programmable Halo Core
15+
DSP with a variety of power-efficient fixed-function audio processors.
16+
17+
See also the binding headers:
18+
19+
include/dt-bindings/sound/cs48l32.yaml
20+
21+
allOf:
22+
- $ref: /schemas/spi/spi-peripheral-props.yaml#
23+
- $ref: dai-common.yaml#
24+
25+
properties:
26+
compatible:
27+
enum:
28+
- cirrus,cs48l32
29+
30+
reg:
31+
description: SPI chip-select number.
32+
maxItems: 1
33+
34+
spi-max-frequency:
35+
maximum: 25000000
36+
37+
vdd-a-supply:
38+
description: Regulator supplying VDD_A
39+
40+
vdd-d-supply:
41+
description: Regulator supplying VDD_D
42+
43+
vdd-io-supply:
44+
description: Regulator supplying VDD_IO
45+
46+
vdd-cp-supply:
47+
description: Regulator supplying VDD_CP
48+
49+
reset-gpios:
50+
description:
51+
One entry specifying the GPIO controlling /RESET. Although optional,
52+
it is strongly recommended to use a hardware reset.
53+
maxItems: 1
54+
55+
interrupts:
56+
maxItems: 1
57+
58+
clocks:
59+
items:
60+
- description: The clock supplied on MCLK1
61+
62+
clock-names:
63+
const: mclk1
64+
65+
'#sound-dai-cells':
66+
const: 1
67+
68+
cirrus,in-type:
69+
description: |
70+
A list of input type settings for each ADC input.
71+
Inputs are one of these types:
72+
CS48L32_IN_TYPE_DIFF : analog differential (default)
73+
CS48L32_IN_TYPE_SE : analog single-ended
74+
75+
The type of the left (L) and right (R) channel on each input is
76+
independently configured, as are the two groups of pins muxable to
77+
the input (referred to in the datasheet as "1" and "2").
78+
79+
$ref: /schemas/types.yaml#/definitions/uint32-array
80+
items:
81+
- description:
82+
IN1L_1 analog input type. One of the CS48L32_IN_TYPE_xxx.
83+
minimum: 0
84+
maximum: 1
85+
default: 0
86+
- description:
87+
IN1R_1 analog input type. One of the CS48L32_IN_TYPE_xxx.
88+
minimum: 0
89+
maximum: 1
90+
default: 0
91+
- description:
92+
IN1L_2 analog input type. One of the CS48L32_IN_TYPE_xxx.
93+
minimum: 0
94+
maximum: 1
95+
default: 0
96+
- description:
97+
IN1R_2 analog input type. One of the CS48L32_IN_TYPE_xxx.
98+
minimum: 0
99+
maximum: 1
100+
default: 0
101+
102+
cirrus,pdm-sup:
103+
description: |
104+
Indicate which MICBIAS output supplies bias to the microphone.
105+
There is one cell per input (IN1, IN2, ...).
106+
107+
One of the CS48L32_MICBIAS_xxx values.
108+
CS48L32_PDM_SUP_VOUT_MIC : mic biased from VOUT_MIC
109+
CS48L32_PDM_SUP_MICBIAS1 : mic biased from MICBIAS1
110+
111+
Also see the INn_PDM_SUP field in the datasheet.
112+
$ref: /schemas/types.yaml#/definitions/uint32-array
113+
items:
114+
- description: IN1 PDM supply source
115+
minimum: 0
116+
maximum: 1
117+
default: 0
118+
- description: IN2 PDM supply source
119+
minimum: 0
120+
maximum: 1
121+
default: 0
122+
123+
required:
124+
- compatible
125+
- reg
126+
- vdd-a-supply
127+
- vdd-d-supply
128+
- vdd-io-supply
129+
- vdd-cp-supply
130+
131+
additionalProperties: false
132+
133+
examples:
134+
- |
135+
#include <dt-bindings/sound/cs48l32.h>
136+
137+
spi@e0006000 {
138+
#address-cells = <1>;
139+
#size-cells = <0>;
140+
reg = <0xe0006000 0x1000>;
141+
142+
codec@1 {
143+
compatible = "cirrus,cs48l32";
144+
145+
reg = <0x1>;
146+
spi-max-frequency = <2500000>;
147+
148+
vdd-a-supply = <&regulator_1v8>;
149+
vdd-d-supply = <&regulator_1v2>;
150+
vdd-io-supply = <&regulator_1v8>;
151+
vdd-cp-supply = <&regulator_1v8>;
152+
153+
reset-gpios = <&gpio 0 0>;
154+
155+
clocks = <&clks 0>;
156+
clock-names = "mclk1";
157+
158+
interrupt-parent = <&gpio0>;
159+
interrupts = <56 8>;
160+
161+
#sound-dai-cells = <1>;
162+
163+
cirrus,in-type = <
164+
CS48L32_IN_TYPE_DIFF CS48L32_IN_TYPE_DIFF
165+
CS48L32_IN_TYPE_SE CS48L32_IN_TYPE_SE
166+
>;
167+
168+
cirrus,pdm-sup = <
169+
CS48L32_PDM_SUP_MICBIAS1 CS48L32_PDM_SUP_MICBIAS1
170+
>;
171+
};
172+
};
173+
174+
#
175+
# Minimal config
176+
#
177+
- |
178+
#include <dt-bindings/sound/cs48l32.h>
179+
180+
spi@e0006000 {
181+
#address-cells = <1>;
182+
#size-cells = <0>;
183+
reg = <0xe0006000 0x1000>;
184+
185+
codec@1 {
186+
compatible = "cirrus,cs48l32";
187+
188+
reg = <0x1>;
189+
190+
vdd-a-supply = <&regulator_1v8>;
191+
vdd-d-supply = <&regulator_1v2>;
192+
vdd-io-supply = <&regulator_1v8>;
193+
vdd-cp-supply = <&regulator_1v8>;
194+
};
195+
};
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/everest,es8375.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Everest ES8375 audio CODEC
8+
9+
maintainers:
10+
- Michael Zhang <zhangyi@everest-semi.com>
11+
12+
allOf:
13+
- $ref: dai-common.yaml#
14+
15+
properties:
16+
compatible:
17+
const: everest,es8375
18+
19+
reg:
20+
maxItems: 1
21+
22+
clocks:
23+
items:
24+
- description: clock for master clock (MCLK)
25+
26+
clock-names:
27+
items:
28+
- const: mclk
29+
30+
vdda-supply:
31+
description:
32+
Analogue power supply.
33+
34+
vddd-supply:
35+
description:
36+
Interface power supply.
37+
38+
everest,mclk-src:
39+
$ref: /schemas/types.yaml#/definitions/uint8
40+
description: |
41+
Represents the MCLK/SCLK pair pins used as the internal clock.
42+
0 represents selecting MCLK.
43+
1 represents selecting SCLK.
44+
enum: [0, 1]
45+
default: 0
46+
47+
"#sound-dai-cells":
48+
const: 0
49+
50+
required:
51+
- compatible
52+
- reg
53+
- "#sound-dai-cells"
54+
- vdda-supply
55+
- vddd-supply
56+
57+
additionalProperties: false
58+
59+
examples:
60+
- |
61+
i2c {
62+
#address-cells = <1>;
63+
#size-cells = <0>;
64+
es8375: codec@18 {
65+
compatible = "everest,es8375";
66+
reg = <0x18>;
67+
vdda-supply = <&vdd3v3>;
68+
vddd-supply = <&vdd3v3>;
69+
#sound-dai-cells = <0>;
70+
};
71+
};
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/everest,es8389.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Everest ES8389 audio CODEC
8+
9+
maintainers:
10+
- Michael Zhang <zhangyi@everest-semi.com>
11+
12+
allOf:
13+
- $ref: dai-common.yaml#
14+
15+
properties:
16+
compatible:
17+
const: everest,es8389
18+
19+
reg:
20+
maxItems: 1
21+
22+
clocks:
23+
items:
24+
- description: clock for master clock (MCLK)
25+
26+
clock-names:
27+
items:
28+
- const: mclk
29+
30+
"#sound-dai-cells":
31+
const: 0
32+
33+
required:
34+
- compatible
35+
- reg
36+
- "#sound-dai-cells"
37+
38+
additionalProperties: false
39+
40+
examples:
41+
- |
42+
i2c {
43+
#address-cells = <1>;
44+
#size-cells = <0>;
45+
es8389: codec@10 {
46+
compatible = "everest,es8389";
47+
reg = <0x10>;
48+
#sound-dai-cells = <0>;
49+
};
50+
};

Documentation/devicetree/bindings/sound/fsl,mqs.yaml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ properties:
2828
- fsl,imx95-aonmix-mqs
2929
- fsl,imx95-netcmix-mqs
3030

31+
"#sound-dai-cells":
32+
const: 0
33+
3134
clocks:
3235
minItems: 1
3336
maxItems: 2
@@ -49,12 +52,17 @@ properties:
4952
resets:
5053
maxItems: 1
5154

55+
port:
56+
$ref: audio-graph-port.yaml#
57+
unevaluatedProperties: false
58+
5259
required:
5360
- compatible
5461
- clocks
5562
- clock-names
5663

5764
allOf:
65+
- $ref: dai-common.yaml#
5866
- if:
5967
properties:
6068
compatible:
@@ -86,7 +94,7 @@ allOf:
8694
required:
8795
- gpr
8896

89-
additionalProperties: false
97+
unevaluatedProperties: false
9098

9199
examples:
92100
- |

0 commit comments

Comments
 (0)