Commit ced5bf24 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull sound fixes from Takashi Iwai:
 "Hopefully the last bits for 6.5. It's slightly higher LOCs than
  wished, but it doesn't look scary.

  The biggest change is MAINTAINERS update for TI; it's good to have the
  update before the final release, so that people can contact to the
  right persons for bug reports (which shouldn't happen of course!)

  The rest are all device-specific fixes and quirks, most for various
  ASoC platforms"

* tag 'sound-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ
  ALSA: ymfpci: Fix the missing snd_card_free() call at probe error
  ASoC: cs35l41: Correct amp_gain_tlv values
  ASoC: amd: yc: Add VivoBook Pro 15 to quirks list for acp6x
  ASoC: tas2781: fixed register access error when switching to other chips
  ASoC: cs35l56: Add an ACPI match table
  ASoC: cs35l56: Read firmware uuid from a device property instead of _SUB
  ASoC: SOF: ipc4-pcm: fix possible null pointer deference
  MAINTAINERS: Add entries for TEXAS INSTRUMENTS ASoC DRIVERS
parents beaa71d6 37e44d60
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -21062,6 +21062,39 @@ S: Maintained
F:	Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml
F:	sound/soc/ti/
TEXAS INSTRUMENTS AUDIO (ASoC/HDA) DRIVERS
M:	Shenghao Ding <shenghao-ding@ti.com>
M:	Kevin Lu <kevin-lu@ti.com>
M:	Baojun Xu <x1077012@ti.com>
L:	alsa-devel@alsa-project.org (moderated for non-subscribers)
S:	Maintained
F:	Documentation/devicetree/bindings/sound/tas2552.txt
F:	Documentation/devicetree/bindings/sound/tas2562.yaml
F:	Documentation/devicetree/bindings/sound/tas2770.yaml
F:	Documentation/devicetree/bindings/sound/tas27xx.yaml
F:	Documentation/devicetree/bindings/sound/ti,pcm1681.txt
F:	Documentation/devicetree/bindings/sound/ti,pcm3168a.yaml
F:	Documentation/devicetree/bindings/sound/ti,tlv320*.yaml
F:	Documentation/devicetree/bindings/sound/tlv320adcx140.yaml
F:	Documentation/devicetree/bindings/sound/tlv320aic31xx.txt
F:	Documentation/devicetree/bindings/sound/tpa6130a2.txt
F:	include/sound/tas2*.h
F:	include/sound/tlv320*.h
F:	include/sound/tpa6130a2-plat.h
F:	sound/pci/hda/tas2781_hda_i2c.c
F:	sound/soc/codecs/pcm1681.c
F:	sound/soc/codecs/pcm1789*.*
F:	sound/soc/codecs/pcm179x*.*
F:	sound/soc/codecs/pcm186x*.*
F:	sound/soc/codecs/pcm3008.*
F:	sound/soc/codecs/pcm3060*.*
F:	sound/soc/codecs/pcm3168a*.*
F:	sound/soc/codecs/pcm5102a.c
F:	sound/soc/codecs/pcm512x*.*
F:	sound/soc/codecs/tas2*.*
F:	sound/soc/codecs/tlv320*.*
F:	sound/soc/codecs/tpa6130a2.*
TEXAS INSTRUMENTS DMA DRIVERS
M:	Peter Ujfalusi <peter.ujfalusi@gmail.com>
L:	dmaengine@vger.kernel.org
+8 −2
Original line number Diff line number Diff line
@@ -152,7 +152,7 @@ static inline int snd_ymfpci_create_gameport(struct snd_ymfpci *chip, int dev, i
void snd_ymfpci_free_gameport(struct snd_ymfpci *chip) { }
#endif /* SUPPORT_JOYSTICK */

static int snd_card_ymfpci_probe(struct pci_dev *pci,
static int __snd_card_ymfpci_probe(struct pci_dev *pci,
				   const struct pci_device_id *pci_id)
{
	static int dev;
@@ -348,6 +348,12 @@ static int snd_card_ymfpci_probe(struct pci_dev *pci,
	return 0;
}

static int snd_card_ymfpci_probe(struct pci_dev *pci,
				 const struct pci_device_id *pci_id)
{
	return snd_card_free_on_error(&pci->dev, __snd_card_ymfpci_probe(pci, pci_id));
}

static struct pci_driver ymfpci_driver = {
	.name = KBUILD_MODNAME,
	.id_table = snd_ymfpci_ids,
+8 −1
Original line number Diff line number Diff line
@@ -217,7 +217,7 @@ static const struct dmi_system_id yc_acp_quirk_table[] = {
		.driver_data = &acp6x_card,
		.matches = {
			DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
			DMI_MATCH(DMI_PRODUCT_NAME, "82"),
			DMI_MATCH(DMI_PRODUCT_NAME, "82V2"),
		}
	},
	{
@@ -248,6 +248,13 @@ static const struct dmi_system_id yc_acp_quirk_table[] = {
			DMI_MATCH(DMI_PRODUCT_NAME, "M3402RA"),
		}
	},
	{
		.driver_data = &acp6x_card,
		.matches = {
			DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK COMPUTER INC."),
			DMI_MATCH(DMI_PRODUCT_NAME, "M6500RC"),
		}
	},
	{
		.driver_data = &acp6x_card,
		.matches = {
+1 −1
Original line number Diff line number Diff line
@@ -168,7 +168,7 @@ static int cs35l41_get_fs_mon_config_index(int freq)
static const DECLARE_TLV_DB_RANGE(dig_vol_tlv,
		0, 0, TLV_DB_SCALE_ITEM(TLV_DB_GAIN_MUTE, 0, 1),
		1, 913, TLV_DB_MINMAX_ITEM(-10200, 1200));
static DECLARE_TLV_DB_SCALE(amp_gain_tlv, 0, 1, 1);
static DECLARE_TLV_DB_SCALE(amp_gain_tlv, 50, 100, 0);

static const struct snd_kcontrol_new dre_ctrl =
	SOC_DAPM_SINGLE("Switch", CS35L41_PWR_CTRL3, 20, 1, 0);
+9 −0
Original line number Diff line number Diff line
@@ -62,10 +62,19 @@ static const struct i2c_device_id cs35l56_id_i2c[] = {
};
MODULE_DEVICE_TABLE(i2c, cs35l56_id_i2c);

#ifdef CONFIG_ACPI
static const struct acpi_device_id cs35l56_asoc_acpi_match[] = {
	{ "CSC355C", 0 },
	{},
};
MODULE_DEVICE_TABLE(acpi, cs35l56_asoc_acpi_match);
#endif

static struct i2c_driver cs35l56_i2c_driver = {
	.driver = {
		.name		= "cs35l56",
		.pm = &cs35l56_pm_ops_i2c_spi,
		.acpi_match_table = ACPI_PTR(cs35l56_asoc_acpi_match),
	},
	.id_table	= cs35l56_id_i2c,
	.probe		= cs35l56_i2c_probe,
Loading