Skip to content

Commit e02d37b

Browse files
committed
Merge tag 'sound-4.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound updates from Takashi Iwai: "This became a large update. The changes are scattered widely, and the majority of them are attributed to ASoC componentization. The gitk output made me dizzy, but it's slightly better than London tube. OK, below are some highlights: - Continued hardening works in ALSA PCM core; most of the existing syzkaller reports should have been covered. - USB-audio got the initial USB Audio Class 3 support, as well as UAC2 jack detection support and more DSD-device support. - ASoC componentization: finally each individual driver was converted to components framework, which is more future-proof for further works. Most of conversations were systematic. - Lots of fixes for Intel Baytrail / Cherrytrail devices with Realtek codecs, typically tablets and small PCs. - Fixes / cleanups for Samsung Odroid systems - Cleanups in Freescale SSI driver - New ASoC drivers: * AKM AK4458 and AK5558 codecs * A few AMD based machine drivers * Intel Kabylake machine drivers * Maxim MAX9759 codec * Motorola CPCAP codec * Socionext Uniphier SoCs * TI PCM1789 and TDA7419 codecs - Retirement of Blackfin drivers along with architecture removal" * tag 'sound-4.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (497 commits) ALSA: pcm: Fix UAF at PCM release via PCM timer access ALSA: usb-audio: silence a static checker warning ASoC: tscs42xx: Remove owner assignment from i2c_driver ASoC: mediatek: remove "simple-mfd" in the example ASoC: cpcap: replace codec to component ASoC: Intel: bytcr_rt5651: don't use codec anymore ASoC: amd: don't use codec anymore ALSA: usb-audio: fix memory leak on cval ALSA: pcm: Fix mutex unbalance in OSS emulation ioctls ASoC: topology: Fix kcontrol name string handling ALSA: aloop: Mark paused device as inactive ALSA: usb-audio: update clock valid control ALSA: usb-audio: UAC2 jack detection ALSA: pcm: Return -EBUSY for OSS ioctls changing busy streams ALSA: pcm: Avoid potential races between OSS ioctls and read/write ALSA: usb-audio: Integrate native DSD support for ITF-USB based DACs. ALSA: usb-audio: FIX native DSD support for TEAC UD-501 DAC ALSA: usb-audio: Add native DSD support for Luxman DA-06 ALSA: usb-audio: fix uac control query argument ASoC: nau8824: recover system clock when device changes ...
2 parents 652ede3 + a820ccb commit e02d37b

File tree

520 files changed

+29431
-23352
lines changed

Some content is hidden

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

520 files changed

+29431
-23352
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
AK4458 audio DAC
2+
3+
This device supports I2C mode.
4+
5+
Required properties:
6+
7+
- compatible : "asahi-kasei,ak4458"
8+
- reg : The I2C address of the device for I2C
9+
10+
Optional properties:
11+
- reset-gpios: A GPIO specifier for the power down & reset pin
12+
- mute-gpios: A GPIO specifier for the soft mute pin
13+
14+
Example:
15+
16+
&i2c {
17+
ak4458: dac@10 {
18+
compatible = "asahi-kasei,ak4458";
19+
reg = <0x10>;
20+
reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>
21+
mute-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>
22+
};
23+
};
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
AK5558 8 channel differential 32-bit delta-sigma ADC
2+
3+
This device supports I2C mode only.
4+
5+
Required properties:
6+
7+
- compatible : "asahi-kasei,ak5558"
8+
- reg : The I2C address of the device.
9+
10+
Optional properties:
11+
12+
- reset-gpios: A GPIO specifier for the power down & reset pin.
13+
14+
Example:
15+
16+
&i2c {
17+
ak5558: adc@10 {
18+
compatible = "asahi-kasei,ak5558";
19+
reg = <0x10>;
20+
reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
21+
};
22+
};

Documentation/devicetree/bindings/sound/da7219.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ Optional properties:
2525
interrupt is to be used to wake system, otherwise "irq" should be used.
2626
- wakeup-source: Flag to indicate this device can wake system (suspend/resume).
2727

28+
- #clock-cells : Should be set to '<0>', only one clock source provided;
29+
- clock-output-names : Name given for DAI clocks output;
30+
2831
- clocks : phandle and clock specifier for codec MCLK.
2932
- clock-names : Clock name string for 'clocks' attribute, should be "mclk".
3033

@@ -83,6 +86,9 @@ Example:
8386
VDDMIC-supply = <&reg_audio>;
8487
VDDIO-supply = <&reg_audio>;
8588

89+
#clock-cells = <0>;
90+
clock-output-names = "dai-clks";
91+
8692
clocks = <&clks 201>;
8793
clock-names = "mclk";
8894

