Lines Matching +full:spec +full:-

1 // SPDX-License-Identifier: GPL-2.0-or-later
45 static int set_beep_amp(struct senary_spec *spec, hda_nid_t nid, in set_beep_amp() argument
52 spec->gen.beep_nid = nid; in set_beep_amp()
54 knew = snd_hda_gen_add_kctl(&spec->gen, NULL, in set_beep_amp()
57 return -ENOMEM; in set_beep_amp()
58 knew->private_value = beep_amp; in set_beep_amp()
65 struct senary_spec *spec = codec->spec; in senary_auto_parse_beep() local
71 return set_beep_amp(spec, nid, 0, HDA_OUTPUT); in senary_auto_parse_beep()
81 struct senary_spec *spec = codec->spec; in senary_auto_parse_eapd() local
89 spec->eapds[spec->num_eapds++] = nid; in senary_auto_parse_eapd()
90 if (spec->num_eapds >= ARRAY_SIZE(spec->eapds)) in senary_auto_parse_eapd()
112 struct senary_spec *spec = codec->spec; in senary_auto_vmaster_hook() local
114 senary_auto_turn_eapd(codec, spec->num_eapds, spec->eapds, enabled); in senary_auto_vmaster_hook()
119 struct senary_spec *spec = codec->spec; in senary_init_gpio_led() local
120 unsigned int mask = spec->gpio_mute_led_mask | spec->gpio_mic_led_mask; in senary_init_gpio_led()
128 spec->gpio_led); in senary_init_gpio_led()
143 struct senary_spec *spec = codec->spec; in senary_auto_shutdown() local
148 senary_auto_turn_eapd(codec, spec->num_eapds, spec->eapds, false); in senary_auto_shutdown()
175 struct senary_spec *spec; in patch_senary_auto() local
178 codec_info(codec, "%s: BIOS auto-probing.\n", codec->core.chip_name); in patch_senary_auto()
180 spec = kzalloc(sizeof(*spec), GFP_KERNEL); in patch_senary_auto()
181 if (!spec) in patch_senary_auto()
182 return -ENOMEM; in patch_senary_auto()
183 snd_hda_gen_spec_init(&spec->gen); in patch_senary_auto()
184 codec->spec = spec; in patch_senary_auto()
185 codec->patch_ops = senary_auto_patch_ops; in patch_senary_auto()
188 spec->gen.own_eapd_ctl = 1; in patch_senary_auto()
190 if (!spec->gen.vmaster_mute.hook) in patch_senary_auto()
191 spec->gen.vmaster_mute.hook = senary_auto_vmaster_hook; in patch_senary_auto()
195 err = snd_hda_parse_pin_defcfg(codec, &spec->gen.autocfg, NULL, in patch_senary_auto()
196 spec->parse_flags); in patch_senary_auto()
204 err = snd_hda_gen_parse_auto_config(codec, &spec->gen.autocfg); in patch_senary_auto()
209 * which falls into the single-cmd mode. in patch_senary_auto()
212 if (!codec->bus->core.sync_write) { in patch_senary_auto()
215 codec->bus->core.sync_write = 1; in patch_senary_auto()
216 codec->bus->allow_bus_reset = 1; in patch_senary_auto()
238 MODULE_DESCRIPTION("Senarytech HD-audio codec");