uapi: sound: add wcd-dsp-glink header file
Add support for WCD-DSP audio codec communication over glink. This file defines all the required structures for the userspace component to communicate with the DSP in WCD audio codec. CRs-Fixed: 1053381 Change-Id: I141a72c879b4c15590ad94c852a2771a360b55f9 Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
This commit is contained in:
parent
008f057bba
commit
99c16706c7
2 changed files with 59 additions and 0 deletions
|
@ -18,3 +18,4 @@ header-y += audio_effects.h
|
|||
header-y += voice_svc.h
|
||||
header-y += devdep_params.h
|
||||
header-y += msmcal-hwdep.h
|
||||
header-y += wcd-dsp-glink.h
|
||||
|
|
58
include/uapi/sound/wcd-dsp-glink.h
Normal file
58
include/uapi/sound/wcd-dsp-glink.h
Normal file
|
@ -0,0 +1,58 @@
|
|||
#ifndef _WCD_DSP_GLINK_H
|
||||
#define _WCD_DSP_GLINK_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
#define WDSP_CH_NAME_MAX_LEN 50
|
||||
|
||||
enum {
|
||||
WDSP_REG_PKT = 1,
|
||||
WDSP_CMD_PKT,
|
||||
};
|
||||
|
||||
/*
|
||||
* struct wdsp_reg_pkt - Glink channel information structure format
|
||||
* @no_of_channels: Number of glink channels to open
|
||||
* @payload[0]: Dynamic array contains all the glink channels information
|
||||
*/
|
||||
struct wdsp_reg_pkt {
|
||||
__u8 no_of_channels;
|
||||
__u8 payload[0];
|
||||
};
|
||||
|
||||
/*
|
||||
* struct wdsp_cmd_pkt - WDSP command packet format
|
||||
* @ch_name: Name of the glink channel
|
||||
* @payload_size: Size of the payload
|
||||
* @payload[0]: Actual data payload
|
||||
*/
|
||||
struct wdsp_cmd_pkt {
|
||||
char ch_name[WDSP_CH_NAME_MAX_LEN];
|
||||
__u32 payload_size;
|
||||
__u8 payload[0];
|
||||
};
|
||||
|
||||
/*
|
||||
* struct wdsp_write_pkt - Format that userspace send the data to driver.
|
||||
* @pkt_type: Type of the packet(REG or CMD PKT)
|
||||
* @payload[0]: Payload is either cmd or reg pkt structure based on pkt type
|
||||
*/
|
||||
struct wdsp_write_pkt {
|
||||
__u8 pkt_type;
|
||||
__u8 payload[0];
|
||||
};
|
||||
|
||||
/*
|
||||
* struct wdsp_glink_ch_cfg - Defines the glink channel configuration.
|
||||
* @ch_name: Name of the glink channel
|
||||
* @latency_in_us: Latency specified in micro seconds for QOS
|
||||
* @no_of_intents: Number of intents prequeued
|
||||
* @intents_size[0]: Dynamic array to specify size of each intent
|
||||
*/
|
||||
struct wdsp_glink_ch_cfg {
|
||||
char name[WDSP_CH_NAME_MAX_LEN];
|
||||
__u32 latency_in_us;
|
||||
__u32 no_of_intents;
|
||||
__u32 intents_size[0];
|
||||
};
|
||||
#endif /* _WCD_DSP_GLINK_H */
|
Loading…
Add table
Reference in a new issue