Hi, bmg160 and bmi055 can be used via I2C and SPI. This series converts the driver to regmap and splits core driver and I2C/SPI. Changes in v3: - removed 'select REGMAP' as it is selected by REGMAP_I2C - added EXPORT_SYMBOL_GPL for the core functions - removed default values from regmap_config - Added max_register and unset use_single_rw in regmap_config - Changed Makefile to always compile bmg160-core with either spi or i2c. It is not possible now to compile the core alone. Changes in v2: - Added the id->name from the SPI driver to be used as iio device name - Fixed Kconfig in patch 2 to add selects for REGMAP_I2C - Fixed regmap configs to be static const Best regards, Markus Markus Pargmann (6): iio: bmg160: Use i2c regmap instead of direct i2c access iio: bmg160: Remove i2c_client from data struct iio: bmg160: Use generic dev_drvdata iio: bmg160: Remove remaining uses of i2c_client iio: bmg160: Separate i2c and core driver iio: bmg160: Add SPI driver drivers/iio/gyro/Kconfig | 28 ++- drivers/iio/gyro/Makefile | 3 +- drivers/iio/gyro/bmg160.h | 10 + drivers/iio/gyro/{bmg160.c => bmg160_core.c} | 358 +++++++++++---------------- drivers/iio/gyro/bmg160_i2c.c | 71 ++++++ drivers/iio/gyro/bmg160_spi.c | 57 +++++ 6 files changed, 306 insertions(+), 221 deletions(-) create mode 100644 drivers/iio/gyro/bmg160.h rename drivers/iio/gyro/{bmg160.c => bmg160_core.c} (74%) create mode 100644 drivers/iio/gyro/bmg160_i2c.c create mode 100644 drivers/iio/gyro/bmg160_spi.c -- 2.4.6 -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html