Skip to content

Commit d6048fd

Browse files
committed
ASoC: Updates for v6.5 A fairly quiet release from a core and framework point of view, but a very big one from the point of view of new drivers: - More refectoring from Morimoto-san, this time mainly around DAI links and how we control the ordering of trigger() callbacks. - Convert a lot of drivers to use maple tree based caches. - Lots of work on the x86 driver stack. - Compressed audio support for Qualcomm. - Support for AMD SoundWire, Analog Devices SSM3515, Google Chameleon, Ingenic X1000, Intel systems with various CODECs, Longsoon platforms, Maxim MAX98388, Mediatek MT8188, Nuvoton NAU8825C, NXP platforms with NAU8822, Qualcomm WSA884x, StarFive JH7110, Texas Instruments TAS2781.
2 parents a15b513 + 2d0cad0 commit d6048fd

903 files changed

Lines changed: 25251 additions & 5689 deletions

File tree

Some content is hidden

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

.mailmap

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,11 @@ Nicolas Pitre <nico@fluxnic.net> <nico@linaro.org>
364364
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.de>
365365
Nicolas Saenz Julienne <nsaenz@kernel.org> <nsaenzjulienne@suse.com>
366366
Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
367+
Nikolay Aleksandrov <razor@blackwall.org> <naleksan@redhat.com>
368+
Nikolay Aleksandrov <razor@blackwall.org> <nikolay@redhat.com>
369+
Nikolay Aleksandrov <razor@blackwall.org> <nikolay@cumulusnetworks.com>
370+
Nikolay Aleksandrov <razor@blackwall.org> <nikolay@nvidia.com>
371+
Nikolay Aleksandrov <razor@blackwall.org> <nikolay@isovalent.com>
367372
Oleksandr Natalenko <oleksandr@natalenko.name> <oleksandr@redhat.com>
368373
Oleksij Rempel <linux@rempel-privat.de> <bug-track@fisher-privat.net>
369374
Oleksij Rempel <linux@rempel-privat.de> <external.Oleksij.Rempel@de.bosch.com>

CREDITS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1706,6 +1706,10 @@ S: Panoramastrasse 18
17061706
S: D-69126 Heidelberg
17071707
S: Germany
17081708

1709+
N: Neil Horman
1710+
M: nhorman@tuxdriver.com
1711+
D: SCTP protocol maintainer.
1712+
17091713
N: Simon Horman
17101714
M: horms@verge.net.au
17111715
D: Renesas ARM/ARM64 SoC maintainer

Documentation/admin-guide/quickly-build-trimmed-linux.rst

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -215,12 +215,14 @@ again.
215215
reduce the compile time enormously, especially if you are running an
216216
universal kernel from a commodity Linux distribution.
217217

218-
There is a catch: the make target 'localmodconfig' will disable kernel
219-
features you have not directly or indirectly through some program utilized
220-
since you booted the system. You can reduce or nearly eliminate that risk by
221-
using tricks outlined in the reference section; for quick testing purposes
222-
that risk is often negligible, but it is an aspect you want to keep in mind
223-
in case your kernel behaves oddly.
218+
There is a catch: 'localmodconfig' is likely to disable kernel features you
219+
did not use since you booted your Linux -- like drivers for currently
220+
disconnected peripherals or a virtualization software not haven't used yet.
221+
You can reduce or nearly eliminate that risk with tricks the reference
222+
section outlines; but when building a kernel just for quick testing purposes
223+
it is often negligible if such features are missing. But you should keep that
224+
aspect in mind when using a kernel built with this make target, as it might
225+
be the reason why something you only use occasionally stopped working.
224226

225227
[:ref:`details<configuration>`]
226228

@@ -271,6 +273,9 @@ again.
271273
does nothing at all; in that case you have to manually install your kernel,
272274
as outlined in the reference section.
273275

276+
If you are running a immutable Linux distribution, check its documentation
277+
and the web to find out how to install your own kernel there.
278+
274279
[:ref:`details<install>`]
275280

276281
.. _another_sbs:
@@ -291,29 +296,29 @@ again.
291296
version you care about, as git otherwise might retrieve the entire commit
292297
history::
293298

