iio: adc: aspeed: Remove the trim valid dts property.

The dts property "aspeed,trim-data-valid" is currently used to determine
whether to read trimming data from the OTP register. If this is set on
a device without valid trimming data in the OTP the ADC will not function
correctly. This patch drops the use of this property and instead uses the
default (unprogrammed) OTP value of 0 to detect when a fallback value of
0x8 should be used rather then the value read from the OTP.

Fixes: d0a4c17b40 ("iio: adc: aspeed: Get and set trimming data.")
Signed-off-by: Billy Tsai <billy_tsai@aspeedtech.com>
Link: https://lore.kernel.org/r/20221114025057.10843-1-billy_tsai@aspeedtech.com
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
Billy Tsai 2022-11-14 10:50:56 +08:00 коммит произвёл Jonathan Cameron
Родитель 4ad09d956f
Коммит fdd0d6b2eb
1 изменённых файлов: 5 добавлений и 6 удалений

Просмотреть файл

@ -202,6 +202,8 @@ static int aspeed_adc_set_trim_data(struct iio_dev *indio_dev)
((scu_otp) & ((scu_otp) &
(data->model_data->trim_locate->field)) >> (data->model_data->trim_locate->field)) >>
__ffs(data->model_data->trim_locate->field); __ffs(data->model_data->trim_locate->field);
if (!trimming_val)
trimming_val = 0x8;
} }
dev_dbg(data->dev, dev_dbg(data->dev,
"trimming val = %d, offset = %08x, fields = %08x\n", "trimming val = %d, offset = %08x, fields = %08x\n",
@ -563,12 +565,9 @@ static int aspeed_adc_probe(struct platform_device *pdev)
if (ret) if (ret)
return ret; return ret;
if (of_find_property(data->dev->of_node, "aspeed,trim-data-valid", ret = aspeed_adc_set_trim_data(indio_dev);
NULL)) { if (ret)
ret = aspeed_adc_set_trim_data(indio_dev); return ret;
if (ret)
return ret;
}
if (of_find_property(data->dev->of_node, "aspeed,battery-sensing", if (of_find_property(data->dev->of_node, "aspeed,battery-sensing",
NULL)) { NULL)) {