X-Git-Url: https://git.kernelconcepts.de/?a=blobdiff_plain;f=sound%2Fcore%2Fjack.c;h=dd4a12dc09aa44f4c50c5b60f2cf5584c5635589;hb=a8022697811c3f2271df5ec14fa6f518b731b46a;hp=284432f427f4b7c32a178a11329520e112dedbee;hpb=a65056205cdf7efb96fb2558e4f1ec6bae2582ed;p=karo-tx-linux.git diff --git a/sound/core/jack.c b/sound/core/jack.c index 284432f427f4..dd4a12dc09aa 100644 --- a/sound/core/jack.c +++ b/sound/core/jack.c @@ -109,6 +109,9 @@ int snd_jack_new(struct snd_card *card, const char *id, int type, if (type & SND_JACK_MICROPHONE) input_set_capability(jack->input_dev, EV_SW, SW_MICROPHONE_INSERT); + if (type & SND_JACK_MECHANICAL) + input_set_capability(jack->input_dev, EV_SW, + SW_JACK_PHYSICAL_INSERT); err = snd_device_new(card, SNDRV_DEV_JACK, jack, &ops); if (err < 0) @@ -163,6 +166,9 @@ void snd_jack_report(struct snd_jack *jack, int status) if (jack->type & SND_JACK_MICROPHONE) input_report_switch(jack->input_dev, SW_MICROPHONE_INSERT, status & SND_JACK_MICROPHONE); + if (jack->type & SND_JACK_MECHANICAL) + input_report_switch(jack->input_dev, SW_JACK_PHYSICAL_INSERT, + status & SND_JACK_MECHANICAL); input_sync(jack->input_dev); }