[PATCH 0/2][Xenial SRU] UBUNTU: SAUCE: lng2dm 3-axis accelerometer support

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[PATCH 0/2][Xenial SRU] UBUNTU: SAUCE: lng2dm 3-axis accelerometer support

Shrirang Bagul
BugLink: http://bugs.launchpad.net/bugs/1650112

Dell Caracalla Edge gateways have lng2dm 3-axis accelerometer on board.
The following patches add kernel driver support for this sensor.

Lorenzo Bianconi (2):
  iio: accel: st_accel: add support to lng2dm
  Documentation: dt: iio: accel: add lng2dm sensor device binding

 .../devicetree/bindings/iio/st-sensors.txt         |   3 +
 drivers/iio/accel/Kconfig                          |   3 +-
 drivers/iio/accel/st_accel.h                       |   3 +
 drivers/iio/accel/st_accel_core.c                  | 223 +++++++++++++++++++++
 drivers/iio/accel/st_accel_i2c.c                   |  19 ++
 drivers/iio/accel/st_accel_spi.c                   |   3 +
 6 files changed, 253 insertions(+), 1 deletion(-)

--
2.9.3


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[PATCH 1/2][Xenial SRU] UBUNTU: SAUCE: iio: accel: st_accel: add support to lng2dm

Shrirang Bagul
From: Lorenzo Bianconi <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1650112

add support to STMicroelectronics LNG2DM accelerometer to
st_accel framework

Signed-off-by: Lorenzo Bianconi <[hidden email]>
Signed-off-by: Jonathan Cameron <[hidden email]>
(cherry picked from commit dcdb0a78cab39efbfa00f005fd2691a07335f41e)
(source: git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git)
Signed-off-by: Shrirang Bagul <[hidden email]>
---
 drivers/iio/accel/Kconfig         |   3 +-
 drivers/iio/accel/st_accel.h      |   3 +
 drivers/iio/accel/st_accel_core.c | 223 ++++++++++++++++++++++++++++++++++++++
 drivers/iio/accel/st_accel_i2c.c  |  19 ++++
 drivers/iio/accel/st_accel_spi.c  |   3 +
 5 files changed, 250 insertions(+), 1 deletion(-)

diff --git a/drivers/iio/accel/Kconfig b/drivers/iio/accel/Kconfig
index 16cc5c6..596ebeb 100644
--- a/drivers/iio/accel/Kconfig
+++ b/drivers/iio/accel/Kconfig
@@ -64,7 +64,8 @@ config IIO_ST_ACCEL_3AXIS
  help
   Say yes here to build support for STMicroelectronics accelerometers:
   LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
-  LIS331DLH, LSM303DL, LSM303DLM, LSM330.
+  LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
+  LNG2DM
 
   This driver can also be built as a module. If so, these modules
   will be created:
diff --git a/drivers/iio/accel/st_accel.h b/drivers/iio/accel/st_accel.h
index 468f21f..25ea008 100644
--- a/drivers/iio/accel/st_accel.h
+++ b/drivers/iio/accel/st_accel.h
@@ -27,6 +27,9 @@
 #define LSM303DLM_ACCEL_DEV_NAME "lsm303dlm_accel"
 #define LSM330_ACCEL_DEV_NAME "lsm330_accel"
 #define LSM303AGR_ACCEL_DEV_NAME "lsm303agr_accel"
+#define LIS2DH12_ACCEL_DEV_NAME "lis2dh12_accel"
+#define LIS3L02DQ_ACCEL_DEV_NAME "lis3l02dq"
+#define LNG2DM_ACCEL_DEV_NAME "lng2dm"
 
 /**
 * struct st_sensors_platform_data - default accel platform data
diff --git a/drivers/iio/accel/st_accel_core.c b/drivers/iio/accel/st_accel_core.c
index 197a08b..b572c61 100644
--- a/drivers/iio/accel/st_accel_core.c
+++ b/drivers/iio/accel/st_accel_core.c
@@ -39,6 +39,9 @@
 #define ST_ACCEL_FS_AVL_6G 6
 #define ST_ACCEL_FS_AVL_8G 8
 #define ST_ACCEL_FS_AVL_16G 16
+#define ST_ACCEL_FS_AVL_100G 100
+#define ST_ACCEL_FS_AVL_200G 200
+#define ST_ACCEL_FS_AVL_400G 400
 
 /* CUSTOM VALUES FOR SENSOR 1 */
 #define ST_ACCEL_1_WAI_EXP 0x33
