Skip to content

Commit 59cd4f4

Browse files
committed
Merge tag 'sound-5.14-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound fixes from Takashi Iwai: "This seems to be a usual bump in the middle, containing lots of pending ASoC fixes: - Yet another PCM mmap regression fix - Fix for ASoC DAPM prefix handling - Various cs42l42 codec fixes - PCM buffer reference fixes in a few ASoC drivers - Fixes for ASoC SOF, AMD, tlv320, WM - HD-audio quirks" * tag 'sound-5.14-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (32 commits) ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC ALSA: pcm: Fix mmap breakage without explicit buffer setup ALSA: hda: Add quirk for ASUS Flow x13 ASoC: cs42l42: Fix mono playback ASoC: cs42l42: Constrain sample rate to prevent illegal SCLK ASoC: cs42l42: Fix LRCLK frame start edge ASoC: cs42l42: PLL must be running when changing MCLK_SRC_SEL ASoC: cs42l42: Remove duplicate control for WNF filter frequency ASoC: cs42l42: Fix inversion of ADC Notch Switch control ASoC: SOF: Intel: hda-ipc: fix reply size checking ASoC: SOF: Intel: Kconfig: fix SoundWire dependencies ASoC: amd: Fix reference to PCM buffer address ASoC: nau8824: Fix open coded prefix handling ASoC: kirkwood: Fix reference to PCM buffer address ASoC: uniphier: Fix reference to PCM buffer address ASoC: xilinx: Fix reference to PCM buffer address ASoC: intel: atom: Fix reference to PCM buffer address ASoC: cs42l42: Fix bclk calculation for mono ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J ASoC: cs42l42: Correct definition of ADC Volume control ...
2 parents 1746f4d + d07149a commit 59cd4f4

27 files changed

Lines changed: 206 additions & 138 deletions

MAINTAINERS

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20017,7 +20017,8 @@ F: Documentation/devicetree/bindings/extcon/wlf,arizona.yaml
2001720017
F: Documentation/devicetree/bindings/mfd/wlf,arizona.yaml
2001820018
F: Documentation/devicetree/bindings/mfd/wm831x.txt
2001920019
F: Documentation/devicetree/bindings/regulator/wlf,arizona.yaml
20020-
F: Documentation/devicetree/bindings/sound/wlf,arizona.yaml
20020+
F: Documentation/devicetree/bindings/sound/wlf,*.yaml
20021+
F: Documentation/devicetree/bindings/sound/wm*
2002120022
F: Documentation/hwmon/wm83??.rst
2002220023
F: arch/arm/mach-s3c/mach-crag6410*
2002320024
F: drivers/clk/clk-wm83*.c

sound/core/pcm_native.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,10 @@ static bool hw_support_mmap(struct snd_pcm_substream *substream)
251251

