sound fixes for 5.9-rc7
Just a handful small device-specific fixes including a couple of reverts. -----BEGIN PGP SIGNATURE----- iQJCBAABCAAsFiEEIXTw5fNLNI7mMiVaLtJE4w1nLE8FAl9sXvoOHHRpd2FpQHN1 c2UuZGUACgkQLtJE4w1nLE+5Fw/7BrxN4aFbkxO5luXwD0t0Xj1D0bln1DyAzZj6 9Gh5IZplz1+2zkg1re1jxU18VEKfDy/TXFCFVsO+pSCFFHCTh4miyownJUmZrUwd w6vjoyg7XUPmWr48Og+5Xw3uNG6W2ZmkY6Qkw/cy/ywcF0TVBfFsTNnO/jaWewzY Y+aaii8htt4RCvHdxZTbWUs7QVrOsXT3fMJDMkAXT3IAtTIq+IzMDlk5M5KIHOGQ opgITUcm9Ij+To1cgm/HSa+OLsoTyr7sQ49Vi56ooqVCvjFmEVIbFlHd2FQ1iKiH yR2A9v1pmDTBcL7WP7lnpJXUFvJVnTIvTU4bd15hW5WnxjGOLSI3+ABz6bRdAIsy YkF4D/YprC3S44yaAQ8h6r0/Ea7o3UV7CUexLLykoUr+pQ5Hs0h2LlcUVEVx/134 kVku03VMYgNZ5kzJpwc49G+q5pg6Jhc0xs7JiY9+mxFg7RCcsNNXb+IbmaDVA7xs l1DkWUuZxPuQpAk/Nlz0Qs+teiNKVBws+LMjP7JUDKeBzZi3D0sCInZkUefU8SP3 IH0Wcbv6QJZTxXIc0tJdA+ydphcfknjR0YecZLHT5JnO+IIl6h8hQobIHvBggx+5 cO0hJUF+HzDN6kfp5wqSiZvr3j7J/SST2VI4ZzdCDgPCkois1cCv0aS/sRK2zwVg haFUNdE= =PgF0 -----END PGP SIGNATURE----- Merge tag 'sound-5.9-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound Pull sound fixes from Takashi Iwai: "Just a handful small device-specific fixes including a couple of reverts" * tag 'sound-5.9-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: Revert "ALSA: usb-audio: Disable Lenovo P620 Rear line-in volume control" Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO" ALSA: usb-audio: Add delay quirk for H570e USB headsets ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520 ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged ALSA: asihpi: fix iounmap in error handler
This commit is contained in:
Коммит
9ef7dce564
|
@ -343,7 +343,7 @@ int asihpi_adapter_probe(struct pci_dev *pci_dev,
|
|||
struct hpi_message hm;
|
||||
struct hpi_response hr;
|
||||
struct hpi_adapter adapter;
|
||||
struct hpi_pci pci;
|
||||
struct hpi_pci pci = { 0 };
|
||||
|
||||
memset(&adapter, 0, sizeof(adapter));
|
||||
|
||||
|
@ -499,7 +499,7 @@ int asihpi_adapter_probe(struct pci_dev *pci_dev,
|
|||
return 0;
|
||||
|
||||
err:
|
||||
for (idx = 0; idx < HPI_MAX_ADAPTER_MEM_SPACES; idx++) {
|
||||
while (--idx >= 0) {
|
||||
if (pci.ap_mem_base[idx]) {
|
||||
iounmap(pci.ap_mem_base[idx]);
|
||||
pci.ap_mem_base[idx] = NULL;
|
||||
|
|
|
@ -2475,7 +2475,6 @@ static const struct snd_pci_quirk alc882_fixup_tbl[] = {
|
|||
SND_PCI_QUIRK(0x1462, 0x1276, "MSI-GL73", ALC1220_FIXUP_CLEVO_P950),
|
||||
SND_PCI_QUIRK(0x1462, 0x1293, "MSI-GP65", ALC1220_FIXUP_CLEVO_P950),
|
||||
SND_PCI_QUIRK(0x1462, 0x7350, "MSI-7350", ALC889_FIXUP_CD),
|
||||
SND_PCI_QUIRK(0x1462, 0x9c37, "MSI X570-A PRO", ALC1220_FIXUP_CLEVO_P950),
|
||||
SND_PCI_QUIRK(0x1462, 0xda57, "MSI Z270-Gaming", ALC1220_FIXUP_GB_DUAL_CODECS),
|
||||
SND_PCI_QUIRK_VENDOR(0x1462, "MSI", ALC882_FIXUP_GPIO3),
|
||||
SND_PCI_QUIRK(0x147b, 0x107a, "Abit AW9D-MAX", ALC882_FIXUP_ABIT_AW9D_MAX),
|
||||
|
@ -3428,7 +3427,11 @@ static void alc256_shutup(struct hda_codec *codec)
|
|||
|
||||
/* 3k pull low control for Headset jack. */
|
||||
/* NOTE: call this before clearing the pin, otherwise codec stalls */
|
||||
alc_update_coef_idx(codec, 0x46, 0, 3 << 12);
|
||||
/* If disable 3k pulldown control for alc257, the Mic detection will not work correctly
|
||||
* when booting with headset plugged. So skip setting it for the codec alc257
|
||||
*/
|
||||
if (codec->core.vendor_id != 0x10ec0257)
|
||||
alc_update_coef_idx(codec, 0x46, 0, 3 << 12);
|
||||
|
||||
if (!spec->no_shutup_pins)
|
||||
snd_hda_codec_write(codec, hp_pin, 0,
|
||||
|
@ -6051,6 +6054,7 @@ static void alc_fixup_thinkpad_acpi(struct hda_codec *codec,
|
|||
#include "hp_x360_helper.c"
|
||||
|
||||
enum {
|
||||
ALC269_FIXUP_GPIO2,
|
||||
ALC269_FIXUP_SONY_VAIO,
|
||||
ALC275_FIXUP_SONY_VAIO_GPIO2,
|
||||
ALC269_FIXUP_DELL_M101Z,
|
||||
|
@ -6232,6 +6236,10 @@ enum {
|
|||
};
|
||||
|
||||
static const struct hda_fixup alc269_fixups[] = {
|
||||
[ALC269_FIXUP_GPIO2] = {
|
||||
.type = HDA_FIXUP_FUNC,
|
||||
.v.func = alc_fixup_gpio2,
|
||||
},
|
||||
[ALC269_FIXUP_SONY_VAIO] = {
|
||||
.type = HDA_FIXUP_PINCTLS,
|
||||
.v.pins = (const struct hda_pintbl[]) {
|
||||
|
@ -7051,6 +7059,8 @@ static const struct hda_fixup alc269_fixups[] = {
|
|||
[ALC233_FIXUP_LENOVO_MULTI_CODECS] = {
|
||||
.type = HDA_FIXUP_FUNC,
|
||||
.v.func = alc233_alc662_fixup_lenovo_dual_codecs,
|
||||
.chained = true,
|
||||
.chain_id = ALC269_FIXUP_GPIO2
|
||||
},
|
||||
[ALC233_FIXUP_ACER_HEADSET_MIC] = {
|
||||
.type = HDA_FIXUP_VERBS,
|
||||
|
|
|
@ -371,7 +371,6 @@ static const struct usbmix_name_map asus_rog_map[] = {
|
|||
};
|
||||
|
||||
static const struct usbmix_name_map lenovo_p620_rear_map[] = {
|
||||
{ 19, NULL, 2 }, /* FU, Volume */
|
||||
{ 19, NULL, 12 }, /* FU, Input Gain Pad */
|
||||
{}
|
||||
};
|
||||
|
|
|
@ -1678,12 +1678,13 @@ void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe,
|
|||
&& (requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS)
|
||||
msleep(20);
|
||||
|
||||
/* Zoom R16/24, Logitech H650e, Jabra 550a, Kingston HyperX needs a tiny
|
||||
* delay here, otherwise requests like get/set frequency return as
|
||||
* failed despite actually succeeding.
|
||||
/* Zoom R16/24, Logitech H650e/H570e, Jabra 550a, Kingston HyperX
|
||||
* needs a tiny delay here, otherwise requests like get/set
|
||||
* frequency return as failed despite actually succeeding.
|
||||
*/
|
||||
if ((chip->usb_id == USB_ID(0x1686, 0x00dd) ||
|
||||
chip->usb_id == USB_ID(0x046d, 0x0a46) ||
|
||||
chip->usb_id == USB_ID(0x046d, 0x0a56) ||
|
||||
chip->usb_id == USB_ID(0x0b0e, 0x0349) ||
|
||||
chip->usb_id == USB_ID(0x0951, 0x16ad)) &&
|
||||
(requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS)
|
||||
|
|
Загрузка…
Ссылка в новой задаче