@@ -173,6 +176,55 @@
 #define ST_ACCEL_5_IG1_EN_MASK 0x08
 #define ST_ACCEL_5_MULTIREAD_BIT false
 
+/* CUSTOM VALUES FOR SENSOR 6 */
+#define ST_ACCEL_6_WAI_EXP 0x32
+#define ST_ACCEL_6_ODR_ADDR 0x20
+#define ST_ACCEL_6_ODR_MASK 0x18
+#define ST_ACCEL_6_ODR_AVL_50HZ_VAL 0x00
+#define ST_ACCEL_6_ODR_AVL_100HZ_VAL 0x01
+#define ST_ACCEL_6_ODR_AVL_400HZ_VAL 0x02
+#define ST_ACCEL_6_ODR_AVL_1000HZ_VAL 0x03
+#define ST_ACCEL_6_PW_ADDR 0x20
+#define ST_ACCEL_6_PW_MASK 0x20
+#define ST_ACCEL_6_FS_ADDR 0x23
+#define ST_ACCEL_6_FS_MASK 0x30
+#define ST_ACCEL_6_FS_AVL_100_VAL 0x00
+#define ST_ACCEL_6_FS_AVL_200_VAL 0x01
+#define ST_ACCEL_6_FS_AVL_400_VAL 0x03
+#define ST_ACCEL_6_FS_AVL_100_GAIN IIO_G_TO_M_S_2(49000)
+#define ST_ACCEL_6_FS_AVL_200_GAIN IIO_G_TO_M_S_2(98000)
+#define ST_ACCEL_6_FS_AVL_400_GAIN IIO_G_TO_M_S_2(195000)
+#define ST_ACCEL_6_BDU_ADDR 0x23
+#define ST_ACCEL_6_BDU_MASK 0x80
+#define ST_ACCEL_6_DRDY_IRQ_ADDR 0x22
+#define ST_ACCEL_6_DRDY_IRQ_INT1_MASK 0x02
+#define ST_ACCEL_6_DRDY_IRQ_INT2_MASK 0x10
+#define ST_ACCEL_6_IHL_IRQ_ADDR 0x22
+#define ST_ACCEL_6_IHL_IRQ_MASK 0x80
+#define ST_ACCEL_6_MULTIREAD_BIT true
+
+/* CUSTOM VALUES FOR SENSOR 7 */
+#define ST_ACCEL_7_ODR_ADDR 0x20
+#define ST_ACCEL_7_ODR_MASK 0x30
+#define ST_ACCEL_7_ODR_AVL_280HZ_VAL 0x00
+#define ST_ACCEL_7_ODR_AVL_560HZ_VAL 0x01
+#define ST_ACCEL_7_ODR_AVL_1120HZ_VAL 0x02
+#define ST_ACCEL_7_ODR_AVL_4480HZ_VAL 0x03
+#define ST_ACCEL_7_PW_ADDR 0x20
+#define ST_ACCEL_7_PW_MASK 0xc0
+#define ST_ACCEL_7_FS_AVL_2_GAIN IIO_G_TO_M_S_2(488)
+#define ST_ACCEL_7_BDU_ADDR 0x21
+#define ST_ACCEL_7_BDU_MASK 0x40
+#define ST_ACCEL_7_DRDY_IRQ_ADDR 0x21
+#define ST_ACCEL_7_DRDY_IRQ_INT1_MASK 0x04
+#define ST_ACCEL_7_MULTIREAD_BIT false
+
+/* CUSTOM VALUES FOR SENSOR 8 */
+#define ST_ACCEL_8_FS_AVL_2_GAIN IIO_G_TO_M_S_2(15600)
+#define ST_ACCEL_8_FS_AVL_4_GAIN IIO_G_TO_M_S_2(31200)
+#define ST_ACCEL_8_FS_AVL_8_GAIN IIO_G_TO_M_S_2(62500)
+#define ST_ACCEL_8_FS_AVL_16_GAIN IIO_G_TO_M_S_2(187500)
+
 static const struct iio_chan_spec st_accel_8bit_channels[] = {
  ST_SENSORS_LSM_CHANNELS(IIO_ACCEL,
  BIT(IIO_CHAN_INFO_RAW) | BIT(IIO_CHAN_INFO_SCALE),
@@ -540,6 +592,177 @@ static const struct st_sensor_settings st_accel_sensors_settings[] = {
  .multi_read_bit = ST_ACCEL_5_MULTIREAD_BIT,
  .bootime = 2, /* guess */
  },
+ {
+ .wai = ST_ACCEL_6_WAI_EXP,
+ .wai_addr = ST_SENSORS_DEFAULT_WAI_ADDRESS,
+ .sensors_supported = {
+ [0] = H3LIS331DL_DRIVER_NAME,
+ },
+ .ch = (struct iio_chan_spec *)st_accel_12bit_channels,
+ .odr = {
+ .addr = ST_ACCEL_6_ODR_ADDR,
+ .mask = ST_ACCEL_6_ODR_MASK,
+ .odr_avl = {
+ { 50, ST_ACCEL_6_ODR_AVL_50HZ_VAL },
+ { 100, ST_ACCEL_6_ODR_AVL_100HZ_VAL, },
+ { 400, ST_ACCEL_6_ODR_AVL_400HZ_VAL, },
+ { 1000, ST_ACCEL_6_ODR_AVL_1000HZ_VAL, },
+ },
+ },
+ .pw = {
+ .addr = ST_ACCEL_6_PW_ADDR,
+ .mask = ST_ACCEL_6_PW_MASK,
+ .value_on = ST_SENSORS_DEFAULT_POWER_ON_VALUE,
+ .value_off = ST_SENSORS_DEFAULT_POWER_OFF_VALUE,
+ },
+ .enable_axis = {
+ .addr = ST_SENSORS_DEFAULT_AXIS_ADDR,
+ .mask = ST_SENSORS_DEFAULT_AXIS_MASK,
+ },
+ .fs = {
+ .addr = ST_ACCEL_6_FS_ADDR,
+ .mask = ST_ACCEL_6_FS_MASK,
+ .fs_avl = {
+ [0] = {
+ .num = ST_ACCEL_FS_AVL_100G,
+ .value = ST_ACCEL_6_FS_AVL_100_VAL,
+ .gain = ST_ACCEL_6_FS_AVL_100_GAIN,
+ },
+ [1] = {
+ .num = ST_ACCEL_FS_AVL_200G,
+ .value = ST_ACCEL_6_FS_AVL_200_VAL,
+ .gain = ST_ACCEL_6_FS_AVL_200_GAIN,
+ },
+ [2] = {
+ .num = ST_ACCEL_FS_AVL_400G,
+ .value = ST_ACCEL_6_FS_AVL_400_VAL,
+ .gain = ST_ACCEL_6_FS_AVL_400_GAIN,
+ },
+ },
+ },
+ .bdu = {
+ .addr = ST_ACCEL_6_BDU_ADDR,
+ .mask = ST_ACCEL_6_BDU_MASK,
+ },
+ .drdy_irq = {
+ .addr = ST_ACCEL_6_DRDY_IRQ_ADDR,
+ .mask_int1 = ST_ACCEL_6_DRDY_IRQ_INT1_MASK,
+ .mask_int2 = ST_ACCEL_6_DRDY_IRQ_INT2_MASK,
+ },
+ .multi_read_bit = ST_ACCEL_6_MULTIREAD_BIT,
+ .bootime = 2,
+ },
+ {
+ /* No WAI register present */
+ .sensors_supported = {
+ [0] = LIS3L02DQ_ACCEL_DEV_NAME,
+ },
+ .ch = (struct iio_chan_spec *)st_accel_12bit_channels,
+ .odr = {
+ .addr = ST_ACCEL_7_ODR_ADDR,
+ .mask = ST_ACCEL_7_ODR_MASK,
+ .odr_avl = {
+ { 280, ST_ACCEL_7_ODR_AVL_280HZ_VAL, },
+ { 560, ST_ACCEL_7_ODR_AVL_560HZ_VAL, },
+ { 1120, ST_ACCEL_7_ODR_AVL_1120HZ_VAL, },
+ { 4480, ST_ACCEL_7_ODR_AVL_4480HZ_VAL, },
+ },
+ },
+ .pw = {
+ .addr = ST_ACCEL_7_PW_ADDR,
+ .mask = ST_ACCEL_7_PW_MASK,
+ .value_on = ST_SENSORS_DEFAULT_POWER_ON_VALUE,
+ .value_off = ST_SENSORS_DEFAULT_POWER_OFF_VALUE,
+ },
+ .enable_axis = {
+ .addr = ST_SENSORS_DEFAULT_AXIS_ADDR,
+ .mask = ST_SENSORS_DEFAULT_AXIS_MASK,
+ },
+ .fs = {
+ .fs_avl = {
+ [0] = {
+ .num = ST_ACCEL_FS_AVL_2G,
+ .gain = ST_ACCEL_7_FS_AVL_2_GAIN,
+ },
+ },
+ },
+ /*
+ * The part has a BDU bit but if set the data is never
+ * updated so don't set it.
+ */
+ .bdu = {
+ },
+ .drdy_irq = {
+ .addr = ST_ACCEL_7_DRDY_IRQ_ADDR,
+ .mask_int1 = ST_ACCEL_7_DRDY_IRQ_INT1_MASK,
+ },
+ .multi_read_bit = ST_ACCEL_7_MULTIREAD_BIT,
+ .bootime = 2,
+ },
+ {
+ .wai = ST_ACCEL_1_WAI_EXP,
+ .wai_addr = ST_SENSORS_DEFAULT_WAI_ADDRESS,
+ .sensors_supported = {
+ [0] = LNG2DM_ACCEL_DEV_NAME,
+ },
+ .ch = (struct iio_chan_spec *)st_accel_8bit_channels,
+ .odr = {
+ .addr = ST_ACCEL_1_ODR_ADDR,
+ .mask = ST_ACCEL_1_ODR_MASK,
+ .odr_avl = {
+ { 1, ST_ACCEL_1_ODR_AVL_1HZ_VAL, },
+ { 10, ST_ACCEL_1_ODR_AVL_10HZ_VAL, },
+ { 25, ST_ACCEL_1_ODR_AVL_25HZ_VAL, },
+ { 50, ST_ACCEL_1_ODR_AVL_50HZ_VAL, },
+ { 100, ST_ACCEL_1_ODR_AVL_100HZ_VAL, },
+ { 200, ST_ACCEL_1_ODR_AVL_200HZ_VAL, },
+ { 400, ST_ACCEL_1_ODR_AVL_400HZ_VAL, },
+ { 1600, ST_ACCEL_1_ODR_AVL_1600HZ_VAL, },
+ },
+ },
+ .pw = {
+ .addr = ST_ACCEL_1_ODR_ADDR,
+ .mask = ST_ACCEL_1_ODR_MASK,
+ .value_off = ST_SENSORS_DEFAULT_POWER_OFF_VALUE,
+ },
+ .enable_axis = {
+ .addr = ST_SENSORS_DEFAULT_AXIS_ADDR,
+ .mask = ST_SENSORS_DEFAULT_AXIS_MASK,
+ },
+ .fs = {
+ .addr = ST_ACCEL_1_FS_ADDR,
+ .mask = ST_ACCEL_1_FS_MASK,
+ .fs_avl = {
+ [0] = {
+ .num = ST_ACCEL_FS_AVL_2G,
+ .value = ST_ACCEL_1_FS_AVL_2_VAL,
+ .gain = ST_ACCEL_8_FS_AVL_2_GAIN,
+ },
+ [1] = {
+ .num = ST_ACCEL_FS_AVL_4G,
+ .value = ST_ACCEL_1_FS_AVL_4_VAL,
+ .gain = ST_ACCEL_8_FS_AVL_4_GAIN,
+ },
+ [2] = {
+ .num = ST_ACCEL_FS_AVL_8G,
+ .value = ST_ACCEL_1_FS_AVL_8_VAL,
+ .gain = ST_ACCEL_8_FS_AVL_8_GAIN,
+ },
+ [3] = {
+ .num = ST_ACCEL_FS_AVL_16G,
+ .value = ST_ACCEL_1_FS_AVL_16_VAL,
+ .gain = ST_ACCEL_8_FS_AVL_16_GAIN,
+ },
+ },
+ },
+ .drdy_irq = {
+ .addr = ST_ACCEL_1_DRDY_IRQ_ADDR,
+ .mask_int1 = ST_ACCEL_1_DRDY_IRQ_INT1_MASK,
+ .mask_int2 = ST_ACCEL_1_DRDY_IRQ_INT2_MASK,
+ },
+ .multi_read_bit = ST_ACCEL_1_MULTIREAD_BIT,
+ .bootime = 2,
+ },
 };
 
 static int st_accel_read_raw(struct iio_dev *indio_dev,
diff --git a/drivers/iio/accel/st_accel_i2c.c b/drivers/iio/accel/st_accel_i2c.c
index 8b9cc84..c0f8867 100644
--- a/drivers/iio/accel/st_accel_i2c.c
+++ b/drivers/iio/accel/st_accel_i2c.c
@@ -72,6 +72,22 @@ static const struct of_device_id st_accel_of_match[] = {
  .compatible = "st,lsm303agr-accel",
  .data = LSM303AGR_ACCEL_DEV_NAME,
  },
+ {
+ .compatible = "st,lis2dh12-accel",
+ .data = LIS2DH12_ACCEL_DEV_NAME,
+ },
+ {
+ .compatible = "st,h3lis331dl-accel",
+ .data = H3LIS331DL_DRIVER_NAME,
+ },
+ {
+ .compatible = "st,lis3l02dq",
+ .data = LIS3L02DQ_ACCEL_DEV_NAME,
+ },
+ {
+ .compatible = "st,lng2dm-accel",
+ .data = LNG2DM_ACCEL_DEV_NAME,
+ },
  {},
 };
 MODULE_DEVICE_TABLE(of, st_accel_of_match);
@@ -121,6 +137,9 @@ static const struct i2c_device_id st_accel_id_table[] = {
  { LSM303DLM_ACCEL_DEV_NAME },
  { LSM330_ACCEL_DEV_NAME },
  { LSM303AGR_ACCEL_DEV_NAME },
+ { LIS2DH12_ACCEL_DEV_NAME },
+ { LIS3L02DQ_ACCEL_DEV_NAME },
+ { LNG2DM_ACCEL_DEV_NAME },
  {},
 };
 MODULE_DEVICE_TABLE(i2c, st_accel_id_table);
diff --git a/drivers/iio/accel/st_accel_spi.c b/drivers/iio/accel/st_accel_spi.c
index f71b0d3..c25ac50 100644
--- a/drivers/iio/accel/st_accel_spi.c
+++ b/drivers/iio/accel/st_accel_spi.c
@@ -58,6 +58,9 @@ static const struct spi_device_id st_accel_id_table[] = {
  { LSM303DLM_ACCEL_DEV_NAME },
  { LSM330_ACCEL_DEV_NAME },
  { LSM303AGR_ACCEL_DEV_NAME },
+ { LIS2DH12_ACCEL_DEV_NAME },
+ { LIS3L02DQ_ACCEL_DEV_NAME },
+ { LNG2DM_ACCEL_DEV_NAME },
  {},
 };
 MODULE_DEVICE_TABLE(spi, st_accel_id_table);
--
2.9.3


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

[PATCH 2/2][Xenial SRU] UBUNTU: SAUCE: Documentation: dt: iio: accel: add lng2dm sensor device binding

Shrirang Bagul
In reply to this post by Shrirang Bagul
From: Lorenzo Bianconi <[hidden email]>

BugLink: http://bugs.launchpad.net/bugs/1650112

Signed-off-by: Lorenzo Bianconi <[hidden email]>
Signed-off-by: Jonathan Cameron <[hidden email]>
(cherry picked from commit 1fbf148106326a457779934d00f55fc5417e35d9)
(source git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git)
Signed-off-by: Shrirang Bagul <[hidden email]>
---
 Documentation/devicetree/bindings/iio/st-sensors.txt | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/iio/st-sensors.txt b/Documentation/devicetree/bindings/iio/st-sensors.txt
index b25fe92..372a49a 100644
--- a/Documentation/devicetree/bindings/iio/st-sensors.txt
+++ b/Documentation/devicetree/bindings/iio/st-sensors.txt
@@ -36,6 +36,9 @@ Accelerometers:
 - st,lsm303dlm-accel
 - st,lsm330-accel
 - st,lsm303agr-accel
+- st,lis2dh12-accel
+- st,h3lis331dl-accel
+- st,lng2dm-accel
 
 Gyroscopes:
 - st,l3g4200d-gyro
--
2.9.3


--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

NAK: [PATCH 0/2][Xenial SRU] UBUNTU: SAUCE: lng2dm 3-axis accelerometer support

Tim Gardner-2
In reply to this post by Shrirang Bagul
Patch 1 isn't even close to a clean cherry-pick, nor is the source as
noted in the commit log. Have you considered fetching all of the updates
to that sensor driver ?

The following changes since commit 0885e08ead1b16fd6f9cbe6641082dac04a1ca64:

  xen/qspinlock: Don't kick CPU if IRQ is not initialized (2016-12-15
10:07:13 +0000)

