Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
  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 <Adam.Thomson.Opensource@diasemi.com>
  8 */
  9
 10#ifndef __DA7219_AAD_PDATA_H
 11#define __DA7219_AAD_PDATA_H
 12
 13enum 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
 19enum 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
 29enum 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
 36enum 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
 47enum 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
 52enum 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
 59enum 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
 66enum 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
 73enum 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
 80struct 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 */