Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/include/sound/da7219-aad.h
26282 views
1
/* SPDX-License-Identifier: GPL-2.0-or-later */
2
/*
3
* da7219-aad.h - DA7322 ASoC Codec AAD Driver Platform Data
4
*
5
* Copyright (c) 2015 Dialog Semiconductor Ltd.
6
*
7
* Author: Adam Thomson <[email protected]>
8
*/
9
10
#ifndef __DA7219_AAD_PDATA_H
11
#define __DA7219_AAD_PDATA_H
12
13
enum da7219_aad_micbias_pulse_lvl {
14
DA7219_AAD_MICBIAS_PULSE_LVL_OFF = 0,
15
DA7219_AAD_MICBIAS_PULSE_LVL_2_8V = 6,
16
DA7219_AAD_MICBIAS_PULSE_LVL_2_9V,
17
};
18
19
enum da7219_aad_btn_cfg {
20
DA7219_AAD_BTN_CFG_2MS = 1,
21
DA7219_AAD_BTN_CFG_5MS,
22
DA7219_AAD_BTN_CFG_10MS,
23
DA7219_AAD_BTN_CFG_50MS,
24
DA7219_AAD_BTN_CFG_100MS,
25
DA7219_AAD_BTN_CFG_200MS,
26
DA7219_AAD_BTN_CFG_500MS,
27
};
28
29
enum da7219_aad_mic_det_thr {
30
DA7219_AAD_MIC_DET_THR_200_OHMS = 0,
31
DA7219_AAD_MIC_DET_THR_500_OHMS,
32
DA7219_AAD_MIC_DET_THR_750_OHMS,
33
DA7219_AAD_MIC_DET_THR_1000_OHMS,
34
};
35
36
enum da7219_aad_jack_ins_deb {
37
DA7219_AAD_JACK_INS_DEB_5MS = 0,
38
DA7219_AAD_JACK_INS_DEB_10MS,
39
DA7219_AAD_JACK_INS_DEB_20MS,
40
DA7219_AAD_JACK_INS_DEB_50MS,
41
DA7219_AAD_JACK_INS_DEB_100MS,
42
DA7219_AAD_JACK_INS_DEB_200MS,
43
DA7219_AAD_JACK_INS_DEB_500MS,
44
DA7219_AAD_JACK_INS_DEB_1S,
45
};
46
47
enum da7219_aad_jack_ins_det_pty {
48
DA7219_AAD_JACK_INS_DET_PTY_LOW = 0,
49
DA7219_AAD_JACK_INS_DET_PTY_HIGH,
50
};
51
52
enum da7219_aad_jack_det_rate {
53
DA7219_AAD_JACK_DET_RATE_32_64MS = 0,
54
DA7219_AAD_JACK_DET_RATE_64_128MS,
55
DA7219_AAD_JACK_DET_RATE_128_256MS,
56
DA7219_AAD_JACK_DET_RATE_256_512MS,
57
};
58
59
enum da7219_aad_jack_rem_deb {
60
DA7219_AAD_JACK_REM_DEB_1MS = 0,
61
DA7219_AAD_JACK_REM_DEB_5MS,
62
DA7219_AAD_JACK_REM_DEB_10MS,
63
DA7219_AAD_JACK_REM_DEB_20MS,
64
};
65
66
enum da7219_aad_btn_avg {
67
DA7219_AAD_BTN_AVG_1 = 0,
68
DA7219_AAD_BTN_AVG_2,
69
DA7219_AAD_BTN_AVG_4,
70
DA7219_AAD_BTN_AVG_8,
71
};
72
73
enum da7219_aad_adc_1bit_rpt {
74
DA7219_AAD_ADC_1BIT_RPT_1 = 0,
75
DA7219_AAD_ADC_1BIT_RPT_2,
76
DA7219_AAD_ADC_1BIT_RPT_4,
77
DA7219_AAD_ADC_1BIT_RPT_8,
78
};
79
80
struct da7219_aad_pdata {
81
int irq;
82
83
enum da7219_aad_micbias_pulse_lvl micbias_pulse_lvl;
84
u32 micbias_pulse_time;
85
enum da7219_aad_btn_cfg btn_cfg;
86
enum da7219_aad_mic_det_thr mic_det_thr;
87
enum da7219_aad_jack_ins_deb jack_ins_deb;
88
enum da7219_aad_jack_ins_det_pty jack_ins_det_pty;
89
enum da7219_aad_jack_det_rate jack_det_rate;
90
enum da7219_aad_jack_rem_deb jack_rem_deb;
91
92
u8 a_d_btn_thr;
93
u8 d_b_btn_thr;
94
u8 b_c_btn_thr;
95
u8 c_mic_btn_thr;
96
97
enum da7219_aad_btn_avg btn_avg;
98
enum da7219_aad_adc_1bit_rpt adc_1bit_rpt;
99
};
100
101
#endif /* __DA7219_AAD_PDATA_H */
102
103