|
@@ -102,6 +102,9 @@ int snd_jack_new(struct snd_card *card, const char *id, int type,
|
|
|
if (type & SND_JACK_HEADPHONE)
|
|
|
input_set_capability(jack->input_dev, EV_SW,
|
|
|
SW_HEADPHONE_INSERT);
|
|
|
+ if (type & SND_JACK_LINEOUT)
|
|
|
+ input_set_capability(jack->input_dev, EV_SW,
|
|
|
+ SW_LINEOUT_INSERT);
|
|
|
if (type & SND_JACK_MICROPHONE)
|
|
|
input_set_capability(jack->input_dev, EV_SW,
|
|
|
SW_MICROPHONE_INSERT);
|
|
@@ -150,6 +153,9 @@ void snd_jack_report(struct snd_jack *jack, int status)
|
|
|
if (jack->type & SND_JACK_HEADPHONE)
|
|
|
input_report_switch(jack->input_dev, SW_HEADPHONE_INSERT,
|
|
|
status & SND_JACK_HEADPHONE);
|
|
|
+ if (jack->type & SND_JACK_LINEOUT)
|
|
|
+ input_report_switch(jack->input_dev, SW_LINEOUT_INSERT,
|
|
|
+ status & SND_JACK_LINEOUT);
|
|
|
if (jack->type & SND_JACK_MICROPHONE)
|
|
|
input_report_switch(jack->input_dev, SW_MICROPHONE_INSERT,
|
|
|
status & SND_JACK_MICROPHONE);
|