18ecbabd9SMisael Lopez Cruz /* 28ecbabd9SMisael Lopez Cruz * ALSA SoC TWL6040 codec driver 38ecbabd9SMisael Lopez Cruz * 48ecbabd9SMisael Lopez Cruz * Author: Misael Lopez Cruz <x0052729@ti.com> 58ecbabd9SMisael Lopez Cruz * 68ecbabd9SMisael Lopez Cruz * This program is free software; you can redistribute it and/or 78ecbabd9SMisael Lopez Cruz * modify it under the terms of the GNU General Public License 88ecbabd9SMisael Lopez Cruz * version 2 as published by the Free Software Foundation. 98ecbabd9SMisael Lopez Cruz * 108ecbabd9SMisael Lopez Cruz * This program is distributed in the hope that it will be useful, but 118ecbabd9SMisael Lopez Cruz * WITHOUT ANY WARRANTY; without even the implied warranty of 128ecbabd9SMisael Lopez Cruz * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 138ecbabd9SMisael Lopez Cruz * General Public License for more details. 148ecbabd9SMisael Lopez Cruz * 158ecbabd9SMisael Lopez Cruz * You should have received a copy of the GNU General Public License 168ecbabd9SMisael Lopez Cruz * along with this program; if not, write to the Free Software 178ecbabd9SMisael Lopez Cruz * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 188ecbabd9SMisael Lopez Cruz * 02110-1301 USA 198ecbabd9SMisael Lopez Cruz * 208ecbabd9SMisael Lopez Cruz */ 218ecbabd9SMisael Lopez Cruz 228ecbabd9SMisael Lopez Cruz #ifndef __TWL6040_H__ 238ecbabd9SMisael Lopez Cruz #define __TWL6040_H__ 248ecbabd9SMisael Lopez Cruz 25*db4aabccSPeter Ujfalusi enum twl6040_trim { 26*db4aabccSPeter Ujfalusi TWL6040_TRIM_TRIM1 = 0, 27*db4aabccSPeter Ujfalusi TWL6040_TRIM_TRIM2, 28*db4aabccSPeter Ujfalusi TWL6040_TRIM_TRIM3, 29*db4aabccSPeter Ujfalusi TWL6040_TRIM_HSOTRIM, 30*db4aabccSPeter Ujfalusi TWL6040_TRIM_HFOTRIM, 31*db4aabccSPeter Ujfalusi TWL6040_TRIM_INVAL, 32*db4aabccSPeter Ujfalusi }; 33*db4aabccSPeter Ujfalusi 34*db4aabccSPeter Ujfalusi #define TWL6040_HSF_TRIM_LEFT(x) (x & 0x0f) 35*db4aabccSPeter Ujfalusi #define TWL6040_HSF_TRIM_RIGHT(x) ((x >> 4) & 0x0f) 36*db4aabccSPeter Ujfalusi 37a2d2362eSJorge Eduardo Candelaria void twl6040_hs_jack_detect(struct snd_soc_codec *codec, 38a2d2362eSJorge Eduardo Candelaria struct snd_soc_jack *jack, int report); 39af958c72SPeter Ujfalusi int twl6040_get_clk_id(struct snd_soc_codec *codec); 40*db4aabccSPeter Ujfalusi int twl6040_get_trim_value(struct snd_soc_codec *codec, enum twl6040_trim trim); 41a2d2362eSJorge Eduardo Candelaria 428ecbabd9SMisael Lopez Cruz #endif /* End of __TWL6040_H__ */ 43