Lines Matching refs:amp

266 static void awacs_amp_set_tone(struct awacs_amp *amp, int bass, int treble)
268 amp->amp_tone[0] = bass;
269 amp->amp_tone[1] = treble;
280 static int awacs_amp_set_vol(struct awacs_amp *amp, int index,
283 if (do_check && amp->amp_vol[index][0] == lvol &&
284 amp->amp_vol[index][1] == rvol)
288 amp->amp_vol[index][0] = lvol;
289 amp->amp_vol[index][1] = rvol;
296 static void awacs_amp_set_master(struct awacs_amp *amp, int vol)
298 amp->amp_master = vol;
308 struct awacs_amp *amp = chip->mixer_data;
309 if (!amp)
311 kfree(amp);
335 struct awacs_amp *amp = chip->mixer_data;
337 ucontrol->value.integer.value[0] = 31 - (amp->amp_vol[index][0] & 31);
338 ucontrol->value.integer.value[1] = 31 - (amp->amp_vol[index][1] & 31);
348 struct awacs_amp *amp = chip->mixer_data;
351 | (amp->amp_vol[index][0] & 32);
353 | (amp->amp_vol[index][1] & 32);
354 return awacs_amp_set_vol(amp, index, vol[0], vol[1], 1);
362 struct awacs_amp *amp = chip->mixer_data;
364 ucontrol->value.integer.value[0] = (amp->amp_vol[index][0] & 32)
366 ucontrol->value.integer.value[1] = (amp->amp_vol[index][1] & 32)
377 struct awacs_amp *amp = chip->mixer_data;
380 | (amp->amp_vol[index][0] & 31);
382 | (amp->amp_vol[index][1] & 31);
383 return awacs_amp_set_vol(amp, index, vol[0], vol[1], 1);
401 struct awacs_amp *amp = chip->mixer_data;
403 ucontrol->value.integer.value[0] = amp->amp_tone[index];
412 struct awacs_amp *amp = chip->mixer_data;
418 if (val != amp->amp_tone[index]) {
419 amp->amp_tone[index] = val;
420 awacs_amp_set_tone(amp, amp->amp_tone[0], amp->amp_tone[1]);
440 struct awacs_amp *amp = chip->mixer_data;
442 ucontrol->value.integer.value[0] = amp->amp_master;
450 struct awacs_amp *amp = chip->mixer_data;
456 if (val != amp->amp_master) {
457 amp->amp_master = val;
458 awacs_amp_set_master(amp, amp->amp_master);
758 struct awacs_amp *amp = chip->mixer_data;
759 awacs_amp_set_vol(amp, 0,
760 amp->amp_vol[0][0], amp->amp_vol[0][1], 0);
761 awacs_amp_set_vol(amp, 1,
762 amp->amp_vol[1][0], amp->amp_vol[1][1], 0);
763 awacs_amp_set_tone(amp, amp->amp_tone[0], amp->amp_tone[1]);
764 awacs_amp_set_master(amp, amp->amp_master);
793 static int toggle_amp_mute(struct awacs_amp *amp, int index, int mute)
796 vol[0] = amp->amp_vol[index][0] & 31;
797 vol[1] = amp->amp_vol[index][1] & 31;
802 return awacs_amp_set_vol(amp, index, vol[0], vol[1], 1);
811 struct awacs_amp *amp = chip->mixer_data;
814 changed = toggle_amp_mute(amp, AMP_CH_HD, 0);
815 changed |= toggle_amp_mute(amp, AMP_CH_SPK, 1);
817 changed = toggle_amp_mute(amp, AMP_CH_HD, 1);
818 changed |= toggle_amp_mute(amp, AMP_CH_SPK, 0);
910 struct awacs_amp *amp = kzalloc(sizeof(*amp), GFP_KERNEL);
911 if (! amp)
913 chip->mixer_data = amp;
916 awacs_amp_set_vol(amp, 0, 63, 63, 0);
917 awacs_amp_set_vol(amp, 1, 63, 63, 0);
918 awacs_amp_set_tone(amp, 7, 7); /* 0 dB */
919 awacs_amp_set_master(amp, 79); /* 0 dB */
1024 * to the amp. the amp has its headphone and speaker