Merge tag 'sound-5.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound fixes from Takashi Iwai: "Things seem calming down, only usual device-specific fixes for HD-audio and USB-audio at this time" * tag 'sound-5.12-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8 ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks ALSA: hda: Re-add dropped snd_poewr_change_state() calls ALSA: usb-audio: Apply sample rate quirk to Logitech Connect ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
This commit is contained in:
@@ -989,8 +989,12 @@ static int azx_prepare(struct device *dev)
|
|||||||
struct snd_card *card = dev_get_drvdata(dev);
|
struct snd_card *card = dev_get_drvdata(dev);
|
||||||
struct azx *chip;
|
struct azx *chip;
|
||||||
|
|
||||||
|
if (!azx_is_pm_ready(card))
|
||||||
|
return 0;
|
||||||
|
|
||||||
chip = card->private_data;
|
chip = card->private_data;
|
||||||
chip->pm_prepared = 1;
|
chip->pm_prepared = 1;
|
||||||
|
snd_power_change_state(card, SNDRV_CTL_POWER_D3hot);
|
||||||
|
|
||||||
flush_work(&azx_bus(chip)->unsol_work);
|
flush_work(&azx_bus(chip)->unsol_work);
|
||||||
|
|
||||||
@@ -1005,7 +1009,11 @@ static void azx_complete(struct device *dev)
|
|||||||
struct snd_card *card = dev_get_drvdata(dev);
|
struct snd_card *card = dev_get_drvdata(dev);
|
||||||
struct azx *chip;
|
struct azx *chip;
|
||||||
|
|
||||||
|
if (!azx_is_pm_ready(card))
|
||||||
|
return;
|
||||||
|
|
||||||
chip = card->private_data;
|
chip = card->private_data;
|
||||||
|
snd_power_change_state(card, SNDRV_CTL_POWER_D0);
|
||||||
chip->pm_prepared = 0;
|
chip->pm_prepared = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5256,7 +5256,7 @@ static void alc_determine_headset_type(struct hda_codec *codec)
|
|||||||
case 0x10ec0274:
|
case 0x10ec0274:
|
||||||
case 0x10ec0294:
|
case 0x10ec0294:
|
||||||
alc_process_coef_fw(codec, coef0274);
|
alc_process_coef_fw(codec, coef0274);
|
||||||
msleep(80);
|
msleep(850);
|
||||||
val = alc_read_coef_idx(codec, 0x46);
|
val = alc_read_coef_idx(codec, 0x46);
|
||||||
is_ctia = (val & 0x00f0) == 0x00f0;
|
is_ctia = (val & 0x00f0) == 0x00f0;
|
||||||
break;
|
break;
|
||||||
@@ -5440,6 +5440,7 @@ static void alc_update_headset_jack_cb(struct hda_codec *codec,
|
|||||||
struct hda_jack_callback *jack)
|
struct hda_jack_callback *jack)
|
||||||
{
|
{
|
||||||
snd_hda_gen_hp_automute(codec, jack);
|
snd_hda_gen_hp_automute(codec, jack);
|
||||||
|
alc_update_headset_mode(codec);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void alc_probe_headset_mode(struct hda_codec *codec)
|
static void alc_probe_headset_mode(struct hda_codec *codec)
|
||||||
@@ -8057,6 +8058,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
|||||||
ALC285_FIXUP_HP_GPIO_AMP_INIT),
|
ALC285_FIXUP_HP_GPIO_AMP_INIT),
|
||||||
SND_PCI_QUIRK(0x103c, 0x87c8, "HP", ALC287_FIXUP_HP_GPIO_LED),
|
SND_PCI_QUIRK(0x103c, 0x87c8, "HP", ALC287_FIXUP_HP_GPIO_LED),
|
||||||
SND_PCI_QUIRK(0x103c, 0x87e5, "HP ProBook 440 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
|
SND_PCI_QUIRK(0x103c, 0x87e5, "HP ProBook 440 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
|
||||||
|
SND_PCI_QUIRK(0x103c, 0x87f2, "HP ProBook 640 G8 Notebook PC", ALC236_FIXUP_HP_GPIO_LED),
|
||||||
SND_PCI_QUIRK(0x103c, 0x87f4, "HP", ALC287_FIXUP_HP_GPIO_LED),
|
SND_PCI_QUIRK(0x103c, 0x87f4, "HP", ALC287_FIXUP_HP_GPIO_LED),
|
||||||
SND_PCI_QUIRK(0x103c, 0x87f5, "HP", ALC287_FIXUP_HP_GPIO_LED),
|
SND_PCI_QUIRK(0x103c, 0x87f5, "HP", ALC287_FIXUP_HP_GPIO_LED),
|
||||||
SND_PCI_QUIRK(0x103c, 0x87f7, "HP Spectre x360 14", ALC245_FIXUP_HP_X360_AMP),
|
SND_PCI_QUIRK(0x103c, 0x87f7, "HP Spectre x360 14", ALC245_FIXUP_HP_X360_AMP),
|
||||||
|
|||||||
@@ -1521,6 +1521,7 @@ bool snd_usb_get_sample_rate_quirk(struct snd_usb_audio *chip)
|
|||||||
case USB_ID(0x21b4, 0x0081): /* AudioQuest DragonFly */
|
case USB_ID(0x21b4, 0x0081): /* AudioQuest DragonFly */
|
||||||
case USB_ID(0x2912, 0x30c8): /* Audioengine D1 */
|
case USB_ID(0x2912, 0x30c8): /* Audioengine D1 */
|
||||||
case USB_ID(0x413c, 0xa506): /* Dell AE515 sound bar */
|
case USB_ID(0x413c, 0xa506): /* Dell AE515 sound bar */
|
||||||
|
case USB_ID(0x046d, 0x084c): /* Logitech ConferenceCam Connect */
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user