mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
ASoC: twl6040: Function to fetch the TRIM values
Provide API to fetch the TRIM values (for machine drivers) Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
f97217f18e
commit
db4aabcc1f
@ -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__ */
|
||||
|
Loading…
Reference in New Issue
Block a user