[alsa-devel] [PATCH0/2] jack: Add support for SND_JACK_LINEOUT
Takashi Iwai
tiwai at suse.de
Tue Oct 21 08:04:16 CEST 2008
At Mon, 20 Oct 2008 17:39:52 -0400,
Matthew Ranostay wrote:
>
> Add support to the jack abstraction layer to report 'Line Out' presence insertions.
>
> Signed-off-by: Matthew Ranostay <mranostay at embeddedalley.com>
> ---
>
> diff --git a/include/linux/input.h b/include/linux/input.h
> index a5802c9..7323d2f 100644
> --- a/include/linux/input.h
> +++ b/include/linux/input.h
> @@ -644,6 +644,7 @@ struct input_absinfo {
> #define SW_RADIO SW_RFKILL_ALL /* deprecated */
> #define SW_MICROPHONE_INSERT 0x04 /* set = inserted */
> #define SW_DOCK 0x05 /* set = plugged into dock */
> +#define SW_LINEOUT_INSERT 0x06 /* set = inserted */
> #define SW_MAX 0x0f
> #define SW_CNT (SW_MAX+1)
>
> diff --git a/include/sound/jack.h b/include/sound/jack.h
> index b1b2b8b..67270ee 100644
> --- a/include/sound/jack.h
> +++ b/include/sound/jack.h
> @@ -35,6 +35,8 @@ enum snd_jack_types {
> SND_JACK_HEADPHONE = 0x0001,
> SND_JACK_MICROPHONE = 0x0002,
> SND_JACK_HEADSET = SND_JACK_HEADPHONE | SND_JACK_MICROPHONE,
> + SND_JACK_LINEOUT = 0x0004,
> + SND_JACK_SWITCH = SND_JACK_HEADPHONE | SND_JACK_LINEOUT,
Please describe what these two items are supposed to be used.
Especially, the use case of SND_JACK_SWITCH is unclear.
> };
>
> struct snd_jack {
> diff --git a/sound/core/jack.c b/sound/core/jack.c
> index bd2d9e6..284432f 100644
> --- a/sound/core/jack.c
> +++ b/sound/core/jack.c
> @@ -34,6 +34,7 @@ static int snd_jack_dev_free(struct snd_device *device)
> else
> input_free_device(jack->input_dev);
>
> + kfree(jack->id);
> kfree(jack);
>
> return 0;
> @@ -87,7 +88,7 @@ int snd_jack_new(struct snd_card *card, const char *id, int type,
> if (jack == NULL)
> return -ENOMEM;
>
> - jack->id = id;
> + jack->id = kstrdup(id, GFP_KERNEL);
>
> jack->input_dev = input_allocate_device();
> if (jack->input_dev == NULL) {
These two chunks are basically independent from the other change.
Please split to another patch with a proper changelog.
Takashi
More information about the Alsa-devel
mailing list