Changeset 749
- Timestamp:
- Sep 30, 2022, 4:23:13 AM (3 years ago)
- Location:
- GPL/branches/uniaud32-exp/alsa-kernel
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
GPL/branches/uniaud32-exp/alsa-kernel/core/init.c
r737 r749 183 183 184 184 err = snd_card_init(card, parent, idx, xid, module, extra_size); 185 if (err < 0) { 186 kfree(card); 187 return err; 188 } 185 if (err < 0) 186 return err; /* card is freed by error handler */ 189 187 190 188 *card_ret = card; … … 236 234 err = snd_card_init(card, parent, idx, xid, module, extra_size); 237 235 if (err < 0) { 238 devres_free(card); 236 devres_free(card); /* in managed mode, we need to free manually */ 239 237 return err; 240 238 } … … 298 296 dev_err(parent, "cannot find the slot for index %d (range 0-%i), error: %d\n", 299 297 idx, snd_ecards_limit - 1, err); 298 if (!card->managed) 299 kfree(card); /* manually free here, as no destructor called */ 300 300 return err; 301 301 } -
GPL/branches/uniaud32-exp/alsa-kernel/include/sound/version.h
r739 r749 1 1 /* include/version.h */ 2 #define CONFIG_SND_VERSION "5.19. 9"2 #define CONFIG_SND_VERSION "5.19.12" 3 3 #define CONFIG_SND_DATE "" -
GPL/branches/uniaud32-exp/alsa-kernel/pci/hda/hda_bind.c
r737 r749 160 160 } 161 161 162 refcount_dec(&codec->pcm_ref);163 162 snd_hda_codec_disconnect_pcms(codec); 164 163 snd_hda_jack_tbl_disconnect(codec); 165 wait_event(codec->remove_sleep, !refcount_read(&codec->pcm_ref)); 164 if (!refcount_dec_and_test(&codec->pcm_ref)) 165 wait_event(codec->remove_sleep, !refcount_read(&codec->pcm_ref)); 166 166 snd_power_sync_ref(codec->bus->card); 167 167 -
GPL/branches/uniaud32-exp/alsa-kernel/pci/hda/hda_intel.c
r744 r749 2601 2601 /* 5 Series/3400 */ 2602 2602 { PCI_DEVICE(0x8086, 0x3b56), 2603 .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH_NOPM }, 2604 { PCI_DEVICE(0x8086, 0x3b57), 2603 2605 .driver_data = AZX_DRIVER_SCH | AZX_DCAPS_INTEL_PCH_NOPM }, 2604 2606 /* Poulsbo */ -
GPL/branches/uniaud32-exp/alsa-kernel/pci/hda/patch_ca0132.c
r731 r749 6672 6672 }; 6673 6673 knew.name = namestr; 6674 knew.private_value = ((nid) | ((1)<<16) | ((type)<<18) | ((0)<<19) | ((0)<<23)) | 0;6674 knew.private_value = HDA_COMPOSE_AMP_VAL(nid, 1, 0, type) | 0; 6675 6675 #endif 6676 6676 sprintf(namestr, "FX: %s %s Volume", pfx, dirstr[dir]); -
GPL/branches/uniaud32-exp/alsa-kernel/pci/hda/patch_hdmi.c
r738 r749 183 183 /* hdmi interrupt trigger control flag for Nvidia codec */ 184 184 bool hdmi_intr_trig_ctrl; 185 bool nv_dp_workaround; /* workaround DP audio infoframe for Nvidia */ 186 185 187 bool intel_hsw_fixup; /* apply Intel platform-specific fixups */ 186 188 /* … … 692 694 int conn_type) 693 695 { 696 struct hdmi_spec *spec = codec->spec; 694 697 union audio_infoframe ai; 695 698 696 699 memset(&ai, 0, sizeof(ai)); 697 if (conn_type == 0) { /* HDMI */ 700 if ((conn_type == 0) || /* HDMI */ 701 /* Nvidia DisplayPort: Nvidia HW expects same layout as HDMI */ 702 (conn_type == 1 && spec->nv_dp_workaround)) { 698 703 struct hdmi_audio_infoframe *hdmi_ai = &ai.hdmi; 699 704 700 hdmi_ai->type = 0x84; 701 hdmi_ai->ver = 0x01; 702 hdmi_ai->len = 0x0a; 705 if (conn_type == 0) { /* HDMI */ 706 hdmi_ai->type = 0x84; 707 hdmi_ai->ver = 0x01; 708 hdmi_ai->len = 0x0a; 709 } else {/* Nvidia DP */ 710 hdmi_ai->type = 0x84; 711 hdmi_ai->ver = 0x1b; 712 hdmi_ai->len = 0x11 << 2; 713 } 703 714 hdmi_ai->CC02_CT47 = active_channels - 1; 704 715 hdmi_ai->CA = ca; … … 3634 3645 spec->pcm_playback.maxbps = SUPPORTED_MAXBPS; 3635 3646 spec->pcm_playback.formats = SUPPORTED_FORMATS; 3647 spec->nv_dp_workaround = true; 3636 3648 return 0; 3637 3649 } … … 3773 3785 nvhdmi_chmap_cea_alloc_validate_get_type; 3774 3786 spec->chmap.ops.chmap_validate = nvhdmi_chmap_validate; 3787 spec->nv_dp_workaround = true; 3775 3788 3776 3789 codec->link_down_at_suspend = 1; … … 3796 3809 nvhdmi_chmap_cea_alloc_validate_get_type; 3797 3810 spec->chmap.ops.chmap_validate = nvhdmi_chmap_validate; 3811 spec->nv_dp_workaround = true; 3798 3812 3799 3813 codec->link_down_at_suspend = 1; … … 4001 4015 generic_hdmi_init_per_pins(codec); 4002 4016 4017 codec->depop_delay = 10; 4003 4018 codec->patch_ops.build_pcms = tegra_hdmi_build_pcms; 4004 4019 spec->chmap.ops.chmap_cea_alloc_validate_get_type = … … 4009 4024 nvhdmi_chmap_cea_alloc_validate_get_type; 4010 4025 spec->chmap.ops.chmap_validate = nvhdmi_chmap_validate; 4026 spec->nv_dp_workaround = true; 4011 4027 4012 4028 return 0; -
GPL/branches/uniaud32-exp/alsa-kernel/pci/hda/patch_realtek.c
r743 r749 7739 7739 ALC294_FIXUP_ASUS_GU502_PINS, 7740 7740 ALC294_FIXUP_ASUS_GU502_VERBS, 7741 ALC294_FIXUP_ASUS_G513_PINS, 7742 ALC285_FIXUP_ASUS_G533Z_PINS, 7741 7743 ALC285_FIXUP_HP_GPIO_LED, 7742 7744 ALC285_FIXUP_HP_MUTE_LED, … … 9400 9402 .type = HDA_FIXUP_FUNC, 9401 9403 .v.func = alc294_fixup_gu502_hp, 9404 }, 9405 [ALC294_FIXUP_ASUS_G513_PINS] = { 9406 .type = HDA_FIXUP_PINS, 9407 .v.pins = (const struct hda_pintbl[]) { 9408 { 0x19, 0x03a11050 }, /* front HP mic */ 9409 { 0x1a, 0x03a11c30 }, /* rear external mic */ 9410 { 0x21, 0x03211420 }, /* front HP out */ 9411 { } 9412 }, 9413 }, 9414 [ALC285_FIXUP_ASUS_G533Z_PINS] = { 9415 .type = HDA_FIXUP_PINS, 9416 .v.pins = (const struct hda_pintbl[]) { 9417 { 0x14, 0x90170120 }, 9418 { } 9419 }, 9420 .chained = true, 9421 .chain_id = ALC294_FIXUP_ASUS_G513_PINS, 9402 9422 }, 9403 9423 [ALC294_FIXUP_ASUS_COEF_1B] = { … … 10141 10161 SND_PCI_QUIRK(0x1028, 0x0872, "Dell Precision 3630", ALC255_FIXUP_DELL_HEADSET_MIC), 10142 10162 SND_PCI_QUIRK(0x1028, 0x0873, "Dell Precision 3930", ALC255_FIXUP_DUMMY_LINEOUT_VERB), 10163 SND_PCI_QUIRK(0x1028, 0x087d, "Dell Precision 5530", ALC289_FIXUP_DUAL_SPK), 10143 10164 SND_PCI_QUIRK(0x1028, 0x08ad, "Dell WYSE AIO", ALC225_FIXUP_DELL_WYSE_AIO_MIC_NO_PRESENCE), 10144 10165 SND_PCI_QUIRK(0x1028, 0x08ae, "Dell WYSE NB", ALC225_FIXUP_DELL1_MIC_NO_PRESENCE), … … 10157 10178 SND_PCI_QUIRK(0x1028, 0x0a9e, "Dell Latitude 5430", ALC269_FIXUP_DELL4_MIC_NO_PRESENCE), 10158 10179 SND_PCI_QUIRK(0x1028, 0x0b19, "Dell XPS 15 9520", ALC289_FIXUP_DUAL_SPK), 10180 SND_PCI_QUIRK(0x1028, 0x0b1a, "Dell Precision 5570", ALC289_FIXUP_DUAL_SPK), 10159 10181 SND_PCI_QUIRK(0x1028, 0x164a, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), 10160 10182 SND_PCI_QUIRK(0x1028, 0x164b, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE), … … 10284 10306 SND_PCI_QUIRK(0x103c, 0x8898, "HP EliteBook 845 G8 Notebook PC", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST), 10285 10307 SND_PCI_QUIRK(0x103c, 0x88d0, "HP Pavilion 15-eh1xxx (mainboard 88D0)", ALC287_FIXUP_HP_GPIO_LED), 10308 SND_PCI_QUIRK(0x103c, 0x8902, "HP OMEN 16", ALC285_FIXUP_HP_MUTE_LED), 10286 10309 SND_PCI_QUIRK(0x103c, 0x896e, "HP EliteBook x360 830 G9", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), 10287 10310 SND_PCI_QUIRK(0x103c, 0x8971, "HP EliteBook 830 G9", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), … … 10331 10354 SND_PCI_QUIRK(0x1043, 0x1427, "Asus Zenbook UX31E", ALC269VB_FIXUP_ASUS_ZENBOOK), 10332 10355 SND_PCI_QUIRK(0x1043, 0x1517, "Asus Zenbook UX31A", ALC269VB_FIXUP_ASUS_ZENBOOK_UX31A), 10356 SND_PCI_QUIRK(0x1043, 0x1662, "ASUS GV301QH", ALC294_FIXUP_ASUS_DUAL_SPK), 10357 SND_PCI_QUIRK(0x1043, 0x16b2, "ASUS GU603", ALC289_FIXUP_ASUS_GA401), 10333 10358 SND_PCI_QUIRK(0x1043, 0x16e3, "ASUS UX50", ALC269_FIXUP_STEREO_DMIC), 10334 10359 SND_PCI_QUIRK(0x1043, 0x1740, "ASUS UX430UA", ALC295_FIXUP_ASUS_DACS), 10335 10360 SND_PCI_QUIRK(0x1043, 0x17d1, "ASUS UX431FL", ALC294_FIXUP_ASUS_DUAL_SPK), 10336 SND_PCI_QUIRK(0x1043, 0x1662, "ASUS GV301QH", ALC294_FIXUP_ASUS_DUAL_SPK),10337 10361 SND_PCI_QUIRK(0x1043, 0x1881, "ASUS Zephyrus S/M", ALC294_FIXUP_ASUS_GX502_PINS), 10338 10362 SND_PCI_QUIRK(0x1043, 0x18b1, "Asus MJ401TA", ALC256_FIXUP_ASUS_HEADSET_MIC), … … 10350 10374 SND_PCI_QUIRK(0x1043, 0x1bbd, "ASUS Z550MA", ALC255_FIXUP_ASUS_MIC_NO_PRESENCE), 10351 10375 SND_PCI_QUIRK(0x1043, 0x1c23, "Asus X55U", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), 10376 SND_PCI_QUIRK(0x1043, 0x1c92, "ASUS ROG Strix G15", ALC285_FIXUP_ASUS_G533Z_PINS), 10352 10377 SND_PCI_QUIRK(0x1043, 0x1ccd, "ASUS X555UB", ALC256_FIXUP_ASUS_MIC), 10378 SND_PCI_QUIRK(0x1043, 0x1d42, "ASUS Zephyrus G14 2022", ALC289_FIXUP_ASUS_GA401), 10353 10379 SND_PCI_QUIRK(0x1043, 0x1d4e, "ASUS TM420", ALC256_FIXUP_ASUS_HPE), 10354 10380 SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502), 10355 10381 SND_PCI_QUIRK(0x1043, 0x1e51, "ASUS Zephyrus M15", ALC294_FIXUP_ASUS_GU502_PINS), 10382 SND_PCI_QUIRK(0x1043, 0x1e5e, "ASUS ROG Strix G513", ALC294_FIXUP_ASUS_G513_PINS), 10356 10383 SND_PCI_QUIRK(0x1043, 0x1e8e, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA401), 10384 SND_PCI_QUIRK(0x1043, 0x1c52, "ASUS Zephyrus G15 2022", ALC289_FIXUP_ASUS_GA401), 10357 10385 SND_PCI_QUIRK(0x1043, 0x1f11, "ASUS Zephyrus G14", ALC289_FIXUP_ASUS_GA401), 10358 SND_PCI_QUIRK(0x1043, 0x1d42, "ASUS Zephyrus G14 2022", ALC289_FIXUP_ASUS_GA401),10359 SND_PCI_QUIRK(0x1043, 0x16b2, "ASUS GU603", ALC289_FIXUP_ASUS_GA401),10360 10386 SND_PCI_QUIRK(0x1043, 0x3030, "ASUS ZN270IE", ALC256_FIXUP_ASUS_AIO_GPIO2), 10361 10387 SND_PCI_QUIRK(0x1043, 0x831a, "ASUS P901", ALC269_FIXUP_STEREO_DMIC), … … 10559 10585 SND_PCI_QUIRK(0x1849, 0x1233, "ASRock NUC Box 1100", ALC233_FIXUP_NO_AUDIO_JACK), 10560 10586 SND_PCI_QUIRK(0x19e5, 0x3204, "Huawei MACH-WX9", ALC256_FIXUP_HUAWEI_MACH_WX9_PINS), 10587 SND_PCI_QUIRK(0x19e5, 0x320f, "Huawei WRT-WX9 ", ALC256_FIXUP_ASUS_MIC_NO_PRESENCE), 10561 10588 SND_PCI_QUIRK(0x1b35, 0x1235, "CZC B20", ALC269_FIXUP_CZC_B20), 10562 10589 SND_PCI_QUIRK(0x1b35, 0x1236, "CZC TMI", ALC269_FIXUP_CZC_TMI), -
GPL/branches/uniaud32-exp/alsa-kernel/pci/hda/patch_sigmatel.c
r710 r749 214 214 /* beep widgets */ 215 215 hda_nid_t anabeep_nid; 216 bool beep_power_on; 216 217 217 218 /* SPDIF-out mux */ … … 4545 4546 return 0; 4546 4547 } 4548 4549 static int stac_check_power_status(struct hda_codec *codec, hda_nid_t nid) 4550 { 4551 #ifdef CONFIG_SND_HDA_INPUT_BEEP 4552 struct sigmatel_spec *spec = codec->spec; 4553 #endif 4554 int ret = snd_hda_gen_check_power_status(codec, nid); 4555 4556 #ifdef CONFIG_SND_HDA_INPUT_BEEP 4557 if (nid == spec->gen.beep_nid && codec->beep) { 4558 if (codec->beep->enabled != spec->beep_power_on) { 4559 spec->beep_power_on = codec->beep->enabled; 4560 if (spec->beep_power_on) 4561 snd_hda_power_up_pm(codec); 4562 else 4563 snd_hda_power_down_pm(codec); 4564 } 4565 ret |= spec->beep_power_on; 4566 } 4567 #endif 4568 return ret; 4569 } 4547 4570 #else 4548 4571 #define stac_suspend NULL … … 4557 4580 #ifdef CONFIG_PM 4558 4581 .suspend = stac_suspend, 4582 .check_power_status = stac_check_power_status, 4559 4583 #endif 4560 4584 };
Note:
See TracChangeset
for help on using the changeset viewer.