On Wed, 28 Nov 2018 13:03:58 +0100, Kailang wrote:
Hi Takashi,
I'd rather like to extend snd_hda_jack_add_kctl() with the key support (maybe adding a new function). You can pass there the combination of SND_JACK_BTN_X with KEY_XXX in an array.
Do you mean create new function like below? snd_hda_jack_add_key_kctl()
It couldn't use snd_hda_jack_add_kctl() directly. Because it had report pin state and get type from NID.
type = get_input_jack_type(codec, nid); ..... ..... state = snd_hda_jack_detect(codec, nid); snd_jack_report(jack->jack, state ? jack->type : 0);
So, to create a new function in hda_jack.c was better.
Well, this seems more deeper than I thought.
Below is my quick attempt to add the infrastructure. This adds more flexibility but still easiness for other possible button implementations, hopefully.
Could you check the series below?
thanks,
Takashi