drivers/iio/adc/imx93_adc.c | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-)
imx93 ADC calibration has requirement for reference voltage:
ADC reference voltage Noise < 1.8V * 1/2^ENOB
Some boards can't meet such requirement, ADC calibration failed on these
boards, and adc can't be used. This is not appropriate, board can't meet
this requirement do not means ADC can't work, just means ADC can't work
that accurate. Here add an optimization, keep adc works even calibration
failed.
Changes in V2:
- add patch 1 to keep one style of the hex values according to
Andy Shevchenko's suggestion.
- keep {} when give the calibration failed warning log.
For the register 0x3A0, it is a new added register in latest imx93 RM,
please refer to this link:
https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-9-processors/i-mx-93-applications-processor-family-arm-cortex-a55-ml-acceleration-power-efficient-mpu:i.MX93
Patch v1 also pass test on one customer board, refer to this topic:
https://patchwork.kernel.org/project/linux-iio/patch/20250710073905.1105417-2-primoz.fiser@norik.com/
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
---
Haibo Chen (2):
iio: adc: imx93_adc: keep one style of the hex values
iio: adc: imx93_adc: load calibrated values even calibration failed
drivers/iio/adc/imx93_adc.c | 22 +++++++++++++++++-----
1 file changed, 17 insertions(+), 5 deletions(-)
---
base-commit: 2674d1eadaa2fd3a918dfcdb6d0bb49efe8a8bb9
change-id: 20250812-adc-839e49d55da9
Best regards,
--
Haibo Chen <haibo.chen@nxp.com>
On Tue, 12 Aug 2025 16:04:21 +0800
Haibo Chen <haibo.chen@nxp.com> wrote:
> imx93 ADC calibration has requirement for reference voltage:
> ADC reference voltage Noise < 1.8V * 1/2^ENOB
>
> Some boards can't meet such requirement, ADC calibration failed on these
> boards, and adc can't be used. This is not appropriate, board can't meet
> this requirement do not means ADC can't work, just means ADC can't work
> that accurate. Here add an optimization, keep adc works even calibration
> failed.
>
> Changes in V2:
> - add patch 1 to keep one style of the hex values according to
> Andy Shevchenko's suggestion.
> - keep {} when give the calibration failed warning log.
>
> For the register 0x3A0, it is a new added register in latest imx93 RM,
> please refer to this link:
> https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-9-processors/i-mx-93-applications-processor-family-arm-cortex-a55-ml-acceleration-power-efficient-mpu:i.MX93
>
> Patch v1 also pass test on one customer board, refer to this topic:
> https://patchwork.kernel.org/project/linux-iio/patch/20250710073905.1105417-2-primoz.fiser@norik.com/
>
> Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Series applied to the togreg branch of iio.git.
I'll push that out as testing to get a bit of build coverage before
risking letting next see it.
Thanks,
Jonathan
> ---
> Haibo Chen (2):
> iio: adc: imx93_adc: keep one style of the hex values
> iio: adc: imx93_adc: load calibrated values even calibration failed
>
> drivers/iio/adc/imx93_adc.c | 22 +++++++++++++++++-----
> 1 file changed, 17 insertions(+), 5 deletions(-)
> ---
> base-commit: 2674d1eadaa2fd3a918dfcdb6d0bb49efe8a8bb9
> change-id: 20250812-adc-839e49d55da9
>
> Best regards,
© 2016 - 2026 Red Hat, Inc.