294-
git fetch --shallow-exclude=v6.1 origin
295-
296-
If you modified the sources (for example by applying a patch), you now need
297-
to discard those modifications; that's because git otherwise will not be able
298-
to switch to the sources of another version due to potential conflicting
299-
changes::
300-
301-
git reset --hard
299+
git fetch --shallow-exclude=v6.0 origin
302300

303-
Now checkout the version you are interested in, as explained above::
301+
Now switch to the version you are interested in -- but be aware the command
302+
used here will discard any modifications you performed, as they would
303+
conflict with the sources you want to checkout::
304304

305-
git checkout --detach origin/master
305+
git checkout --force --detach origin/master
306306

307307
At this point you might want to patch the sources again or set/modify a build
308-
tag, as explained earlier; afterwards adjust the build configuration to the
309-
new codebase and build your next kernel::
308+
tag, as explained earlier. Afterwards adjust the build configuration to the
309+
new codebase using olddefconfig, which will now adjust the configuration file
310+
you prepared earlier using localmodconfig (~/linux/.config) for your next
311+
kernel::
310312

311313
# reminder: if you want to apply patches, do it at this point
312314
# reminder: you might want to update your build tag at this point
313315
make olddefconfig
316+
317+
Now build your kernel::
318+
314319
make -j $(nproc --all)
315320

316-
Install the kernel as outlined above::
321+
Afterwards install the kernel as outlined above::
317322

318323
command -v installkernel && sudo make modules_install install
319324

@@ -584,11 +589,11 @@ versions and individual commits at hand at any time::
584589
curl -L \
585590
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/clone.bundle \
586591
-o linux-stable.git.bundle
587-
git clone clone.bundle ~/linux/
592+
git clone linux-stable.git.bundle ~/linux/
588593
rm linux-stable.git.bundle
589594
cd ~/linux/
590-
git remote set-url origin
591-
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
595+
git remote set-url origin \
596+
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
592597
git fetch origin
593598
git checkout --detach origin/master
594599

Documentation/cdrom/index.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
.. SPDX-License-Identifier: GPL-2.0
22
3-
=====
4-
cdrom
5-
=====
3+
======
4+
CD-ROM
5+
======
66

77
.. toctree::
88
:maxdepth: 1

Documentation/devicetree/bindings/ata/ceva,ahci-1v84.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ properties:
3232
maxItems: 1
3333

3434
iommus:
35-
maxItems: 1
35+
maxItems: 4
3636

3737
power-domains:
3838
maxItems: 1

Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,18 @@ properties:
8282
Indicates if the DSI controller is driving a panel which needs
8383
2 DSI links.
8484
85+
qcom,master-dsi:
86+
type: boolean
87+
description: |
88+
Indicates if the DSI controller is the master DSI controller when
89+
qcom,dual-dsi-mode enabled.
90+
91+
qcom,sync-dual-dsi:
92+
type: boolean
93+
description: |
94+
Indicates if the DSI controller needs to sync the other DSI controller
95+
with MIPI DCS commands when qcom,dual-dsi-mode enabled.
96+
8597
assigned-clocks:
8698
minItems: 2
8799
maxItems: 4

Documentation/devicetree/bindings/net/can/st,stm32-bxcan.yaml

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,22 @@ properties:
2121

2222
st,can-primary:
2323
description:
24-
Primary and secondary mode of the bxCAN peripheral is only relevant
25-
if the chip has two CAN peripherals. In that case they share some
26-
of the required logic.
24+
Primary mode of the bxCAN peripheral is only relevant if the chip has
25+
two CAN peripherals in dual CAN configuration. In that case they share
26+
some of the required logic.
27+
Not to be used if the peripheral is in single CAN configuration.
2728
To avoid misunderstandings, it should be noted that ST documentation
28-
uses the terms master/slave instead of primary/secondary.
29+
uses the terms master instead of primary.
30+
type: boolean
31+
32+
st,can-secondary:
33+
description:
34+
Secondary mode of the bxCAN peripheral is only relevant if the chip
35+
has two CAN peripherals in dual CAN configuration. In that case they
36+
share some of the required logic.
37+
Not to be used if the peripheral is in single CAN configuration.
38+
To avoid misunderstandings, it should be noted that ST documentation
39+
uses the terms slave instead of secondary.
2940
type: boolean
3041