252252
switch (substream->dma_buffer.dev.type) {
253253
case SNDRV_DMA_TYPE_UNKNOWN:
254-
return false;
254+
/* we can't know the device, so just assume that the driver does
255+
* everything right
256+
*/
257+
return true;
255258
case SNDRV_DMA_TYPE_CONTINUOUS:
256259
case SNDRV_DMA_TYPE_VMALLOC:
257260
return true;

sound/pci/hda/patch_realtek.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8431,6 +8431,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
84318431
SND_PCI_QUIRK(0x103c, 0x87f4, "HP", ALC287_FIXUP_HP_GPIO_LED),
84328432
SND_PCI_QUIRK(0x103c, 0x87f5, "HP", ALC287_FIXUP_HP_GPIO_LED),
84338433
SND_PCI_QUIRK(0x103c, 0x87f7, "HP Spectre x360 14", ALC245_FIXUP_HP_X360_AMP),
8434+
SND_PCI_QUIRK(0x103c, 0x8805, "HP ProBook 650 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
84348435
SND_PCI_QUIRK(0x103c, 0x880d, "HP EliteBook 830 G8 Notebook PC", ALC285_FIXUP_HP_GPIO_LED),
84358436
SND_PCI_QUIRK(0x103c, 0x8846, "HP EliteBook 850 G8 Notebook PC", ALC285_FIXUP_HP_GPIO_LED),
84368437
SND_PCI_QUIRK(0x103c, 0x8847, "HP EliteBook x360 830 G8 Notebook PC", ALC285_FIXUP_HP_GPIO_LED),
@@ -8465,6 +8466,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
84658466
SND_PCI_QUIRK(0x1043, 0x16e3, "ASUS UX50", ALC269_FIXUP_STEREO_DMIC),
84668467
SND_PCI_QUIRK(0x1043, 0x1740, "ASUS UX430UA", ALC295_FIXUP_ASUS_DACS),
84678468
SND_PCI_QUIRK(0x1043, 0x17d1, "ASUS UX431FL", ALC294_FIXUP_ASUS_DUAL_SPK),
8469+
SND_PCI_QUIRK(0x1043, 0x1662, "ASUS GV301QH", ALC294_FIXUP_ASUS_DUAL_SPK),
84688470
SND_PCI_QUIRK(0x1043, 0x1881, "ASUS Zephyrus S/M", ALC294_FIXUP_ASUS_GX502_PINS),
84698471
SND_PCI_QUIRK(0x1043, 0x18b1, "Asus MJ401TA", ALC256_FIXUP_ASUS_HEADSET_MIC),
84708472
SND_PCI_QUIRK(0x1043, 0x18f1, "Asus FX505DT", ALC256_FIXUP_ASUS_HEADSET_MIC),

sound/soc/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ config SND_SOC_COMPRESS
3636

3737
config SND_SOC_TOPOLOGY
3838
bool
39+
select SND_DYNAMIC_MINORS
3940

4041
config SND_SOC_TOPOLOGY_KUNIT_TEST
4142
tristate "KUnit tests for SoC topology"

sound/soc/amd/acp-da7219-max98357a.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -525,6 +525,7 @@ static struct snd_soc_dai_link cz_dai_7219_98357[] = {
525525
| SND_SOC_DAIFMT_CBM_CFM,
526526
.init = cz_da7219_init,
527527
.dpcm_playback = 1,
528+
.stop_dma_first = 1,
528529
.ops = &cz_da7219_play_ops,
529530
SND_SOC_DAILINK_REG(designware1, dlgs, platform),
530531
},
@@ -534,6 +535,7 @@ static struct snd_soc_dai_link cz_dai_7219_98357[] = {
534535
.dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
535536
| SND_SOC_DAIFMT_CBM_CFM,
536537
.dpcm_capture = 1,
538+
.stop_dma_first = 1,
537539
.ops = &cz_da7219_cap_ops,
538540
SND_SOC_DAILINK_REG(designware2, dlgs, platform),
539541
},
@@ -543,6 +545,7 @@ static struct snd_soc_dai_link cz_dai_7219_98357[] = {
543545
.dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
544546
| SND_SOC_DAIFMT_CBM_CFM,
545547
.dpcm_playback = 1,
548+
.stop_dma_first = 1,
546549
.ops = &cz_max_play_ops,
547550
SND_SOC_DAILINK_REG(designware3, mx, platform),
548551
},
@@ -553,6 +556,7 @@ static struct snd_soc_dai_link cz_dai_7219_98357[] = {
553556
.dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
554557
| SND_SOC_DAIFMT_CBM_CFM,
555558
.dpcm_capture = 1,
559+
.stop_dma_first = 1,
556560
.ops = &cz_dmic0_cap_ops,
557561
SND_SOC_DAILINK_REG(designware3, adau, platform),
558562
},
@@ -563,6 +567,7 @@ static struct snd_soc_dai_link cz_dai_7219_98357[] = {
563567
.dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF
564568
| SND_SOC_DAIFMT_CBM_CFM,
565569
.dpcm_capture = 1,
570+
.stop_dma_first = 1,
566571
.ops = &cz_dmic1_cap_ops,
567572
SND_SOC_DAILINK_REG(designware2, adau, platform),
568573
},

sound/soc/amd/acp-pcm-dma.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -969,7 +969,7 @@ static int acp_dma_hw_params(struct snd_soc_component *component,
969969

970970
acp_set_sram_bank_state(rtd->acp_mmio, 0, true);
971971
/* Save for runtime private data */
972-
rtd->dma_addr = substream->dma_buffer.addr;
972+
rtd->dma_addr = runtime->dma_addr;
973973
rtd->order = get_order(size);
974974

975975
/* Fill the page table entries in ACP SRAM */

sound/soc/amd/raven/acp3x-pcm-dma.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ static int acp3x_dma_hw_params(struct snd_soc_component *component,
286286
pr_err("pinfo failed\n");
287287
}
288288
size = params_buffer_bytes(params);
289-
rtd->dma_addr = substream->dma_buffer.addr;
289+
rtd->dma_addr = substream->runtime->dma_addr;
290290
rtd->num_pages = (PAGE_ALIGN(size) >> PAGE_SHIFT);
291291
config_acp3x_dma(rtd, substream->stream);
292292
return 0;

sound/soc/amd/renoir/acp3x-pdm-dma.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ static int acp_pdm_dma_hw_params(struct snd_soc_component *component,
242242
return -EINVAL;
243243
size = params_buffer_bytes(params);
244244
period_bytes = params_period_bytes(params);
245-
rtd->dma_addr = substream->dma_buffer.addr;
245+
rtd->dma_addr = substream->runtime->dma_addr;
246246
rtd->num_pages = (PAGE_ALIGN(size) >> PAGE_SHIFT);
247247
config_acp_dma(rtd, substream->stream);
248248
init_pdm_ring_buffer(MEM_WINDOW_START, size, period_bytes,

sound/soc/amd/renoir/rn-pci-acp3x.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,8 @@ static const struct dev_pm_ops rn_acp_pm = {
382382
.runtime_resume = snd_rn_acp_resume,
383383
.suspend = snd_rn_acp_suspend,
384384
.resume = snd_rn_acp_resume,
385+
.restore = snd_rn_acp_resume,
386+
.poweroff = snd_rn_acp_suspend,
385387
};
386388

387389
static void snd_rn_acp_remove(struct pci_dev *pci)

sound/soc/codecs/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1559,6 +1559,7 @@ config SND_SOC_WCD934X
15591559
config SND_SOC_WCD938X
15601560
depends on SND_SOC_WCD938X_SDW
15611561
tristate
1562+
depends on SOUNDWIRE || !SOUNDWIRE
15621563

15631564
config SND_SOC_WCD938X_SDW
15641565
tristate "WCD9380/WCD9385 Codec - SDW"

0 commit comments

Comments
 (0)