Unverified Commit f1230a27 authored by Zhu Ning's avatar Zhu Ning Committed by Mark Brown
Browse files

ASoC: codecs: ES8326: Change Volatile Reg function



The new calibration and headphone detection function
require reading new volatile registers. Add them in
the volatile register function.

Signed-off-by: default avatarZhu Ning <zhuning0077@gmail.com>
Link: https://lore.kernel.org/r/20230717033223.42506-2-zhuning0077@gmail.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 4ddad00c
Loading
Loading
Loading
Loading
+14 −9
Original line number Diff line number Diff line
@@ -158,20 +158,25 @@ static const struct snd_soc_dapm_route es8326_dapm_routes[] = {
	{"HPOR", NULL, "RHPMIX"},
};

static const struct regmap_range es8326_volatile_ranges[] = {
	regmap_reg_range(ES8326_HPDET_STA, ES8326_HPDET_STA),
};

static const struct regmap_access_table es8326_volatile_table = {
	.yes_ranges = es8326_volatile_ranges,
	.n_yes_ranges = ARRAY_SIZE(es8326_volatile_ranges),
};
static bool es8326_volatile_register(struct device *dev, unsigned int reg)
{
	switch (reg) {
	case ES8326_HPL_OFFSET_INI:
	case ES8326_HPR_OFFSET_INI:
	case ES8326_HPDET_STA:
	case ES8326_CTIA_OMTP_STA:
	case ES8326_CSM_MUTE_STA:
		return true;
	default:
		return false;
	}
}

static const struct regmap_config es8326_regmap_config = {
	.reg_bits = 8,
	.val_bits = 8,
	.max_register = 0xff,
	.volatile_table = &es8326_volatile_table,
	.volatile_reg = es8326_volatile_register,
	.cache_type = REGCACHE_RBTREE,
};