diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-11-18 11:56:47 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-11-18 11:56:47 -0500 |
commit | c1717701be2f0639e5f817385a524131dbd3ff38 (patch) | |
tree | 5cfa7189a4f91bb931efe57fcfdb87a9b2b8a65f /sound | |
parent | bd2bc2b8e63f872f8aa0f3536a40ffce6e1840bb (diff) | |
parent | 6ff1a25318ebf688ef9593fe09cd449f6fb4ad31 (diff) |
Merge tag 'sound-4.9-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound fixes from Takashi Iwai:
"Three trivial fixes:
A regression fix for ASRock mobo, a use-after-free fix at hot-unplug
of USB-audio, and a quirk for new Thinkpad models"
* tag 'sound-4.9-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
ALSA: usb-audio: Fix use-after-free of usb_device at disconnect
ALSA: hda - Fix mic regression by ASRock mobo fixup
ALSA: hda - add a new condition to check if it is thinkpad
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/hda/patch_realtek.c | 2 | ||||
-rw-r--r-- | sound/pci/hda/thinkpad_helper.c | 3 | ||||
-rw-r--r-- | sound/usb/card.c | 3 |
3 files changed, 4 insertions, 4 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 2f909dd8b7b8..ea81c08ddc7a 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -6907,8 +6907,6 @@ static const struct hda_fixup alc662_fixups[] = { | |||
6907 | .v.pins = (const struct hda_pintbl[]) { | 6907 | .v.pins = (const struct hda_pintbl[]) { |
6908 | { 0x15, 0x40f000f0 }, /* disabled */ | 6908 | { 0x15, 0x40f000f0 }, /* disabled */ |
6909 | { 0x16, 0x40f000f0 }, /* disabled */ | 6909 | { 0x16, 0x40f000f0 }, /* disabled */ |
6910 | { 0x18, 0x01014011 }, /* LO */ | ||
6911 | { 0x1a, 0x01014012 }, /* LO */ | ||
6912 | { } | 6910 | { } |
6913 | } | 6911 | } |
6914 | }, | 6912 | }, |
diff --git a/sound/pci/hda/thinkpad_helper.c b/sound/pci/hda/thinkpad_helper.c index 6a23302297c9..4d9d320a7971 100644 --- a/sound/pci/hda/thinkpad_helper.c +++ b/sound/pci/hda/thinkpad_helper.c | |||
@@ -13,7 +13,8 @@ static void (*old_vmaster_hook)(void *, int); | |||
13 | static bool is_thinkpad(struct hda_codec *codec) | 13 | static bool is_thinkpad(struct hda_codec *codec) |
14 | { | 14 | { |
15 | return (codec->core.subsystem_id >> 16 == 0x17aa) && | 15 | return (codec->core.subsystem_id >> 16 == 0x17aa) && |
16 | (acpi_dev_found("LEN0068") || acpi_dev_found("IBM0068")); | 16 | (acpi_dev_found("LEN0068") || acpi_dev_found("LEN0268") || |
17 | acpi_dev_found("IBM0068")); | ||
17 | } | 18 | } |
18 | 19 | ||
19 | static void update_tpacpi_mute_led(void *private_data, int enabled) | 20 | static void update_tpacpi_mute_led(void *private_data, int enabled) |
diff --git a/sound/usb/card.c b/sound/usb/card.c index 9e5276d6dda0..2ddc034673a8 100644 --- a/sound/usb/card.c +++ b/sound/usb/card.c | |||
@@ -315,7 +315,8 @@ static int snd_usb_audio_free(struct snd_usb_audio *chip) | |||
315 | snd_usb_endpoint_free(ep); | 315 | snd_usb_endpoint_free(ep); |
316 | 316 | ||
317 | mutex_destroy(&chip->mutex); | 317 | mutex_destroy(&chip->mutex); |
318 | dev_set_drvdata(&chip->dev->dev, NULL); | 318 | if (!atomic_read(&chip->shutdown)) |
319 | dev_set_drvdata(&chip->dev->dev, NULL); | ||
319 | kfree(chip); | 320 | kfree(chip); |
320 | return 0; | 321 | return 0; |
321 | } | 322 | } |