162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * tlv320aic32x4.h -- TLV320AIC32X4 Soc Audio driver platform data 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright 2011 Vista Silicon S.L. 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * Author: Javier Martin <javier.martin@vista-silicon.com> 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#ifndef _AIC32X4_PDATA_H 1162306a36Sopenharmony_ci#define _AIC32X4_PDATA_H 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci#define AIC32X4_PWR_MICBIAS_2075_LDOIN 0x00000001 1462306a36Sopenharmony_ci#define AIC32X4_PWR_AVDD_DVDD_WEAK_DISABLE 0x00000002 1562306a36Sopenharmony_ci#define AIC32X4_PWR_AIC32X4_LDO_ENABLE 0x00000004 1662306a36Sopenharmony_ci#define AIC32X4_PWR_CMMODE_LDOIN_RANGE_18_36 0x00000008 1762306a36Sopenharmony_ci#define AIC32X4_PWR_CMMODE_HP_LDOIN_POWERED 0x00000010 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci#define AIC32X4_MICPGA_ROUTE_LMIC_IN2R_10K 0x00000001 2062306a36Sopenharmony_ci#define AIC32X4_MICPGA_ROUTE_RMIC_IN1L_10K 0x00000002 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci/* GPIO API */ 2362306a36Sopenharmony_ci#define AIC32X4_MFPX_DEFAULT_VALUE 0xff 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci#define AIC32X4_MFP1_DIN_DISABLED 0 2662306a36Sopenharmony_ci#define AIC32X4_MFP1_DIN_ENABLED 0x2 2762306a36Sopenharmony_ci#define AIC32X4_MFP1_GPIO_IN 0x4 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci#define AIC32X4_MFP2_GPIO_OUT_LOW 0x0 3062306a36Sopenharmony_ci#define AIC32X4_MFP2_GPIO_OUT_HIGH 0x1 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci#define AIC32X4_MFP_GPIO_ENABLED 0x4 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci#define AIC32X4_MFP5_GPIO_DISABLED 0x0 3562306a36Sopenharmony_ci#define AIC32X4_MFP5_GPIO_INPUT 0x8 3662306a36Sopenharmony_ci#define AIC32X4_MFP5_GPIO_OUTPUT 0xc 3762306a36Sopenharmony_ci#define AIC32X4_MFP5_GPIO_OUT_LOW 0x0 3862306a36Sopenharmony_ci#define AIC32X4_MFP5_GPIO_OUT_HIGH 0x1 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_cistruct aic32x4_setup_data { 4162306a36Sopenharmony_ci unsigned int gpio_func[5]; 4262306a36Sopenharmony_ci}; 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_cistruct aic32x4_pdata { 4562306a36Sopenharmony_ci struct aic32x4_setup_data *setup; 4662306a36Sopenharmony_ci u32 power_cfg; 4762306a36Sopenharmony_ci u32 micpga_routing; 4862306a36Sopenharmony_ci bool swapdacs; 4962306a36Sopenharmony_ci int rstn_gpio; 5062306a36Sopenharmony_ci}; 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci#endif 53