Patch series adds driver and dt-binding for Murata SCA3300 accelerometer. Device is a 3-axis Accelerometer with digital SPI interface. Patches are tested and based on linux-next. Changes V5: Addressed comments from Andy Shevchenko - Reversed xtree declaration fix - Add clarifying comment and spacing Changes V4: Addressed comments from Andy Shevchenko - Regrouped and renamed #define statements - Added cacheline alignment for tx/rx buffers - Changed irq handler print to be ratelimited - Commented use of goto in irq handler - Removed redundant 0x0 value - Spacing errors fixed - Removed redundant return statement Changes V3: Addressed comments from Jonathan Cameron and Andy Shevchenko - Grouped include statements - Revised SCA* define naming and grouped statements - Changed to GENMASK() for masks - Indentation fix for ACCEL_CHANNEL define - Remove field declarations using default values - Change to if(ret) style for checking return values - Add defined mask value SCA3300_MASK_STATUS for return status - Remove redundant casts - Clarify comment wording - Refactor to remove variable idx and redundant else branches - Unify sleep in device init, separate sleeps not needed since operation mode change dropped - Drop redundant memory allocation error message in probe - dev.parent is set by iio core, removed from driver probe - Drop of_match_ptr() Changes V2: Addressed comments from Jonathan Cameron - Add manufacturer name to dt-binding file - Update spdx license statement for dt-bindings - Remove murata,opmode devicetree property in favor of driver scale + frequency properties - Add copyright year for driver - Remove X_READ and X_WRITE defines - Add _available sysfs attributes - Fix errors in documentation formatting - Use ARRAY_SIZE where applicable - Use get/put_unaligned_be16() helpers where applicable - Factor out error handling to separate function - Return only negative values from transfer function - Fix INFO_SCALE to return multiplier instead of inverted value - Change INFO_SCALE values to be actual scale instead of mode value - Do not provide INFO_PROCESSED values for user space - Add error message for failed data read in irq handler - Move trigger handler timestamping as part of pushing data to buffers - Document startup sequence, providing reference to data sheet section - Convert iio_triggered_buffer_setup to devm_iio_triggered_buffer_setup, making remove() obsolete Tomas Melin (2): dt-bindings: iio: accel: Add SCA3300 documentation iio: accel: Add driver for Murata SCA3300 accelerometer .../bindings/iio/accel/murata,sca3300.yaml | 44 ++ drivers/iio/accel/Kconfig | 13 + drivers/iio/accel/Makefile | 1 + drivers/iio/accel/sca3300.c | 472 ++++++++++++++++++ 4 files changed, 530 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/accel/murata,sca3300.yaml create mode 100644 drivers/iio/accel/sca3300.c -- 2.21.3