[alsa-devel] [PATCH 1/3] ALSA: jack: Remove hard coding of jack_switch_types array size
Takashi Iwai
tiwai at suse.de
Mon May 27 09:41:54 CEST 2019
On Fri, 24 May 2019 22:40:23 +0200,
<bgoswami at codeaurora.org> wrote:
>
> From: Banajit Goswami <bgoswami at codeaurora.org>
>
> The size for jack_switch_types array is currently controlled by
> a MACRO 'SND_JACK_SWITCH_TYPES', whose value needs to be updated
> everytime a new jack switch type is added. Remove this MACRO
> and use ARRAY_SIZE instead to get size of the array.
>
> Signed-off-by: Gopikrishnaiah Anandan <agopik at codeaurora.org>
> Signed-off-by: Banajit Goswami <bgoswami at codeaurora.org>
The changes in ALSA side (this one and patch 3) look good.
Rather a bigger question is about the addition of the new input bit.
This needs the review and ack from input subsystem people.
Adding to Cc.
thanks,
Takashi
> ---
> include/sound/jack.h | 3 ---
> sound/core/jack.c | 4 ++--
> 2 files changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/include/sound/jack.h b/include/sound/jack.h
> index 1e84bfb..b0791c5 100644
> --- a/include/sound/jack.h
> +++ b/include/sound/jack.h
> @@ -68,9 +68,6 @@ enum snd_jack_types {
> SND_JACK_BTN_5 = 0x0200,
> };
>
> -/* Keep in sync with definitions above */
> -#define SND_JACK_SWITCH_TYPES 6
> -
> struct snd_jack {
> struct list_head kctl_list;
> struct snd_card *card;
> diff --git a/sound/core/jack.c b/sound/core/jack.c
> index 84c2a17..36b047b 100644
> --- a/sound/core/jack.c
> +++ b/sound/core/jack.c
> @@ -33,7 +33,7 @@ struct snd_jack_kctl {
> };
>
> #ifdef CONFIG_SND_JACK_INPUT_DEV
> -static int jack_switch_types[SND_JACK_SWITCH_TYPES] = {
> +static int jack_switch_types[] = {
> SW_HEADPHONE_INSERT,
> SW_MICROPHONE_INSERT,
> SW_LINEOUT_INSERT,
> @@ -250,7 +250,7 @@ int snd_jack_new(struct snd_card *card, const char *id, int type,
>
> jack->type = type;
>
> - for (i = 0; i < SND_JACK_SWITCH_TYPES; i++)
> + for (i = 0; i < ARRAY_SIZE(jack_switch_types); i++)
> if (type & (1 << i))
> input_set_capability(jack->input_dev, EV_SW,
> jack_switch_types[i]);
> --
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project
>
>
More information about the Alsa-devel
mailing list