Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/sound/soc/qcom/qdsp6/q6adm.h
26444 views
1
/* SPDX-License-Identifier: GPL-2.0 */
2
#ifndef __Q6_ADM_V2_H__
3
#define __Q6_ADM_V2_H__
4
5
#define ADM_PATH_PLAYBACK 0x1
6
#define ADM_PATH_LIVE_REC 0x2
7
#define MAX_COPPS_PER_PORT 8
8
#define NULL_COPP_TOPOLOGY 0x00010312
9
10
/* multiple copp per stream. */
11
struct route_payload {
12
int num_copps;
13
int session_id;
14
int copp_idx[MAX_COPPS_PER_PORT];
15
int port_id[MAX_COPPS_PER_PORT];
16
};
17
18
struct q6copp;
19
struct q6copp *q6adm_open(struct device *dev, int port_id, int path, int rate,
20
int channel_mode, int topology, int perf_mode,
21
uint16_t bit_width, int app_type, int acdb_id);
22
int q6adm_close(struct device *dev, struct q6copp *copp);
23
int q6adm_get_copp_id(struct q6copp *copp);
24
int q6adm_matrix_map(struct device *dev, int path,
25
struct route_payload payload_map, int perf_mode);
26
27
#endif /* __Q6_ADM_V2_H__ */
28
29