[alsa-devel] [PATCH] ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Thu May 2 18:14:47 CEST 2019




> From: Mac Chiang <mac.chiang at intel.com>
> 
> On kbl_rt5663_max98927, commit 38a5882e4292
>      ("ASoC: Intel: kbl_rt5663_max98927: Map BTN_0 to KEY_PLAYPAUSE")
>      This key pair mapping to play/pause when playing Youtube
> 
> The Android 3.5mm Headset jack specification mentions that BTN_0 should
> be mapped to KEY_MEDIA, but this is less logical than KEY_PLAYPAUSE,
> which has much broader userspace support.
> 
> For example, the Chrome OS userspace now supports KEY_PLAYPAUSE to toggle
> play/pause of videos and audio, but does not handle KEY_MEDIA.
> 
> Furthermore, Android itself now supports KEY_PLAYPAUSE equivalently, as the
> new USB headset spec requires KEY_PLAYPAUSE for BTN_0.
> https://source.android.com/devices/accessories/headset/usb-headset-spec
> 
> The same fix is required on Chrome kbl_da7219_max98357a.
> 
> Signed-off-by: Mac Chiang <mac.chiang at intel.com>
> Reviewed-by: Benson Leung <bleung at chromium.org>
> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>

Mark, to be clear it's a resend of a patch initially submitted in 2018, 
see https://patchwork.kernel.org/patch/10493135/

> ---
>   sound/soc/intel/boards/kbl_da7219_max98357a.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/soc/intel/boards/kbl_da7219_max98357a.c b/sound/soc/intel/boards/kbl_da7219_max98357a.c
> index 38f6ab7..07491a0 100644
> --- a/sound/soc/intel/boards/kbl_da7219_max98357a.c
> +++ b/sound/soc/intel/boards/kbl_da7219_max98357a.c
> @@ -188,7 +188,7 @@ static int kabylake_da7219_codec_init(struct snd_soc_pcm_runtime *rtd)
>   
>   	jack = &ctx->kabylake_headset;
>   
> -	snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_MEDIA);
> +	snd_jack_set_key(jack->jack, SND_JACK_BTN_0, KEY_PLAYPAUSE);
>   	snd_jack_set_key(jack->jack, SND_JACK_BTN_1, KEY_VOLUMEUP);
>   	snd_jack_set_key(jack->jack, SND_JACK_BTN_2, KEY_VOLUMEDOWN);
>   	snd_jack_set_key(jack->jack, SND_JACK_BTN_3, KEY_VOICECOMMAND);
> 


More information about the Alsa-devel mailing list