1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-only */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * ALSA SoC TWL6040 codec driver 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Author: Misael Lopez Cruz <x0052729@ti.com> 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef __TWL6040_H__ 9*4882a593Smuzhiyun #define __TWL6040_H__ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun enum twl6040_trim { 12*4882a593Smuzhiyun TWL6040_TRIM_TRIM1 = 0, 13*4882a593Smuzhiyun TWL6040_TRIM_TRIM2, 14*4882a593Smuzhiyun TWL6040_TRIM_TRIM3, 15*4882a593Smuzhiyun TWL6040_TRIM_HSOTRIM, 16*4882a593Smuzhiyun TWL6040_TRIM_HFOTRIM, 17*4882a593Smuzhiyun TWL6040_TRIM_INVAL, 18*4882a593Smuzhiyun }; 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #define TWL6040_HSF_TRIM_LEFT(x) (x & 0x0f) 21*4882a593Smuzhiyun #define TWL6040_HSF_TRIM_RIGHT(x) ((x >> 4) & 0x0f) 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun int twl6040_get_dl1_gain(struct snd_soc_component *component); 24*4882a593Smuzhiyun void twl6040_hs_jack_detect(struct snd_soc_component *component, 25*4882a593Smuzhiyun struct snd_soc_jack *jack, int report); 26*4882a593Smuzhiyun int twl6040_get_clk_id(struct snd_soc_component *component); 27*4882a593Smuzhiyun int twl6040_get_trim_value(struct snd_soc_component *component, enum twl6040_trim trim); 28*4882a593Smuzhiyun int twl6040_get_hs_step_size(struct snd_soc_component *component); 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #endif /* End of __TWL6040_H__ */ 31