forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'sound-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kern…
…el/git/tiwai/sound Pull sound updates from Takashi Iwai: "We've got many code additions at this cycle as a result of quite a few new drivers. Below are highlights: Core stuff: - Fix the long-standing issue with the device registration order; the control device is now registered at last - PCM locking code cleanups for RT kernels - Fixes for possible races in ALSA timer resolution accesses - TLV offset definitions in uapi ASoC: - Many fixes for the topology stuff, including fixes for v4 ABI compatibility - Lots of cleanups / quirks for Intel platforms based on Realtek CODECs - Continued componentization works, removing legacy CODEC stuff - Conversion of OMAP DMA to the new, more standard SDMA-PCM driver - Fixes and updates to Cirrus Logic SoC drivers - New Qualcomm DSP support - New drivers for Analog SSM2305, Atmel I2S controllers, Mediatek MT6351, MT6797 and MT7622, Qualcomm DSPs, Realtek RT1305, RT1306 and RT5668 and TI TSCS454 HD-audio: - Finally better support for some CA0132 boards, allowing Windows firmware - HP Spectre x360 support along with a bulk of COEF stuff - Blacklisting power save default some known boards reported on Fedora USB-audio: - Continued improvements on UAC3 support; now BADD is supported - Fixes / improvements for Dell WD15 dock - Allow DMA coherent pages for PCM buffers for ARCH, MIPS & co Others: - New Xen sound frontend driver support - Cache implementation and other improvements for FireWire DICE - Conversions to octal permissions in allover places" * tag 'sound-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (386 commits) ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it ALSA: usb-audio: remove redundant check on err ASoC: topology: Move skl-tplg-interface.h to uapi ASoC: topology: Move v4 manifest header data structures to uapi ASoC: topology: Improve backwards compatibility with v4 topology files ALSA: pci/hda: Remove unused, broken, header file ASoC: TSCS454: Add Support ASoC: Intel: kbl: Move codec sysclk config to codec_init function ASoC: simple-card: set cpu dai clk in hw_params ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream() ALSA: oxygen: use match_string() helper ASoC: dapm: use match_string() helper ASoC: max98095: use match_string() helper ASoC: max98088: use match_string() helper ASoC: Intel: bytcr_rt5651: Set card long_name based on quirks ASoC: mt6797-mt6351: add hostless phone call path ASoC: mt6797: add Hostless DAI ASoC: mt6797: add PCM interface ASoC: mediatek: export mtk-afe symbols as needed ASoC: codecs: PCM1789: include gpio/consumer.h ...
- Loading branch information
Showing
382 changed files
with
38,503 additions
and
5,431 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -186,6 +186,9 @@ Uwe Kleine-König <[email protected]> | |
Uwe Kleine-König <[email protected]> | ||
Uwe Kleine-König <[email protected]> | ||
Valdis Kletnieks <[email protected]> | ||
Vinod Koul <[email protected]> <[email protected]> | ||
Vinod Koul <[email protected]> <[email protected]> | ||
Vinod Koul <[email protected]> <[email protected]> | ||
Viresh Kumar <[email protected]> <[email protected]> | ||
Viresh Kumar <[email protected]> <[email protected]> | ||
Viresh Kumar <[email protected]> <[email protected]> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
Qualcomm APR (Asynchronous Packet Router) binding | ||
|
||
This binding describes the Qualcomm APR. APR is a IPC protocol for | ||
communication between Application processor and QDSP. APR is mainly | ||
used for audio/voice services on the QDSP. | ||
|
||
- compatible: | ||
Usage: required | ||
Value type: <stringlist> | ||
Definition: must be "qcom,apr-v<VERSION-NUMBER>", example "qcom,apr-v2" | ||
|
||
- reg | ||
Usage: required | ||
Value type: <u32> | ||
Definition: Destination processor ID. | ||
Possible values are : | ||
1 - APR simulator | ||
2 - PC | ||
3 - MODEM | ||
4 - ADSP | ||
5 - APPS | ||
6 - MODEM2 | ||
7 - APPS2 | ||
|
||
= APR SERVICES | ||
Each subnode of the APR node represents service tied to this apr. The name | ||
of the nodes are not important. The properties of these nodes are defined | ||
by the individual bindings for the specific service | ||
- All APR services MUST contain the following property: | ||
|
||
- reg | ||
Usage: required | ||
Value type: <u32> | ||
Definition: APR Service ID | ||
Possible values are : | ||
3 - DSP Core Service | ||
4 - Audio Front End Service. | ||
5 - Voice Stream Manager Service. | ||
6 - Voice processing manager. | ||
7 - Audio Stream Manager Service. | ||
8 - Audio Device Manager Service. | ||
9 - Multimode voice manager. | ||
10 - Core voice stream. | ||
11 - Core voice processor. | ||
12 - Ultrasound stream manager. | ||
13 - Listen stream manager. | ||
|
||
= EXAMPLE | ||
The following example represents a QDSP based sound card on a MSM8996 device | ||
which uses apr as communication between Apps and QDSP. | ||
|
||
apr@4 { | ||
compatible = "qcom,apr-v2"; | ||
reg = <APR_DOMAIN_ADSP>; | ||
|
||
q6core@3 { | ||
compatible = "qcom,q6core"; | ||
reg = <APR_SVC_ADSP_CORE>; | ||
}; | ||
|
||
q6afe@4 { | ||
compatible = "qcom,q6afe"; | ||
reg = <APR_SVC_AFE>; | ||
|
||
dais { | ||
#sound-dai-cells = <1>; | ||
hdmi@1 { | ||
reg = <1>; | ||
}; | ||
}; | ||
}; | ||
|
||
q6asm@7 { | ||
compatible = "qcom,q6asm"; | ||
reg = <APR_SVC_ASM>; | ||
... | ||
}; | ||
|
||
q6adm@8 { | ||
compatible = "qcom,q6adm"; | ||
reg = <APR_SVC_ADM>; | ||
... | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
Analog Devices SSM2305 Speaker Amplifier | ||
======================================== | ||
|
||
Required properties: | ||
- compatible : "adi,ssm2305" | ||
- shutdown-gpios : The gpio connected to the shutdown pin. | ||
The gpio signal is ACTIVE_LOW. | ||
|
||
Example: | ||
|
||
ssm2305: analog-amplifier { | ||
compatible = "adi,ssm2305"; | ||
shutdown-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
* Atmel I2S controller | ||
|
||
Required properties: | ||
- compatible: Should be "atmel,sama5d2-i2s". | ||
- reg: Should be the physical base address of the controller and the | ||
length of memory mapped region. | ||
- interrupts: Should contain the interrupt for the controller. | ||
- dmas: Should be one per channel name listed in the dma-names property, | ||
as described in atmel-dma.txt and dma.txt files. | ||
- dma-names: Two dmas have to be defined, "tx" and "rx". | ||
This IP also supports one shared channel for both rx and tx; | ||
if this mode is used, one "rx-tx" name must be used. | ||
- clocks: Must contain an entry for each entry in clock-names. | ||
Please refer to clock-bindings.txt. | ||
- clock-names: Should be one of each entry matching the clocks phandles list: | ||
- "pclk" (peripheral clock) Required. | ||
- "gclk" (generated clock) Optional (1). | ||
- "aclk" (Audio PLL clock) Optional (1). | ||
- "muxclk" (I2S mux clock) Optional (1). | ||
|
||
Optional properties: | ||
- pinctrl-0: Should specify pin control groups used for this controller. | ||
- princtrl-names: Should contain only one value - "default". | ||
|
||
|
||
(1) : Only the peripheral clock is required. The generated clock, the Audio | ||
PLL clock adn the I2S mux clock are optional and should only be set | ||
together, when Master Mode is required. | ||
|
||
Example: | ||
|
||
i2s@f8050000 { | ||
compatible = "atmel,sama5d2-i2s"; | ||
reg = <0xf8050000 0x300>; | ||
interrupts = <54 IRQ_TYPE_LEVEL_HIGH 7>; | ||
dmas = <&dma0 | ||
(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | | ||
AT91_XDMAC_DT_PERID(31))>, | ||
<&dma0 | ||
(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | | ||
AT91_XDMAC_DT_PERID(32))>; | ||
dma-names = "tx", "rx"; | ||
clocks = <&i2s0_clk>, <&i2s0_gclk>, <&audio_pll_pmc>, <&i2s0muxck>; | ||
clock-names = "pclk", "gclk", "aclk", "muxclk"; | ||
pinctrl-names = "default"; | ||
pinctrl-0 = <&pinctrl_i2s0_default>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
Mediatek MT6351 Audio Codec | ||
|
||
The communication between MT6351 and SoC is through Mediatek PMIC wrapper. | ||
For more detail, please visit Mediatek PMIC wrapper documentation. | ||
|
||
Must be a child node of PMIC wrapper. | ||
|
||
Required properties: | ||
|
||
- compatible : "mediatek,mt6351-sound". | ||
|
||
Example: | ||
|
||
mt6351_snd { | ||
compatible = "mediatek,mt6351-sound"; | ||
}; |
42 changes: 42 additions & 0 deletions
42
Documentation/devicetree/bindings/sound/mt6797-afe-pcm.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
Mediatek AFE PCM controller for mt6797 | ||
|
||
Required properties: | ||
- compatible = "mediatek,mt6797-audio"; | ||
- reg: register location and size | ||
- interrupts: should contain AFE interrupt | ||
- power-domains: should define the power domain | ||
- clocks: Must contain an entry for each entry in clock-names | ||
- clock-names: should have these clock names: | ||
"infra_sys_audio_clk", | ||
"infra_sys_audio_26m", | ||
"mtkaif_26m_clk", | ||
"top_mux_audio", | ||
"top_mux_aud_intbus", | ||
"top_sys_pll3_d4", | ||
"top_sys_pll1_d4", | ||
"top_clk26m_clk"; | ||
|
||
Example: | ||
|
||
afe: mt6797-afe-pcm@11220000 { | ||
compatible = "mediatek,mt6797-audio"; | ||
reg = <0 0x11220000 0 0x1000>; | ||
interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_LOW>; | ||
power-domains = <&scpsys MT6797_POWER_DOMAIN_AUDIO>; | ||
clocks = <&infrasys CLK_INFRA_AUDIO>, | ||
<&infrasys CLK_INFRA_AUDIO_26M>, | ||
<&infrasys CLK_INFRA_AUDIO_26M_PAD_TOP>, | ||
<&topckgen CLK_TOP_MUX_AUDIO>, | ||
<&topckgen CLK_TOP_MUX_AUD_INTBUS>, | ||
<&topckgen CLK_TOP_SYSPLL3_D4>, | ||
<&topckgen CLK_TOP_SYSPLL1_D4>, | ||
<&clk26m>; | ||
clock-names = "infra_sys_audio_clk", | ||
"infra_sys_audio_26m", | ||
"mtkaif_26m_clk", | ||
"top_mux_audio", | ||
"top_mux_aud_intbus", | ||
"top_sys_pll3_d4", | ||
"top_sys_pll1_d4", | ||
"top_clk26m_clk"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
MT6797 with MT6351 CODEC | ||
|
||
Required properties: | ||
- compatible: "mediatek,mt6797-mt6351-sound" | ||
- mediatek,platform: the phandle of MT6797 ASoC platform | ||
- mediatek,audio-codec: the phandles of MT6351 codec | ||
|
||
Example: | ||
|
||
sound { | ||
compatible = "mediatek,mt6797-mt6351-sound"; | ||
mediatek,audio-codec = <&mt6351_snd>; | ||
mediatek,platform = <&afe>; | ||
}; |
Oops, something went wrong.