are available in the git repository at:

  git://kernel.ubuntu.com/rtg/ubuntu-xenial.git st-accel

for you to fetch changes up to bb0016c47b97265931c5ed0b988dec80efb32fa7:

  Documentation: dt: iio: accel: add lng2dm sensor device binding
(2016-12-15 07:14:03 -0700)

----------------------------------------------------------------
Giuseppe Barba (1):
      iio: st-accel: add support for lis2dh12

Gregor Boirie (1):
      iio:st_sensors: fix power regulator usage

Jonathan Cameron (1):
      iio: accel: st_accel: Add lis3l02dq support

Linus Walleij (5):
      iio: st_sensors: support active-low interrupts
      iio: st_sensors: verify interrupt event to status
      iio: st_sensors: support open drain mode
      iio: st_sensors: switch to a threaded interrupt
      iio: accel: st_accel: inline per-sensor data

Lorenzo Bianconi (3):
      iio: st_sensors: fix scale configuration for h3lis331dl
      iio: accel: st_accel: add support to lng2dm
      Documentation: dt: iio: accel: add lng2dm sensor device binding

Tiberiu Breana (1):
      iio: accel: Add support for the h3lis331dl accelerometer

 Documentation/devicetree/bindings/iio/st-sensors.txt |   7 ++
 drivers/iio/accel/Kconfig                            |   3 +-
 drivers/iio/accel/st_accel.h                         |   4 +
 drivers/iio/accel/st_accel_buffer.c                  |   2 +-
 drivers/iio/accel/st_accel_core.c                    | 614
