iio: adc: meson: add separate config for axg SoC family
authorGeorge Stark <gnstark@salutedevices.com>
Mon, 27 Nov 2023 23:55:58 +0000 (02:55 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 1 Jan 2024 12:42:36 +0000 (12:42 +0000)
[ Upstream commit 59b75dcb0953813676b5030877f3f37cedaed87d ]

According to Amlogic custom kernels ADC of axg SoC family has
vref_select and requires this setting to work nominally and thus
needs a separate config.

Fixes: 90c6241860bf ("iio: adc: meson: init voltage control bits")
Signed-off-by: George Stark <gnstark@salutedevices.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20231127235558.71995-1-gnstark@salutedevices.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iio/adc/meson_saradc.c

index 320e3e7..57cfabe 100644 (file)
@@ -1239,6 +1239,20 @@ static const struct meson_sar_adc_param meson_sar_adc_gxl_param = {
        .cmv_select = 1,
 };
 
+static const struct meson_sar_adc_param meson_sar_adc_axg_param = {
+       .has_bl30_integration = true,
+       .clock_rate = 1200000,
+       .bandgap_reg = MESON_SAR_ADC_REG11,
+       .regmap_config = &meson_sar_adc_regmap_config_gxbb,
+       .resolution = 12,
+       .disable_ring_counter = 1,
+       .has_reg11 = true,
+       .vref_volatge = 1,
+       .has_vref_select = true,
+       .vref_select = VREF_VDDA,
+       .cmv_select = 1,
+};
+
 static const struct meson_sar_adc_param meson_sar_adc_g12a_param = {
        .has_bl30_integration = false,
        .clock_rate = 1200000,
@@ -1283,7 +1297,7 @@ static const struct meson_sar_adc_data meson_sar_adc_gxm_data = {
 };
 
 static const struct meson_sar_adc_data meson_sar_adc_axg_data = {
-       .param = &meson_sar_adc_gxl_param,
+       .param = &meson_sar_adc_axg_param,
        .name = "meson-axg-saradc",
 };