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.
65 lines
1.7 KiB
65 lines
1.7 KiB
/* SPDX-License-Identifier: GPL-2.0-only */ |
|
/* |
|
* Platform data for Texas Instruments TLV320AIC3x codec |
|
* |
|
* Author: Jarkko Nikula <[email protected]> |
|
*/ |
|
#ifndef __TLV320AIC3x_H__ |
|
#define __TLV320AIC3x_H__ |
|
|
|
/* GPIO API */ |
|
enum { |
|
AIC3X_GPIO1_FUNC_DISABLED = 0, |
|
AIC3X_GPIO1_FUNC_AUDIO_WORDCLK_ADC = 1, |
|
AIC3X_GPIO1_FUNC_CLOCK_MUX = 2, |
|
AIC3X_GPIO1_FUNC_CLOCK_MUX_DIV2 = 3, |
|
AIC3X_GPIO1_FUNC_CLOCK_MUX_DIV4 = 4, |
|
AIC3X_GPIO1_FUNC_CLOCK_MUX_DIV8 = 5, |
|
AIC3X_GPIO1_FUNC_SHORT_CIRCUIT_IRQ = 6, |
|
AIC3X_GPIO1_FUNC_AGC_NOISE_IRQ = 7, |
|
AIC3X_GPIO1_FUNC_INPUT = 8, |
|
AIC3X_GPIO1_FUNC_OUTPUT = 9, |
|
AIC3X_GPIO1_FUNC_DIGITAL_MIC_MODCLK = 10, |
|
AIC3X_GPIO1_FUNC_AUDIO_WORDCLK = 11, |
|
AIC3X_GPIO1_FUNC_BUTTON_IRQ = 12, |
|
AIC3X_GPIO1_FUNC_HEADSET_DETECT_IRQ = 13, |
|
AIC3X_GPIO1_FUNC_HEADSET_DETECT_OR_BUTTON_IRQ = 14, |
|
AIC3X_GPIO1_FUNC_ALL_IRQ = 16 |
|
}; |
|
|
|
enum { |
|
AIC3X_GPIO2_FUNC_DISABLED = 0, |
|
AIC3X_GPIO2_FUNC_HEADSET_DETECT_IRQ = 2, |
|
AIC3X_GPIO2_FUNC_INPUT = 3, |
|
AIC3X_GPIO2_FUNC_OUTPUT = 4, |
|
AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT = 5, |
|
AIC3X_GPIO2_FUNC_AUDIO_BITCLK = 8, |
|
AIC3X_GPIO2_FUNC_HEADSET_DETECT_OR_BUTTON_IRQ = 9, |
|
AIC3X_GPIO2_FUNC_ALL_IRQ = 10, |
|
AIC3X_GPIO2_FUNC_SHORT_CIRCUIT_OR_AGC_IRQ = 11, |
|
AIC3X_GPIO2_FUNC_HEADSET_OR_BUTTON_PRESS_OR_SHORT_CIRCUIT_IRQ = 12, |
|
AIC3X_GPIO2_FUNC_SHORT_CIRCUIT_IRQ = 13, |
|
AIC3X_GPIO2_FUNC_AGC_NOISE_IRQ = 14, |
|
AIC3X_GPIO2_FUNC_BUTTON_PRESS_IRQ = 15 |
|
}; |
|
|
|
enum aic3x_micbias_voltage { |
|
AIC3X_MICBIAS_OFF = 0, |
|
AIC3X_MICBIAS_2_0V = 1, |
|
AIC3X_MICBIAS_2_5V = 2, |
|
AIC3X_MICBIAS_AVDDV = 3, |
|
}; |
|
|
|
struct aic3x_setup_data { |
|
unsigned int gpio_func[2]; |
|
}; |
|
|
|
struct aic3x_pdata { |
|
int gpio_reset; /* < 0 if not used */ |
|
struct aic3x_setup_data *setup; |
|
|
|
/* Selects the micbias voltage */ |
|
enum aic3x_micbias_voltage micbias_vg; |
|
}; |
|
|
|
#endif
|
|
|