ALSA: hda: generic: Drop the old mic-mute LED hook
Now all users of the old snd_hda_gen_add_micmute_led() have been converted to the new LED-classdev variant, and we can make it local, and remove the unused hda_gen_spec.micmute_led.update callback field. Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com> Link: https://lore.kernel.org/r/20200618110842.27238-8-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
5fc0f69300
commit
fe1a162191
|
@ -3922,8 +3922,6 @@ static void call_micmute_led_update(struct hda_codec *codec)
|
||||||
if (val == spec->micmute_led.led_value)
|
if (val == spec->micmute_led.led_value)
|
||||||
return;
|
return;
|
||||||
spec->micmute_led.led_value = val;
|
spec->micmute_led.led_value = val;
|
||||||
if (spec->micmute_led.update)
|
|
||||||
spec->micmute_led.update(codec);
|
|
||||||
ledtrig_audio_set(LED_AUDIO_MICMUTE,
|
ledtrig_audio_set(LED_AUDIO_MICMUTE,
|
||||||
spec->micmute_led.led_value ? LED_ON : LED_OFF);
|
spec->micmute_led.led_value ? LED_ON : LED_OFF);
|
||||||
}
|
}
|
||||||
|
@ -3997,20 +3995,8 @@ static const struct snd_kcontrol_new micmute_led_mode_ctl = {
|
||||||
.put = micmute_led_mode_put,
|
.put = micmute_led_mode_put,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/* Set up the capture sync hook for controlling the mic-mute LED */
|
||||||
* snd_hda_gen_add_micmute_led - helper for setting up mic mute LED hook
|
static int add_micmute_led_hook(struct hda_codec *codec)
|
||||||
* @codec: the HDA codec
|
|
||||||
* @hook: the callback for updating LED
|
|
||||||
*
|
|
||||||
* Called from the codec drivers for offering the mic mute LED controls.
|
|
||||||
* When established, it sets up cap_sync_hook and triggers the callback at
|
|
||||||
* each time when the capture mixer switch changes. The callback is supposed
|
|
||||||
* to update the LED accordingly.
|
|
||||||
*
|
|
||||||
* Returns 0 if the hook is established or a negative error code.
|
|
||||||
*/
|
|
||||||
int snd_hda_gen_add_micmute_led(struct hda_codec *codec,
|
|
||||||
void (*hook)(struct hda_codec *))
|
|
||||||
{
|
{
|
||||||
struct hda_gen_spec *spec = codec->spec;
|
struct hda_gen_spec *spec = codec->spec;
|
||||||
|
|
||||||
|
@ -4018,13 +4004,11 @@ int snd_hda_gen_add_micmute_led(struct hda_codec *codec,
|
||||||
spec->micmute_led.capture = 0;
|
spec->micmute_led.capture = 0;
|
||||||
spec->micmute_led.led_value = 0;
|
spec->micmute_led.led_value = 0;
|
||||||
spec->micmute_led.old_hook = spec->cap_sync_hook;
|
spec->micmute_led.old_hook = spec->cap_sync_hook;
|
||||||
spec->micmute_led.update = hook;
|
|
||||||
spec->cap_sync_hook = update_micmute_led;
|
spec->cap_sync_hook = update_micmute_led;
|
||||||
if (!snd_hda_gen_add_kctl(spec, NULL, &micmute_led_mode_ctl))
|
if (!snd_hda_gen_add_kctl(spec, NULL, &micmute_led_mode_ctl))
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(snd_hda_gen_add_micmute_led);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* snd_dha_gen_add_micmute_led_cdev - Create a LED classdev and enable as mic-mute LED
|
* snd_dha_gen_add_micmute_led_cdev - Create a LED classdev and enable as mic-mute LED
|
||||||
|
@ -4065,7 +4049,7 @@ int snd_hda_gen_add_micmute_led_cdev(struct hda_codec *codec,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return snd_hda_gen_add_micmute_led(codec, NULL);
|
return add_micmute_led_hook(codec);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(snd_hda_gen_add_micmute_led_cdev);
|
EXPORT_SYMBOL_GPL(snd_hda_gen_add_micmute_led_cdev);
|
||||||
#endif /* CONFIG_SND_HDA_GENERIC_LEDS */
|
#endif /* CONFIG_SND_HDA_GENERIC_LEDS */
|
||||||
|
|
|
@ -88,7 +88,6 @@ struct hda_micmute_hook {
|
||||||
unsigned int led_mode;
|
unsigned int led_mode;
|
||||||
unsigned int capture;
|
unsigned int capture;
|
||||||
unsigned int led_value;
|
unsigned int led_value;
|
||||||
void (*update)(struct hda_codec *codec);
|
|
||||||
void (*old_hook)(struct hda_codec *codec,
|
void (*old_hook)(struct hda_codec *codec,
|
||||||
struct snd_kcontrol *kcontrol,
|
struct snd_kcontrol *kcontrol,
|
||||||
struct snd_ctl_elem_value *ucontrol);
|
struct snd_ctl_elem_value *ucontrol);
|
||||||
|
@ -355,8 +354,6 @@ unsigned int snd_hda_gen_path_power_filter(struct hda_codec *codec,
|
||||||
void snd_hda_gen_stream_pm(struct hda_codec *codec, hda_nid_t nid, bool on);
|
void snd_hda_gen_stream_pm(struct hda_codec *codec, hda_nid_t nid, bool on);
|
||||||
int snd_hda_gen_fix_pin_power(struct hda_codec *codec, hda_nid_t pin);
|
int snd_hda_gen_fix_pin_power(struct hda_codec *codec, hda_nid_t pin);
|
||||||
|
|
||||||
int snd_hda_gen_add_micmute_led(struct hda_codec *codec,
|
|
||||||
void (*hook)(struct hda_codec *));
|
|
||||||
int snd_hda_gen_add_micmute_led_cdev(struct hda_codec *codec,
|
int snd_hda_gen_add_micmute_led_cdev(struct hda_codec *codec,
|
||||||
int (*callback)(struct led_classdev *,
|
int (*callback)(struct led_classdev *,
|
||||||
enum led_brightness));
|
enum led_brightness));
|
||||||
|
|
Loading…
Reference in New Issue