Lines Matching +full:0 +full:x0543

52 	HDA_CODEC_VOLUME_MONO("Beep Playback Volume", 0, 1, 0, HDA_OUTPUT),
53 HDA_CODEC_MUTE_BEEP_MONO("Beep Playback Switch", 0, 1, 0, HDA_OUTPUT),
64 for (i = 0; i < ARRAY_SIZE(cxt_beep_mixer); i++) {
71 return 0;
81 return set_beep_amp(spec, nid, 0, HDA_OUTPUT);
82 return 0;
85 #define cx_auto_parse_beep(codec) 0
122 for (i = 0; i < num_pins; i++) {
124 snd_hda_codec_write(codec, pins[i], 0,
126 on ? 0x02 : 0);
146 snd_hda_codec_write(codec, spec->mute_led_eapd, 0,
148 brightness ? 0x02 : 0x00);
149 return 0;
158 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_MASK,
160 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DIRECTION,
162 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA,
173 snd_hda_codec_write(codec, 0x1c, 0, 0x320, 0x010);
177 snd_hda_codec_write(codec, 0x1c, 0, 0x3b0, 0xe10);
179 mic_present = snd_hda_codec_read(codec, 0x19, 0, AC_VERB_GET_PIN_SENSE, 0x0);
182 snd_hda_codec_write(codec, 0x19, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24);
185 snd_hda_codec_write(codec, 0x19, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20);
201 return 0;
222 unsigned int count = 0;
226 val = snd_hda_codec_read(codec, 0x1c, 0, 0xca0, 0x0);
227 if (val & 0x080) {
234 val = snd_hda_codec_read(codec, 0x1c, 0, 0xcb0, 0x0);
235 if (val & 0x800) {
237 snd_hda_codec_write(codec, 0x19, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24);
238 } else if (val & 0x400) {
240 snd_hda_codec_write(codec, 0x19, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24);
254 mic_present = snd_hda_codec_read(codec, 0x19, 0, AC_VERB_GET_PIN_SENSE, 0x0);
256 snd_hda_codec_write(codec, 0x19, 0, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20);
264 return 0;
326 snd_hda_set_pin_ctl_cache(codec, 0x1d, AC_PINCTL_HP_EN);
336 snd_hda_override_amp_caps(codec, 0x17, HDA_OUTPUT,
337 (0x3 << AC_AMPCAP_OFFSET_SHIFT) |
338 (0x4 << AC_AMPCAP_NUM_STEPS_SHIFT) |
339 (0x27 << AC_AMPCAP_STEP_SIZE_SHIFT) |
340 (0 << AC_AMPCAP_MUTE_SHIFT));
351 hda_nid_t mux_pin = spec->gen.imux_pins[spec->gen.cur_mux[0]];
353 for (i = 0; i < cfg->num_inputs; i++)
360 snd_hda_codec_write_cache(codec, 0x1c, 0, 0x410, 0x7c); /* enable merged mode for analog int-mic */
363 snd_hda_codec_write_cache(codec, 0x1c, 0, 0x410, 0x54); /* disable merged mode for analog int-mic */
364 spec->gen.hp_jack_present = snd_hda_jack_detect(codec, spec->gen.autocfg.hp_pins[0]);
385 snd_hdac_regmap_add_vendor_verb(&codec->core, 0x410);
415 * external microphones are disabled. Gain is fixed at 0dB. In this mode,
420 snd_hda_codec_write_cache(codec, nid, 0, \
437 for (ch = 0; ch < 2; ch++) {
441 val |= snd_hda_codec_amp_read(codec, 0x17, ch, HDA_OUTPUT, 0);
442 snd_hda_codec_write(codec, 0x17, 0,
453 cur_input = spec->gen.input_paths[0][spec->gen.cur_mux[0]];
460 update_mic_pin(codec, 0x1e, 0);
470 update_mic_pin(codec, 0x1a, spec->recording ?
471 snd_hda_codec_get_pin_target(codec, 0x1a) : 0);
472 update_mic_pin(codec, 0x1b, spec->recording ?
473 snd_hda_codec_get_pin_target(codec, 0x1b) : 0);
492 val = 0;
493 update_mic_pin(codec, 0x1a, val);
494 update_mic_pin(codec, 0x1b, 0);
496 update_mic_pin(codec, 0x1e, spec->recording ? PIN_IN : 0);
532 spec->recording = 0;
543 ucontrol->value.integer.value[0] = spec->dc_enable;
544 return 0;
552 int dc_enable = !!ucontrol->value.integer.value[0];
555 return 0;
568 ucontrol->value.enumerated.item[0] = spec->dc_input_bias;
569 return 0;
586 idx = ucontrol->value.enumerated.item[0];
590 return 0;
625 if (ret > 0 && spec->dc_enable)
642 spec->dc_mode_path = snd_hda_add_new_path(codec, 0x1e, 0x14, 0);
650 snd_hda_codec_set_pin_target(codec, 0x1a, PIN_VREF50);
667 spec->mute_led_eapd = 0x1b;
674 * Fix max input level on mixer widget to 0dB
675 * (originally it has 0x2b steps with 0dB offset 0x14)
680 snd_hda_override_amp_caps(codec, 0x17, HDA_INPUT,
681 (0x14 << AC_AMPCAP_OFFSET_SHIFT) |
682 (0x14 << AC_AMPCAP_NUM_STEPS_SHIFT) |
683 (0x05 << AC_AMPCAP_STEP_SIZE_SHIFT) |
688 * Fix max input level on mixer widget to 0dB
689 * (originally it has 0x1e steps with 0 dB offset 0x17)
694 snd_hda_override_amp_caps(codec, 0x10, HDA_INPUT,
695 (0x17 << AC_AMPCAP_OFFSET_SHIFT) |
696 (0x17 << AC_AMPCAP_NUM_STEPS_SHIFT) |
697 (0x05 << AC_AMPCAP_STEP_SIZE_SHIFT) |
705 /* the mic pin (0x19) doesn't give an unsolicited event;
706 * probe the mic pin together with the headphone pin (0x16)
709 snd_hda_jack_set_gating_jack(codec, 0x19, 0x16);
729 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA,
741 return 0;
752 return 0;
760 spec->gpio_led = 0;
761 spec->mute_led_polarity = 0;
776 // set gpio data to 0.
777 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA, 0);
778 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_MASK, gpio_mute_mask);
779 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DIRECTION, gpio_mute_mask);
780 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_STICKY_MASK, 0);
788 cxt_setup_mute_led(codec, 0x01, 0x02);
795 cxt_setup_mute_led(codec, 0x10, 0x20);
804 cxt_setup_gpio_unmute(codec, 0x2);
809 { 0x16, 0x042140ff }, /* HP (seq# overridden) */
810 { 0x17, 0x21a11000 }, /* dock-mic */
811 { 0x19, 0x2121103f }, /* dock-HP */
812 { 0x1c, 0x21440100 }, /* dock SPDIF out */
818 { 0x19, 0x042110ff }, /* HP (seq# overridden) */
819 { 0x1a, 0x21a190f0 }, /* dock-mic */
820 { 0x1c, 0x212140ff }, /* dock-HP */
826 { 0x1a, 0x90a10020 }, /* Internal mic */
827 { 0x1b, 0x03a11020 }, /* External mic */
828 { 0x1d, 0x400101f0 }, /* Not used */
829 { 0x1e, 0x40a701f0 }, /* Not used */
830 { 0x20, 0x404501f0 }, /* Not used */
831 { 0x22, 0x404401f0 }, /* Not used */
832 { 0x23, 0x40a701f0 }, /* Not used */
838 { 0x16, 0x03211040 }, /* hp out */
839 { 0x17, 0x91170110 }, /* SPK/Class_D */
840 { 0x18, 0x95a70130 }, /* Internal mic */
841 { 0x19, 0x03a11020 }, /* Headset Mic */
842 { 0x1a, 0x40f001f0 }, /* Not used */
843 { 0x21, 0x40f001f0 }, /* Not used */
871 /* 0x17 was falsely set up as a mic, it should 0x1d */
872 { 0x17, 0x400001f0 },
873 { 0x1d, 0x97a70120 },
884 { 0x1a, 0x05d71030 },
898 { 0x18, 0x03a1913d }, /* use as headphone mic, without its own jack detect */
909 { 0x01, AC_VERB_SET_GPIO_MASK, 0x01 },
910 { 0x01, AC_VERB_SET_GPIO_DIRECTION, 0x01 },
911 { 0x01, AC_VERB_SET_GPIO_DATA, 0x01 },
942 { 0x10, 0x961701f0 }, /* speaker/hp */
943 { 0x12, 0x02a1901e }, /* ext mic */
944 { 0x14, 0x95a70110 }, /* int mic */
951 { 0x12, 0x90a60160 }, /* int mic */
968 { 0x16, 0x21011020 }, /* line-out */
969 { 0x18, 0x2181103f }, /* line-in */
978 /* enable NID 0x1d for the speaker on top */
979 { 0x1d, 0x91170111 },
1006 { 0x1a, 0x02a1113c },
1019 { 0x1d, 0x82170111 },
1030 SND_PCI_QUIRK(0x103c, 0x30d5, "HP 530", CXT_FIXUP_HP_530),
1031 SND_PCI_QUIRK(0x1179, 0xff31, "Toshiba P105", CXT_FIXUP_TOSHIBA_P105),
1033 * really bad sound over 0dB on NID 0x17.
1035 SND_PCI_QUIRK_VENDOR(0x103c, "HP", CXT_FIXUP_CAP_MIX_AMP),
1036 SND_PCI_QUIRK_VENDOR(0x1631, "Packard Bell", CXT_FIXUP_CAP_MIX_AMP),
1037 SND_PCI_QUIRK_VENDOR(0x1734, "Fujitsu", CXT_FIXUP_CAP_MIX_AMP),
1038 SND_PCI_QUIRK_VENDOR(0x17aa, "Lenovo", CXT_FIXUP_CAP_MIX_AMP),
1050 /* HP laptops have really bad sound over 0 dB on NID 0x10.
1052 SND_PCI_QUIRK_VENDOR(0x103c, "HP", CXT_FIXUP_CAP_MIX_AMP_5047),
1062 SND_PCI_QUIRK(0x103c, 0x360b, "Compaq CQ60", CXT_PINCFG_COMPAQ_CQ60),
1063 SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo X200", CXT_PINCFG_LENOVO_X200),
1073 SND_PCI_QUIRK(0x1025, 0x0543, "Acer Aspire One 522", CXT_FIXUP_STEREO_DMIC),
1074 SND_PCI_QUIRK(0x1025, 0x054c, "Acer Aspire 3830TG", CXT_FIXUP_ASPIRE_DMIC),
1075 SND_PCI_QUIRK(0x1025, 0x054f, "Acer Aspire 4830T", CXT_FIXUP_ASPIRE_DMIC),
1076 SND_PCI_QUIRK(0x103c, 0x8079, "HP EliteBook 840 G3", CXT_FIXUP_HP_DOCK),
1077 SND_PCI_QUIRK(0x103c, 0x807C, "HP EliteBook 820 G3", CXT_FIXUP_HP_DOCK),
1078 SND_PCI_QUIRK(0x103c, 0x80FD, "HP ProBook 640 G2", CXT_FIXUP_HP_DOCK),
1079 SND_PCI_QUIRK(0x103c, 0x8115, "HP Z1 Gen3", CXT_FIXUP_HP_GATE_MIC),
1080 SND_PCI_QUIRK(0x103c, 0x814f, "HP ZBook 15u G3", CXT_FIXUP_MUTE_LED_GPIO),
1081 SND_PCI_QUIRK(0x103c, 0x8174, "HP Spectre x360", CXT_FIXUP_HP_SPECTRE),
1082 SND_PCI_QUIRK(0x103c, 0x822e, "HP ProBook 440 G4", CXT_FIXUP_MUTE_LED_GPIO),
1083 SND_PCI_QUIRK(0x103c, 0x8231, "HP ProBook 450 G4", CXT_FIXUP_MUTE_LED_GPIO),
1084 SND_PCI_QUIRK(0x103c, 0x828c, "HP EliteBook 840 G4", CXT_FIXUP_HP_DOCK),
1085 SND_PCI_QUIRK(0x103c, 0x8299, "HP 800 G3 SFF", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1086 SND_PCI_QUIRK(0x103c, 0x829a, "HP 800 G3 DM", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1087 SND_PCI_QUIRK(0x103c, 0x82b4, "HP ProDesk 600 G3", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1088 SND_PCI_QUIRK(0x103c, 0x836e, "HP ProBook 455 G5", CXT_FIXUP_MUTE_LED_GPIO),
1089 SND_PCI_QUIRK(0x103c, 0x837f, "HP ProBook 470 G5", CXT_FIXUP_MUTE_LED_GPIO),
1090 SND_PCI_QUIRK(0x103c, 0x83b2, "HP EliteBook 840 G5", CXT_FIXUP_HP_DOCK),
1091 SND_PCI_QUIRK(0x103c, 0x83b3, "HP EliteBook 830 G5", CXT_FIXUP_HP_DOCK),
1092 SND_PCI_QUIRK(0x103c, 0x83d3, "HP ProBook 640 G4", CXT_FIXUP_HP_DOCK),
1093 SND_PCI_QUIRK(0x103c, 0x83e5, "HP EliteOne 1000 G2", CXT_FIXUP_HP_ELITEONE_OUT_DIS),
1094 SND_PCI_QUIRK(0x103c, 0x8402, "HP ProBook 645 G4", CXT_FIXUP_MUTE_LED_GPIO),
1095 SND_PCI_QUIRK(0x103c, 0x8427, "HP ZBook Studio G5", CXT_FIXUP_HP_ZBOOK_MUTE_LED),
1096 SND_PCI_QUIRK(0x103c, 0x844f, "HP ZBook Studio G5", CXT_FIXUP_HP_ZBOOK_MUTE_LED),
1097 SND_PCI_QUIRK(0x103c, 0x8455, "HP Z2 G4", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1098 SND_PCI_QUIRK(0x103c, 0x8456, "HP Z2 G4 SFF", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1099 SND_PCI_QUIRK(0x103c, 0x8457, "HP Z2 G4 mini", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1100 SND_PCI_QUIRK(0x103c, 0x8458, "HP Z2 G4 mini premium", CXT_FIXUP_HP_MIC_NO_PRESENCE),
1101 SND_PCI_QUIRK(0x1043, 0x138d, "Asus", CXT_FIXUP_HEADPHONE_MIC_PIN),
1102 SND_PCI_QUIRK(0x14f1, 0x0252, "MBX-Z60MR100", CXT_FIXUP_HP_A_U),
1103 SND_PCI_QUIRK(0x14f1, 0x0265, "SWS JS201D", CXT_PINCFG_SWS_JS201D),
1104 SND_PCI_QUIRK(0x152d, 0x0833, "OLPC XO-1.5", CXT_FIXUP_OLPC_XO),
1105 SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo T400", CXT_PINCFG_LENOVO_TP410),
1106 SND_PCI_QUIRK(0x17aa, 0x215e, "Lenovo T410", CXT_PINCFG_LENOVO_TP410),
1107 SND_PCI_QUIRK(0x17aa, 0x215f, "Lenovo T510", CXT_PINCFG_LENOVO_TP410),
1108 SND_PCI_QUIRK(0x17aa, 0x21ce, "Lenovo T420", CXT_PINCFG_LENOVO_TP410),
1109 SND_PCI_QUIRK(0x17aa, 0x21cf, "Lenovo T520", CXT_PINCFG_LENOVO_TP410),
1110 SND_PCI_QUIRK(0x17aa, 0x21d2, "Lenovo T420s", CXT_PINCFG_LENOVO_TP410),
1111 SND_PCI_QUIRK(0x17aa, 0x21da, "Lenovo X220", CXT_PINCFG_LENOVO_TP410),
1112 SND_PCI_QUIRK(0x17aa, 0x21db, "Lenovo X220-tablet", CXT_PINCFG_LENOVO_TP410),
1113 SND_PCI_QUIRK(0x17aa, 0x38af, "Lenovo IdeaPad Z560", CXT_FIXUP_MUTE_LED_EAPD),
1114 SND_PCI_QUIRK(0x17aa, 0x3905, "Lenovo G50-30", CXT_FIXUP_STEREO_DMIC),
1115 SND_PCI_QUIRK(0x17aa, 0x390b, "Lenovo G50-80", CXT_FIXUP_STEREO_DMIC),
1116 SND_PCI_QUIRK(0x17aa, 0x3975, "Lenovo U300s", CXT_FIXUP_STEREO_DMIC),
1120 SND_PCI_QUIRK(0x17aa, 0x3977, "Lenovo IdeaPad U310", CXT_FIXUP_STEREO_DMIC),
1121 SND_PCI_QUIRK(0x17aa, 0x3978, "Lenovo G50-70", CXT_FIXUP_STEREO_DMIC),
1122 SND_PCI_QUIRK(0x17aa, 0x397b, "Lenovo S205", CXT_FIXUP_STEREO_DMIC),
1123 SND_PCI_QUIRK_VENDOR(0x17aa, "Thinkpad/Ideapad", CXT_FIXUP_LENOVO_XPAD_ACPI),
1124 SND_PCI_QUIRK(0x1c06, 0x2011, "Lemote A1004", CXT_PINCFG_LEMOTE_A1004),
1125 SND_PCI_QUIRK(0x1c06, 0x2012, "Lemote A1205", CXT_PINCFG_LEMOTE_A1205),
1126 HDA_CODEC_QUIRK(0x2782, 0x12c3, "Sirius Gen1", CXT_PINCFG_TOP_SPEAKER),
1127 HDA_CODEC_QUIRK(0x2782, 0x12c5, "Sirius Gen2", CXT_PINCFG_TOP_SPEAKER),
1160 0x10, 0x11, 0
1186 case 0x14f11f86:
1187 case 0x14f11f87:
1189 snd_hda_jack_detect_enable_callback(codec, 0x19, cx_update_headset_mic_vref);
1197 case 0x14f15045:
1199 spec->gen.mixer_nid = 0x17;
1204 case 0x14f15047:
1206 spec->gen.mixer_nid = 0x19;
1211 case 0x14f15051:
1217 case 0x14f15098:
1219 spec->gen.mixer_nid = 0x22;
1224 case 0x14f150f2:
1241 if (err < 0)
1245 if (err < 0)
1249 if (err < 0)
1265 return 0;
1288 HDA_CODEC_ID(0x14f11f86, "CX11880"),
1289 HDA_CODEC_ID(0x14f11f87, "SN6140"),
1290 HDA_CODEC_ID(0x14f12008, "CX8200"),
1291 HDA_CODEC_ID(0x14f120d0, "CX11970"),
1292 HDA_CODEC_ID(0x14f120d1, "SN6180"),
1293 HDA_CODEC_ID(0x14f15045, "CX20549 (Venice)"),
1294 HDA_CODEC_ID(0x14f15047, "CX20551 (Waikiki)"),
1295 HDA_CODEC_ID(0x14f15051, "CX20561 (Hermosa)"),
1296 HDA_CODEC_ID(0x14f15066, "CX20582 (Pebble)"),
1297 HDA_CODEC_ID(0x14f15067, "CX20583 (Pebble HSF)"),
1298 HDA_CODEC_ID(0x14f15068, "CX20584"),
1299 HDA_CODEC_ID(0x14f15069, "CX20585"),
1300 HDA_CODEC_ID(0x14f1506c, "CX20588"),
1301 HDA_CODEC_ID(0x14f1506e, "CX20590"),
1302 HDA_CODEC_ID(0x14f15097, "CX20631"),
1303 HDA_CODEC_ID(0x14f15098, "CX20632"),
1304 HDA_CODEC_ID(0x14f150a1, "CX20641"),
1305 HDA_CODEC_ID(0x14f150a2, "CX20642"),
1306 HDA_CODEC_ID(0x14f150ab, "CX20651"),
1307 HDA_CODEC_ID(0x14f150ac, "CX20652"),
1308 HDA_CODEC_ID(0x14f150b8, "CX20664"),
1309 HDA_CODEC_ID(0x14f150b9, "CX20665"),
1310 HDA_CODEC_ID(0x14f150f1, "CX21722"),
1311 HDA_CODEC_ID(0x14f150f2, "CX20722"),
1312 HDA_CODEC_ID(0x14f150f3, "CX21724"),
1313 HDA_CODEC_ID(0x14f150f4, "CX20724"),
1314 HDA_CODEC_ID(0x14f1510f, "CX20751/2"),
1315 HDA_CODEC_ID(0x14f15110, "CX20751/2"),
1316 HDA_CODEC_ID(0x14f15111, "CX20753/4"),
1317 HDA_CODEC_ID(0x14f15113, "CX20755"),
1318 HDA_CODEC_ID(0x14f15114, "CX20756"),
1319 HDA_CODEC_ID(0x14f15115, "CX20757"),
1320 HDA_CODEC_ID(0x14f151d7, "CX20952"),