Documentation/devicetree/bindings/sound/dmic.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@ Required properties:
88
Optional properties:
99
- dmicen-gpios: GPIO specifier for dmic to control start and stop
1010
- num-channels: Number of microphones on this DAI
11+
- wakeup-delay-ms: Delay (in ms) after enabling the DMIC
1112

1213
Example node:
1314

1415
dmic_codec: dmic@0 {
1516
compatible = "dmic-codec";
1617
dmicen-gpios = <&gpio4 3 GPIO_ACTIVE_HIGH>;
1718
num-channels = <1>;
19+
wakeup-delay-ms <50>;
1820
};

Documentation/devicetree/bindings/sound/fsl-asoc-card.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ The compatible list for this generic sound card currently:
2828
(compatible with CS4271 and CS4272)
2929

3030
"fsl,imx-audio-wm8962"
31-
(compatible with Documentation/devicetree/bindings/sound/imx-audio-wm8962.txt)
3231

3332
"fsl,imx-audio-sgtl5000"
3433
(compatible with Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt)

Documentation/devicetree/bindings/sound/imx-audio-wm8962.txt

Lines changed: 0 additions & 53 deletions
This file was deleted.

Documentation/devicetree/bindings/sound/max98090.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ Optional properties:
1616

1717
- clock-names: Should be "mclk"
1818

19+
- #sound-dai-cells : should be 0.
20+
1921
- maxim,dmic-freq: Frequency at which to clock DMIC
2022

2123
- maxim,micbias: Micbias voltage applies to the analog mic, valid voltages value are:
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
Maxim MAX9759 Speaker Amplifier
2+
===============================
3+
4+
Required properties:
5+
- compatible : "maxim,max9759"
6+
- shutdown-gpios : the gpio connected to the shutdown pin
7+
- mute-gpios : the gpio connected to the mute pin
8+
- gain-gpios : the 2 gpios connected to the g1 and g2 pins
9+
10+
Example:
11+
12+
max9759: analog-amplifier {
13+
compatible = "maxim,max9759";
14+
shutdown-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
15+
mute-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
16+
gain-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>,
17+
<&gpio3 25 GPIO_ACTIVE_LOW>;
18+
};

Documentation/devicetree/bindings/sound/mt2701-afe-pcm.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ See ../arm/mediatek/mediatek,audsys.txt for details about the parent node.
5353
Example:
5454