+++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------
 drivers/iio/accel/st_accel_i2c.c                     |  19 +++
 drivers/iio/accel/st_accel_spi.c                     |   3 +
 drivers/iio/common/st_sensors/st_sensors_buffer.c    |   9 +-
 drivers/iio/common/st_sensors/st_sensors_core.c      |  93 +++++++++++----
 drivers/iio/common/st_sensors/st_sensors_core.h      |   8 ++
 drivers/iio/common/st_sensors/st_sensors_trigger.c   | 147
+++++++++++++++++++++--
 drivers/iio/gyro/st_gyro_buffer.c                    |   2 +-
 drivers/iio/gyro/st_gyro_core.c                      |  31 ++++-
 drivers/iio/magnetometer/st_magn_buffer.c            |   2 +-
 drivers/iio/magnetometer/st_magn_core.c              |  18 ++-
 drivers/iio/pressure/st_pressure_buffer.c            |   2 +-
 drivers/iio/pressure/st_pressure_core.c              |  31 ++++-
 include/linux/iio/common/st_sensors.h                |  24 +++-
 include/linux/platform_data/st_sensors_pdata.h       |   2 +
 19 files changed, 700 insertions(+), 321 deletions(-)
 create mode 100644 drivers/iio/common/st_sensors/st_sensors_core.h