3142
reg:
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/adi,max98388.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Analog Devices MAX98388 Speaker Amplifier
8+
9+
maintainers:
10+
- Ryan Lee <ryans.lee@analog.com>
11+
12+
description:
13+
The MAX98388 is a mono Class-D speaker amplifier with I/V feedback.
14+
The device provides a PCM interface for audio data and a standard
15+
I2C interface for control data communication.
16+
17+
allOf:
18+
- $ref: dai-common.yaml#
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- adi,max98388
24+
25+
reg:
26+
maxItems: 1
27+
28+
'#sound-dai-cells':
29+
const: 0
30+
31+
adi,vmon-slot-no:
32+
description: slot number of the voltage feedback monitor
33+
$ref: /schemas/types.yaml#/definitions/uint32
34+
minimum: 0
35+
maximum: 15
36+
default: 0
37+
38+
adi,imon-slot-no:
39+
description: slot number of the current feedback monitor
40+
$ref: /schemas/types.yaml#/definitions/uint32
41+
minimum: 0
42+
maximum: 15
43+
default: 1
44+
45+
adi,interleave-mode:
46+
description:
47+
For cases where a single combined channel for the I/V feedback data
48+
is not sufficient, the device can also be configured to share
49+
a single data output channel on alternating frames.
50+
In this configuration, the current and voltage data will be frame
51+
interleaved on a single output channel.
52+
type: boolean
53+
54+
reset-gpios:
55+
maxItems: 1
56+
57+
required:
58+
- compatible
59+
- reg
60+
- '#sound-dai-cells'
61+
62+
unevaluatedProperties: false
63+
64+
examples:
65+
- |
66+
#include <dt-bindings/gpio/gpio.h>
67+
i2c {
68+
#address-cells = <1>;
69+
#size-cells = <0>;
70+
max98388: amplifier@39 {
71+
compatible = "adi,max98388";
72+
reg = <0x39>;
73+
#sound-dai-cells = <0>;
74+
adi,vmon-slot-no = <0>;
75+
adi,imon-slot-no = <1>;
76+
adi,interleave-mode;
77+
reset-gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
78+
};
79+
};
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/adi,ssm2518.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Analog Devices SSM2518 audio amplifier
8+
9+
maintainers:
10+
- Lars-Peter Clausen <lars@metafoo.de>
11+
12+
allOf:
13+
- $ref: dai-common.yaml#
14+
15+
properties:
16+
compatible:
17+
const: adi,ssm2518
18+
19+
reg:
20+
maxItems: 1
21+
description: |
22+
I2C address of the device. This will either be 0x34 (ADDR pin low)
23+
or 0x35 (ADDR pin high)
24+
25+
gpios:
26+
maxItems: 1
27+
description: |
28+
GPIO connected to the nSD pin. If the property is not present
29+
it is assumed that the nSD pin is hardwired to always on.
30+
31+
required:
32+
- compatible
33+
- reg
34+
35+
unevaluatedProperties: false
36+
37+
examples:
38+
- |
39+
i2c {
40+
#address-cells = <1>;
41+
#size-cells = <0>;
42+
codec@34 {
43+
compatible = "adi,ssm2518";
44+
reg = <0x34>;
45+
gpios = <&gpio 5 0>;
46+
};
47+
};
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/adi,ssm3515.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Analog Devices SSM3515 Audio Amplifier
8+
9+
maintainers:
10+
- Martin Povišer <povik+lin@cutebit.org>
11+
12+
description: |
13+
SSM3515 is a mono Class-D audio amplifier with digital input.
14+
15+
https://www.analog.com/media/en/technical-documentation/data-sheets/SSM3515.pdf
16+
17+
allOf:
18+
- $ref: dai-common.yaml#
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- adi,ssm3515
24+
25+
reg:
26+
maxItems: 1
27+
28+
'#sound-dai-cells':
29+
const: 0
30+
31+
required:
32+
- compatible
33+
- reg
34+
35+
unevaluatedProperties: false
36+
37+
examples:
38+
- |
39+
i2c {
40+
#address-cells = <1>;
41+
#size-cells = <0>;
42+
43+
codec@14 {
44+
compatible = "adi,ssm3515";
45+
reg = <0x14>;
46+
#sound-dai-cells = <0>;
47+
sound-name-prefix = "Left Tweeter";
48+
};
49+
};

0 commit comments

Comments
 (0)