This patchset adds support of ADC2 internal channels VDDCORE, VREFINT and VBAT on STM32MP15x SoCs. The generic IIO channel bindings is also introduced here to provide this feature. The legacy channel binding is kept for backward compatibility. Changes in v2: - Add 'deprecated' to channels legacy properties in ADC bindings - Add set/clr service for common registers, to make code more generic in internal channels enable/disable services. - Expose vrefint channel as a processed channel to return the actual value of vrefp. - Minor code improvements Changes in v3: - fix vrefint sampling time check. Changes in v4: - fix binding - add dedicated spin lock for common register - manage probe_defer on nvmem read Changes in v5: - fix binding example Olivier Moysan (7): dt-bindings: iio: stm32-adc: add generic channel binding dt-bindings: iio: stm32-adc: add nvmem support for vrefint internal channel iio: adc: stm32-adc: split channel init into several routines iio: adc: stm32-adc: add support of generic channels binding iio: adc: stm32-adc: add support of internal channels iio: adc: stm32-adc: add vrefint calibration support iio: adc: stm32-adc: use generic binding for sample-time .../bindings/iio/adc/st,stm32-adc.yaml | 108 ++++- drivers/iio/adc/stm32-adc-core.c | 1 + drivers/iio/adc/stm32-adc-core.h | 10 + drivers/iio/adc/stm32-adc.c | 422 ++++++++++++++++-- 4 files changed, 486 insertions(+), 55 deletions(-) -- 2.17.1