forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
3.5 KiB
108 lines
3.5 KiB
/* SPDX-License-Identifier: GPL-2.0-or-later */ |
|
/* |
|
* Driver for ADAU1361/ADAU1461/ADAU1761/ADAU1961/ADAU1381/ADAU1781 codecs |
|
* |
|
* Copyright 2011-2014 Analog Devices Inc. |
|
* Author: Lars-Peter Clausen <[email protected]> |
|
*/ |
|
|
|
#ifndef __LINUX_PLATFORM_DATA_ADAU17X1_H__ |
|
#define __LINUX_PLATFORM_DATA_ADAU17X1_H__ |
|
|
|
/** |
|
* enum adau17x1_micbias_voltage - Microphone bias voltage |
|
* @ADAU17X1_MICBIAS_0_90_AVDD: 0.9 * AVDD |
|
* @ADAU17X1_MICBIAS_0_65_AVDD: 0.65 * AVDD |
|
*/ |
|
enum adau17x1_micbias_voltage { |
|
ADAU17X1_MICBIAS_0_90_AVDD = 0, |
|
ADAU17X1_MICBIAS_0_65_AVDD = 1, |
|
}; |
|
|
|
/** |
|
* enum adau1761_digmic_jackdet_pin_mode - Configuration of the JACKDET/MICIN pin |
|
* @ADAU1761_DIGMIC_JACKDET_PIN_MODE_NONE: Disable the pin |
|
* @ADAU1761_DIGMIC_JACKDET_PIN_MODE_DIGMIC: Configure the pin for usage as |
|
* digital microphone input. |
|
* @ADAU1761_DIGMIC_JACKDET_PIN_MODE_JACKDETECT: Configure the pin for jack |
|
* insertion detection. |
|
*/ |
|
enum adau1761_digmic_jackdet_pin_mode { |
|
ADAU1761_DIGMIC_JACKDET_PIN_MODE_NONE, |
|
ADAU1761_DIGMIC_JACKDET_PIN_MODE_DIGMIC, |
|
ADAU1761_DIGMIC_JACKDET_PIN_MODE_JACKDETECT, |
|
}; |
|
|
|
/** |
|
* adau1761_jackdetect_debounce_time - Jack insertion detection debounce time |
|
* @ADAU1761_JACKDETECT_DEBOUNCE_5MS: 5 milliseconds |
|
* @ADAU1761_JACKDETECT_DEBOUNCE_10MS: 10 milliseconds |
|
* @ADAU1761_JACKDETECT_DEBOUNCE_20MS: 20 milliseconds |
|
* @ADAU1761_JACKDETECT_DEBOUNCE_40MS: 40 milliseconds |
|
*/ |
|
enum adau1761_jackdetect_debounce_time { |
|
ADAU1761_JACKDETECT_DEBOUNCE_5MS = 0, |
|
ADAU1761_JACKDETECT_DEBOUNCE_10MS = 1, |
|
ADAU1761_JACKDETECT_DEBOUNCE_20MS = 2, |
|
ADAU1761_JACKDETECT_DEBOUNCE_40MS = 3, |
|
}; |
|
|
|
/** |
|
* enum adau1761_output_mode - Output mode configuration |
|
* @ADAU1761_OUTPUT_MODE_HEADPHONE: Headphone output |
|
* @ADAU1761_OUTPUT_MODE_HEADPHONE_CAPLESS: Capless headphone output |
|
* @ADAU1761_OUTPUT_MODE_LINE: Line output |
|
*/ |
|
enum adau1761_output_mode { |
|
ADAU1761_OUTPUT_MODE_HEADPHONE, |
|
ADAU1761_OUTPUT_MODE_HEADPHONE_CAPLESS, |
|
ADAU1761_OUTPUT_MODE_LINE, |
|
}; |
|
|
|
/** |
|
* struct adau1761_platform_data - ADAU1761 Codec driver platform data |
|
* @input_differential: If true the input pins will be configured in |
|
* differential mode. |
|
* @lineout_mode: Output mode for the LOUT/ROUT pins |
|
* @headphone_mode: Output mode for the LHP/RHP pins |
|
* @digmic_jackdetect_pin_mode: JACKDET/MICIN pin configuration |
|
* @jackdetect_debounce_time: Jack insertion detection debounce time. |
|
* Note: This value will only be used, if the JACKDET/MICIN pin is configured |
|
* for jack insertion detection. |
|
* @jackdetect_active_low: If true the jack insertion detection is active low. |
|
* Othwise it will be active high. |
|
* @micbias_voltage: Microphone voltage bias |
|
*/ |
|
struct adau1761_platform_data { |
|
bool input_differential; |
|
enum adau1761_output_mode lineout_mode; |
|
enum adau1761_output_mode headphone_mode; |
|
|
|
enum adau1761_digmic_jackdet_pin_mode digmic_jackdetect_pin_mode; |
|
|
|
enum adau1761_jackdetect_debounce_time jackdetect_debounce_time; |
|
bool jackdetect_active_low; |
|
|
|
enum adau17x1_micbias_voltage micbias_voltage; |
|
}; |
|
|
|
/** |
|
* struct adau1781_platform_data - ADAU1781 Codec driver platform data |
|
* @left_input_differential: If true configure the left input as |
|
* differential input. |
|
* @right_input_differential: If true configure the right input as differntial |
|
* input. |
|
* @use_dmic: If true configure the MIC pins as digital microphone pins instead |
|
* of analog microphone pins. |
|
* @micbias_voltage: Microphone voltage bias |
|
*/ |
|
struct adau1781_platform_data { |
|
bool left_input_differential; |
|
bool right_input_differential; |
|
|
|
bool use_dmic; |
|
|
|
enum adau17x1_micbias_voltage micbias_voltage; |
|
}; |
|
|
|
#endif
|
|
|