5555
audsys: audio-subsystem@11220000 {
56-
compatible = "mediatek,mt2701-audsys", "syscon", "simple-mfd";
56+
compatible = "mediatek,mt2701-audsys", "syscon";
5757
...
5858

5959
afe: audio-controller {
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Texas Instruments pcm1789 DT bindings
2+
3+
PCM1789 is a simple audio codec that can be connected via
4+
I2C or SPI. Currently, only I2C bus is supported.
5+
6+
Required properties:
7+
8+
- compatible: "ti,pcm1789"
9+
10+
Required properties on I2C:
11+
12+
- reg: the I2C address
13+
- reset-gpios: GPIO to control the RESET pin
14+
15+
Examples:
16+
17+
audio-codec@4c {
18+
compatible = "ti,pcm1789";
19+
reg = <0x4c>;
20+
reset-gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
21+
#sound-dai-cells = <0>;
22+
};

Documentation/devicetree/bindings/sound/renesas,rsnd.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,7 @@ Required properties:
351351
- "renesas,rcar_sound-r8a7793" (R-Car M2-N)
352352
- "renesas,rcar_sound-r8a7794" (R-Car E2)
353353
- "renesas,rcar_sound-r8a7795" (R-Car H3)
354+
- "renesas,rcar_sound-r8a7796" (R-Car M3-W)
354355
- reg : Should contain the register physical address.
355356
required register is
356357
SRU/ADG/SSI if generation1

Documentation/devicetree/bindings/sound/rockchip,rk3288-hdmi-analog.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Optionnal properties:
2222
Example:
2323

2424
sound {
25-
compatible = "rockchip,rockchip-audio-es8388";
25+
compatible = "rockchip,rk3288-hdmi-analog";
2626
rockchip,model = "Analog audio output";
2727
rockchip,i2s-controller = <&i2s>;
2828
rockchip,audio-codec = <&es8388>;
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
ROHM BD28623MUV Class D speaker amplifier for digital input
2+
3+
This codec does not have any control buses such as I2C, it detect format and
4+
rate of I2S signal automatically. It has two signals that can be connected
5+
to GPIOs: reset and mute.
6+
7+
Required properties:
8+
- compatible : should be "rohm,bd28623"
9+
- #sound-dai-cells: should be 0.
10+
- VCCA-supply : regulator phandle for the VCCA supply
11+
- VCCP1-supply : regulator phandle for the VCCP1 supply
12+
- VCCP2-supply : regulator phandle for the VCCP2 supply
13+
14+
Optional properties:
15+
- reset-gpios : GPIO specifier for the active low reset line
16+
- mute-gpios : GPIO specifier for the active low mute line
17+
18+
Example:
19+
20+
codec {
21+
compatible = "rohm,bd28623";
22+
#sound-dai-cells = <0>;
23+
24+
VCCA-supply = <&vcc_reg>;
25+
VCCP1-supply = <&vcc_reg>;
26+
VCCP2-supply = <&vcc_reg>;
27+
reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
28+
mute-gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
29+
};

Documentation/devicetree/bindings/sound/rt5651.txt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,23 @@ Optional properties:
1616
- realtek,dmic-en
1717
Boolean. true if dmic is used.
1818

19+
- realtek,jack-detect-source
20+
u32. Valid values:
21+
1: Use JD1_1 pin for jack-detect
22+
2: Use JD1_2 pin for jack-detect
23+
3: Use JD2 pin for jack-detect
24+
25+
- realtek,over-current-threshold-microamp
26+
u32, micbias over-current detection threshold in µA, valid values are
27+
600, 1500 and 2000µA.
28+
29+
- realtek,over-current-scale-factor
30+
u32, micbias over-current detection scale-factor, valid values are:
31+
0: Scale current by 0.5
32+
1: Scale current by 0.75
33+
2: Scale current by 1.0
34+
3: Scale current by 1.5
35+
1936
Pins on the device (for linking into audio routes) for RT5651:
2037

2138
* DMIC L1

Documentation/devicetree/bindings/sound/rt5665.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
RT5665/RT5666/RT5668 audio CODEC
1+
RT5665/RT5666 audio CODEC
22

33
This device supports I2C only.
44

55
Required properties:
66

7-
- compatible : One of "realtek,rt5665", "realtek,rt5666" or "realtek,rt5668".
7+
- compatible : One of "realtek,rt5665", "realtek,rt5666".
88

99
- reg : The I2C address of the device.
1010

Documentation/devicetree/bindings/sound/samsung,odroid.txt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@ Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec
22

33
Required properties:
44

5-
- compatible - "samsung,odroidxu3-audio" - for Odroid XU3 board,
6-
"samsung,odroidxu4-audio" - for Odroid XU4 board
5+
- compatible - "hardkernel,odroid-xu3-audio" - for Odroid XU3 board,
6+
"hardkernel,odroid-xu4-audio" - for Odroid XU4 board (deprecated),
7+
"samsung,odroid-xu3-audio" - for Odroid XU3 board (deprecated),
8+
"samsung,odroid-xu4-audio" - for Odroid XU4 board (deprecated)
79
- model - the user-visible name of this sound complex
810
- clocks - should contain entries matching clock names in the clock-names
911
property
@@ -35,7 +37,7 @@ Required sub-nodes:
3537
Example:
3638

3739
sound {
38-
compatible = "samsung,odroidxu3-audio";
40+
compatible = "hardkernel,odroid-xu3-audio";
3941
model = "Odroid-XU3";
4042
samsung,audio-routing =
4143
"Headphone Jack", "HPL",

Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,13 @@ Required properties:
44

55
- compatible : "samsung,tm2-audio"
66
- model : the user-visible name of this sound complex
7-
- audio-codec : the phandle of the wm5110 audio codec node,
8-
as described in ../mfd/arizona.txt
9-
- i2s-controller : the phandle of the I2S controller
7+
- audio-codec : the first entry should be phandle of the wm5110 audio
8+
codec node, as described in ../mfd/arizona.txt;
9+
the second entry should be phandle of the HDMI
10+
transmitter node
11+
- i2s-controller : the list of phandle and argument tuples pointing to
12+
I2S controllers, the first entry should be I2S0 and
13+
the second one I2S1
1014
- audio-amplifier : the phandle of the MAX98504 amplifier
1115
- samsung,audio-routing : a list of the connections between audio components;
1216
each entry is a pair of strings, the first being the
@@ -22,8 +26,8 @@ Example:
2226

2327
sound {
2428
compatible = "samsung,tm2-audio";
25-
audio-codec = <&wm5110>;
26-
i2s-controller = <&i2s0>;
29+
audio-codec = <&wm5110>, <&hdmi>;
30+
i2s-controller = <&i2s0 0>, <&i2s1 0>;
2731
audio-amplifier = <&max98504>;
2832
mic-bias-gpios = <&gpr3 2 0>;
2933
model = "wm5110";

0 commit comments

Comments
 (0)