Changes in v3: - Add STX104_ prefixes to defines to avoid potential name classes - Rename SAME_CHANNEL() to STX104_SINGLE_CHANNEL() to convey intention better - Utilize u8_encode_bits() to define STX104_SOFTWARE_TRIGGER - Adjust to utilize reg_base members in regmap_config structures - Fix off-by-one errors in aio_data_wr_ranges[], aio_data_rd_ranges[], and aio_data_regmap_config max_register - Inline gpio_config initialization to avoid zeroing it at declaration - Add blank lines between register map init blocks for clarity - Utilize regmap_read_poll_timeout() for ADC conversion status poll Changes in v2: - Relocate struct stx104_iio for the sake of a clearer patch diff - Replace FIELD_PREP() and FIELD_GET() with u8_encode_bits() and u8_get_bits() The regmap API supports IO port accessors so we can take advantage of regmap abstractions rather than handling access to the device registers directly in the driver. A patch to utilize regmap_read_poll_timeout() for polling the ADC conversion status is included as follow-up to make the git history clearer for this change. William Breathitt Gray (2): iio: addac: stx104: Migrate to the regmap API iio: addac: stx104: Use regmap_read_poll_timeout() for conversion poll drivers/iio/addac/Kconfig | 2 + drivers/iio/addac/stx104.c | 434 +++++++++++++++++++++---------------- 2 files changed, 244 insertions(+), 192 deletions(-) base-commit: 46e33707fe95a21aa9896bded0be97285b779509 -- 2.39.2