I made basic improvements based on the previous code including removing the use of division when setting the scale and setting the sample frequency and using devm_regulator_bulk_get. Cheers, - Dan Changes in v8: * Fixup MAINTAINERS entry * Remove the use od division when setting scale and sample frequency * Use devm_regulator_bulk_get Changes in v7: * Added MAINTAINERS entry * Added basic vddio and vdd regulator support * Added vddio and vdd supply to devicetree bindings * Added interrupts to devicetree bindings Changes in v6: * Improve readability Kconfig options Changes in v5: * Move to using a function instead of lookup tables for scale and frequency conversions. * Rename DT bindings to bosch,bma400.yaml * Fixed other errors and improvements found by reviewers Changes in v4: * Fix error in DT bindings * Fix typo when setting the OSR * Simplified the cached sample frequency * Fix the MODULE_LICENSE Changes in v3: * Use yaml format for DT bindings * Remove strict dependency on OF * Tidy Kconfig dependencies * Stylistic changes * Do not soft-reset device on remove Changes in v2: * Implemented iio_info -> read_avail * Stylistic changes * Implemented devicetree bindings Dan Robertson (3): dt-bindings: iio: accel: bma400: add bindings iio: (bma400) add driver for the BMA400 iio: (bma400) basic regulator support .../bindings/iio/accel/bosch,bma400.yaml | 54 ++ MAINTAINERS | 7 + drivers/iio/accel/Kconfig | 17 + drivers/iio/accel/Makefile | 2 + drivers/iio/accel/bma400.h | 99 ++ drivers/iio/accel/bma400_core.c | 849 ++++++++++++++++++ drivers/iio/accel/bma400_i2c.c | 61 ++ 7 files changed, 1089 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/accel/bosch,bma400.yaml create mode 100644 drivers/iio/accel/bma400.h create mode 100644 drivers/iio/accel/bma400_core.c create mode 100644 drivers/iio/accel/bma400_i2c.c