Lines Matching refs:spec
120 struct psc724_spec *spec = container_of(wm, struct psc724_spec, wm8766); in psc724_wm8766_write() local
121 struct snd_ice1712 *ice = spec->ice; in psc724_wm8766_write()
162 struct psc724_spec *spec = container_of(wm, struct psc724_spec, wm8776); in psc724_wm8776_write() local
164 snd_vt1724_write_i2c(spec->ice, 0x34, addr, data); in psc724_wm8776_write()
172 struct psc724_spec *spec = ice->spec; in psc724_set_master_switch() local
174 spec->mute_all = !on; in psc724_set_master_switch()
184 struct psc724_spec *spec = ice->spec; in psc724_get_master_switch() local
186 return !spec->mute_all; in psc724_get_master_switch()
193 struct psc724_spec *spec = ice->spec; in psc724_set_jack_state() local
196 u16 power = spec->wm8776.regs[WM8776_REG_PWRDOWN] & ~WM8776_PWR_HPPD; in psc724_set_jack_state()
201 snd_wm8776_set_power(&spec->wm8776, power); in psc724_set_jack_state()
202 spec->hp_connected = hp_connected; in psc724_set_jack_state()
211 strlcpy(elem_id.name, spec->wm8776.ctl[WM8776_CTL_HP_SW].name, in psc724_set_jack_state()
219 struct psc724_spec *spec = container_of(work, struct psc724_spec, in psc724_update_hp_jack_state() local
221 struct snd_ice1712 *ice = spec->ice; in psc724_update_hp_jack_state()
224 schedule_delayed_work(&spec->hp_work, msecs_to_jiffies(JACK_INTERVAL)); in psc724_update_hp_jack_state()
225 if (hp_connected == spec->hp_connected) in psc724_update_hp_jack_state()
232 struct psc724_spec *spec = ice->spec; in psc724_set_jack_detection() local
234 if (spec->jack_detect == on) in psc724_set_jack_detection()
237 spec->jack_detect = on; in psc724_set_jack_detection()
241 schedule_delayed_work(&spec->hp_work, in psc724_set_jack_detection()
244 cancel_delayed_work_sync(&spec->hp_work); in psc724_set_jack_detection()
249 struct psc724_spec *spec = ice->spec; in psc724_get_jack_detection() local
251 return spec->jack_detect; in psc724_get_jack_detection()
324 struct psc724_spec *spec = ice->spec; in psc724_add_controls() local
326 spec->wm8776.ctl[WM8776_CTL_DAC_VOL].name = front_volume; in psc724_add_controls()
327 spec->wm8776.ctl[WM8776_CTL_DAC_SW].name = front_switch; in psc724_add_controls()
328 spec->wm8776.ctl[WM8776_CTL_DAC_ZC_SW].name = front_zc; in psc724_add_controls()
329 spec->wm8776.ctl[WM8776_CTL_AUX_SW].name = NULL; in psc724_add_controls()
330 spec->wm8776.ctl[WM8776_CTL_DAC_IZD_SW].name = front_izd; in psc724_add_controls()
331 spec->wm8776.ctl[WM8776_CTL_PHASE_SW].name = front_phase; in psc724_add_controls()
332 spec->wm8776.ctl[WM8776_CTL_DEEMPH_SW].name = front_deemph; in psc724_add_controls()
333 spec->wm8776.ctl[WM8776_CTL_INPUT1_SW].name = ain1_switch; in psc724_add_controls()
334 spec->wm8776.ctl[WM8776_CTL_INPUT2_SW].name = ain2_switch; in psc724_add_controls()
335 spec->wm8776.ctl[WM8776_CTL_INPUT3_SW].name = ain3_switch; in psc724_add_controls()
336 spec->wm8776.ctl[WM8776_CTL_INPUT4_SW].name = ain4_switch; in psc724_add_controls()
337 spec->wm8776.ctl[WM8776_CTL_INPUT5_SW].name = ain5_switch; in psc724_add_controls()
338 snd_wm8776_build_controls(&spec->wm8776); in psc724_add_controls()
339 spec->wm8766.ctl[WM8766_CTL_CH1_VOL].name = rear_volume; in psc724_add_controls()
340 spec->wm8766.ctl[WM8766_CTL_CH2_VOL].name = clfe_volume; in psc724_add_controls()
341 spec->wm8766.ctl[WM8766_CTL_CH3_VOL].name = NULL; in psc724_add_controls()
342 spec->wm8766.ctl[WM8766_CTL_CH1_SW].name = rear_switch; in psc724_add_controls()
343 spec->wm8766.ctl[WM8766_CTL_CH2_SW].name = clfe_switch; in psc724_add_controls()
344 spec->wm8766.ctl[WM8766_CTL_CH3_SW].name = NULL; in psc724_add_controls()
345 spec->wm8766.ctl[WM8766_CTL_PHASE1_SW].name = rear_phase; in psc724_add_controls()
346 spec->wm8766.ctl[WM8766_CTL_PHASE2_SW].name = clfe_phase; in psc724_add_controls()
347 spec->wm8766.ctl[WM8766_CTL_PHASE3_SW].name = NULL; in psc724_add_controls()
348 spec->wm8766.ctl[WM8766_CTL_DEEMPH1_SW].name = rear_deemph; in psc724_add_controls()
349 spec->wm8766.ctl[WM8766_CTL_DEEMPH2_SW].name = clfe_deemph; in psc724_add_controls()
350 spec->wm8766.ctl[WM8766_CTL_DEEMPH3_SW].name = NULL; in psc724_add_controls()
351 spec->wm8766.ctl[WM8766_CTL_IZD_SW].name = rear_clfe_izd; in psc724_add_controls()
352 spec->wm8766.ctl[WM8766_CTL_ZC_SW].name = rear_clfe_zc; in psc724_add_controls()
353 snd_wm8766_build_controls(&spec->wm8766); in psc724_add_controls()
377 struct psc724_spec *spec = ice->spec; in psc724_set_pro_rate() local
379 snd_wm8776_volume_restore(&spec->wm8776); in psc724_set_pro_rate()
380 snd_wm8766_volume_restore(&spec->wm8766); in psc724_set_pro_rate()
388 struct psc724_spec *spec = ice->spec; in psc724_resume() local
390 snd_wm8776_resume(&spec->wm8776); in psc724_resume()
391 snd_wm8766_resume(&spec->wm8766); in psc724_resume()
401 struct psc724_spec *spec; in psc724_init() local
403 spec = kzalloc(sizeof(*spec), GFP_KERNEL); in psc724_init()
404 if (!spec) in psc724_init()
406 ice->spec = spec; in psc724_init()
407 spec->ice = ice; in psc724_init()
411 spec->wm8776.ops.write = psc724_wm8776_write; in psc724_init()
412 spec->wm8776.card = ice->card; in psc724_init()
413 snd_wm8776_init(&spec->wm8776); in psc724_init()
414 spec->wm8766.ops.write = psc724_wm8766_write; in psc724_init()
415 spec->wm8766.card = ice->card; in psc724_init()
420 snd_wm8766_init(&spec->wm8766); in psc724_init()
421 snd_wm8766_set_if(&spec->wm8766, in psc724_init()
424 INIT_DELAYED_WORK(&spec->hp_work, psc724_update_hp_jack_state); in psc724_init()
431 struct psc724_spec *spec = ice->spec; in psc724_exit() local
433 cancel_delayed_work_sync(&spec->hp_work); in psc724_exit()