Merge "uapi: lsm_params: add support for lsm version 3.0"

This commit is contained in:
Linux Build Service Account 2018-06-19 16:59:30 -07:00 • committed by Gerrit - the friendly Code Review server
commit e4e8a88459

View file

@ -7,7 +7,7 @@
#include <linux/types.h>
#include <sound/asound.h>
#define SNDRV_LSM_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 0)
#define SNDRV_LSM_VERSION SNDRV_PROTOCOL_VERSION(0, 3, 0)
#define LSM_OUT_FORMAT_PCM (0)
#define LSM_OUT_FORMAT_ADPCM (1 << 0)
@ -38,6 +38,18 @@
#define LSM_DET_EVENT_TYPE_LEGACY (0)
#define LSM_DET_EVENT_TYPE_GENERIC (1)
/* Valid sample rates for input hw_params */
#define LSM_INPUT_SAMPLE_RATE_16K 16000
#define LSM_INPUT_SAMPLE_RATE_48K 48000
/* Valid bit-widths for input hw_params */
#define LSM_INPUT_BIT_WIDTH_16 16
#define LSM_INPUT_BIT_WIDTH_24 24
/* Min and Max channels for input hw_params */
#define LSM_INPUT_NUM_CHANNELS_MIN 1
#define LSM_INPUT_NUM_CHANNELS_MAX 9
enum lsm_app_id {
LSM_VOICE_WAKEUP_APP_ID = 1,
LSM_VOICE_WAKEUP_APP_ID_V2 = 2,
@ -189,6 +201,22 @@ struct snd_lsm_output_format_cfg {
__u8 mode;
};
/*
* Data passed to SNDRV_LSM_SET_INPUT_HW_PARAMS ioctl
*
* @sample_rate: Sample rate of input to lsm.
* valid values are 16000 and 48000
* @bit_width: Bit width of audio samples input to lsm.
* valid values are 16 and 24
* @num_channels: Number of channels input to lsm.
* valid values are range from 1 to 16
*/
struct snd_lsm_input_hw_params {
__u32 sample_rate;
__u16 bit_width;
__u16 num_channels;
} __packed;
#define SNDRV_LSM_DEREG_SND_MODEL _IOW('U', 0x01, int)
#define SNDRV_LSM_EVENT_STATUS _IOW('U', 0x02, struct snd_lsm_event_status)
#define SNDRV_LSM_ABORT_EVENT _IOW('U', 0x03, int)
@ -210,5 +238,7 @@ struct snd_lsm_output_format_cfg {
#define SNDRV_LSM_EVENT_STATUS_V3 _IOW('U', 0x0F, \
struct snd_lsm_event_status_v3)
#define SNDRV_LSM_GENERIC_DET_EVENT _IOW('U', 0x10, struct snd_lsm_event_status)
#define SNDRV_LSM_SET_INPUT_HW_PARAMS _IOW('U', 0x11, \
struct snd_lsm_input_hw_params)
#endif