--
Tim Gardner [hidden email]

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team
Reply | Threaded
Open this post in threaded view
|

Re: NAK: [PATCH 0/2][Xenial SRU] UBUNTU: SAUCE: lng2dm 3-axis accelerometer support

Shrirang Bagul
I did consider fetching all the the updates, but felt that the amount of changes
to the st_sensors common code was too much just to support one sensor. Another
reason is that we don't have the hardware to test for regressions that these
updates might introduce for sensors other than lng2dm. Although, it was a
mistake marking the patch as "cherry picked" when certainly its a "backport".

I'll pull the patches as per your suggestion and test it on the HW we have
before submitting them again.

-Shrirang

On Thu, 2016-12-15 at 07:19 -0700, Tim Gardner wrote:

> Patch 1 isn't even close to a clean cherry-pick, nor is the source as
> noted in the commit log. Have you considered fetching all of the updates
> to that sensor driver ?
>
> The following changes since commit 0885e08ead1b16fd6f9cbe6641082dac04a1ca64:
>
>   xen/qspinlock: Don't kick CPU if IRQ is not initialized (2016-12-15
> 10:07:13 +0000)
>
> are available in the git repository at:
>
>   git://kernel.ubuntu.com/rtg/ubuntu-xenial.git st-accel
>
> for you to fetch changes up to bb0016c47b97265931c5ed0b988dec80efb32fa7:
>
>   Documentation: dt: iio: accel: add lng2dm sensor device binding
> (2016-12-15 07:14:03 -0700)
>
> ----------------------------------------------------------------
> Giuseppe Barba (1):
>       iio: st-accel: add support for lis2dh12
>
> Gregor Boirie (1):
>       iio:st_sensors: fix power regulator usage
>
> Jonathan Cameron (1):
>       iio: accel: st_accel: Add lis3l02dq support
>
> Linus Walleij (5):
>       iio: st_sensors: support active-low interrupts
>       iio: st_sensors: verify interrupt event to status
>       iio: st_sensors: support open drain mode
>       iio: st_sensors: switch to a threaded interrupt
>       iio: accel: st_accel: inline per-sensor data
>
> Lorenzo Bianconi (3):
>       iio: st_sensors: fix scale configuration for h3lis331dl
>       iio: accel: st_accel: add support to lng2dm
>       Documentation: dt: iio: accel: add lng2dm sensor device binding
>
> Tiberiu Breana (1):
>       iio: accel: Add support for the h3lis331dl accelerometer
>
>  Documentation/devicetree/bindings/iio/st-sensors.txt |   7 ++
>  drivers/iio/accel/Kconfig                            |   3 +-
>  drivers/iio/accel/st_accel.h                         |   4 +
>  drivers/iio/accel/st_accel_buffer.c                  |   2 +-
>  drivers/iio/accel/st_accel_core.c                    | 614
> +++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------
> ----------------
>  drivers/iio/accel/st_accel_i2c.c                     |  19 +++
>  drivers/iio/accel/st_accel_spi.c                     |   3 +
>  drivers/iio/common/st_sensors/st_sensors_buffer.c    |   9 +-
>  drivers/iio/common/st_sensors/st_sensors_core.c      |  93 +++++++++++----
>  drivers/iio/common/st_sensors/st_sensors_core.h      |   8 ++
>  drivers/iio/common/st_sensors/st_sensors_trigger.c   | 147
> +++++++++++++++++++++--
>  drivers/iio/gyro/st_gyro_buffer.c                    |   2 +-
>  drivers/iio/gyro/st_gyro_core.c                      |  31 ++++-
>  drivers/iio/magnetometer/st_magn_buffer.c            |   2 +-
>  drivers/iio/magnetometer/st_magn_core.c              |  18 ++-
>  drivers/iio/pressure/st_pressure_buffer.c            |   2 +-
>  drivers/iio/pressure/st_pressure_core.c              |  31 ++++-
>  include/linux/iio/common/st_sensors.h                |  24 +++-
>  include/linux/platform_data/st_sensors_pdata.h       |   2 +
>  19 files changed, 700 insertions(+), 321 deletions(-)
>  create mode 100644 drivers/iio/common/st_sensors/st_sensors_core.h
>

--
kernel-team mailing list
[hidden email]
https://lists.ubuntu.com/mailman/listinfo/kernel-team