提交 db4aabcc 编写于 作者: P Peter Ujfalusi 提交者: Mark Brown

ASoC: twl6040: Function to fetch the TRIM values

Provide API to fetch the TRIM values (for machine drivers)
Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
上级 f97217f1
......@@ -1072,6 +1072,15 @@ int twl6040_get_clk_id(struct snd_soc_codec *codec)
}
EXPORT_SYMBOL_GPL(twl6040_get_clk_id);
int twl6040_get_trim_value(struct snd_soc_codec *codec, enum twl6040_trim trim)
{
if (unlikely(trim >= TWL6040_TRIM_INVAL))
return -EINVAL;
return twl6040_read_reg_cache(codec, TWL6040_REG_TRIM1 + trim);
}
EXPORT_SYMBOL_GPL(twl6040_get_trim_value);
static const struct snd_kcontrol_new twl6040_snd_controls[] = {
/* Capture gains */
SOC_DOUBLE_TLV("Capture Preamplifier Volume",
......
......@@ -22,8 +22,21 @@
#ifndef __TWL6040_H__
#define __TWL6040_H__
enum twl6040_trim {
TWL6040_TRIM_TRIM1 = 0,
TWL6040_TRIM_TRIM2,
TWL6040_TRIM_TRIM3,
TWL6040_TRIM_HSOTRIM,
TWL6040_TRIM_HFOTRIM,
TWL6040_TRIM_INVAL,
};
#define TWL6040_HSF_TRIM_LEFT(x) (x & 0x0f)
#define TWL6040_HSF_TRIM_RIGHT(x) ((x >> 4) & 0x0f)
void twl6040_hs_jack_detect(struct snd_soc_codec *codec,
struct snd_soc_jack *jack, int report);
int twl6040_get_clk_id(struct snd_soc_codec *codec);
int twl6040_get_trim_value(struct snd_soc_codec *codec, enum twl6040_trim trim);
#endif /* End of __TWL6040_H__ */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册