1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * tlv320aic32x4.h -- TLV320AIC32X4 Soc Audio driver platform data 4 * 5 * Copyright 2011 Vista Silicon S.L. 6 * 7 * Author: Javier Martin <javier.martin@vista-silicon.com> 8 */ 9 10 #ifndef _AIC32X4_PDATA_H 11 #define _AIC32X4_PDATA_H 12 13 #define AIC32X4_PWR_MICBIAS_2075_LDOIN 0x00000001 14 #define AIC32X4_PWR_AVDD_DVDD_WEAK_DISABLE 0x00000002 15 #define AIC32X4_PWR_AIC32X4_LDO_ENABLE 0x00000004 16 #define AIC32X4_PWR_CMMODE_LDOIN_RANGE_18_36 0x00000008 17 #define AIC32X4_PWR_CMMODE_HP_LDOIN_POWERED 0x00000010 18 19 #define AIC32X4_MICPGA_ROUTE_LMIC_IN2R_10K 0x00000001 20 #define AIC32X4_MICPGA_ROUTE_RMIC_IN1L_10K 0x00000002 21 22 /* GPIO API */ 23 #define AIC32X4_MFPX_DEFAULT_VALUE 0xff 24 25 #define AIC32X4_MFP1_DIN_DISABLED 0 26 #define AIC32X4_MFP1_DIN_ENABLED 0x2 27 #define AIC32X4_MFP1_GPIO_IN 0x4 28 29 #define AIC32X4_MFP2_GPIO_OUT_LOW 0x0 30 #define AIC32X4_MFP2_GPIO_OUT_HIGH 0x1 31 32 #define AIC32X4_MFP_GPIO_ENABLED 0x4 33 34 #define AIC32X4_MFP5_GPIO_DISABLED 0x0 35 #define AIC32X4_MFP5_GPIO_INPUT 0x8 36 #define AIC32X4_MFP5_GPIO_OUTPUT 0xc 37 #define AIC32X4_MFP5_GPIO_OUT_LOW 0x0 38 #define AIC32X4_MFP5_GPIO_OUT_HIGH 0x1 39 40 struct aic32x4_setup_data { 41 unsigned int gpio_func[5]; 42 }; 43 44 struct aic32x4_pdata { 45 struct aic32x4_setup_data *setup; 46 u32 power_cfg; 47 u32 micpga_routing; 48 bool swapdacs; 49 int rstn_gpio; 50 }; 51 52 #endif 53