[{"id":1784079,"web_url":"http://patchwork.ozlabs.org/comment/1784079/","msgid":"<20171010203914.0a50b20b@archlinux>","list_archive_url":null,"date":"2017-10-10T19:39:14","subject":"Re: [PATCH 1/4] iio: st_sensors: split open-drain parameters for\n\tirq1 and irq2","submitter":{"id":10151,"url":"http://patchwork.ozlabs.org/api/people/10151/","name":"Jonathan Cameron","email":"jic23@kernel.org"},"content":"On Sun, 17 Sep 2017 18:17:09 +0200\nLorenzo Bianconi <lorenzo.bianconi83@gmail.com> wrote:\n\n> Define st_sensor_int_drdy structure in st_sensor_data_ready_irq in order\n> to contain irq line parameters of the device.\n> Moreover separate data-ready open-drain configuration parameters for INT1\n> and INT2 pins in st_sensor_data_ready_irq data structure.\n> That change will be used to properly support LIS3DHH accel sensor.\n> \n> Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com>\n\nApplied to the togreg branch of iio.git and pushed out as testing\nfor the autobuilders to play with it.\n\nThanks,\n\nJonathan\n\n> ---\n>  drivers/iio/accel/st_accel_core.c               | 18 ++++++++++------\n>  drivers/iio/common/st_sensors/st_sensors_core.c | 21 ++++++++++++++-----\n>  drivers/iio/pressure/st_pressure_core.c         | 14 +++++++------\n>  include/linux/iio/common/st_sensors.h           | 28 ++++++++++++++-----------\n>  4 files changed, 52 insertions(+), 29 deletions(-)\n> \n> diff --git a/drivers/iio/accel/st_accel_core.c b/drivers/iio/accel/st_accel_core.c\n> index 731ec3a4c82b..c88db25a1aff 100644\n> --- a/drivers/iio/accel/st_accel_core.c\n> +++ b/drivers/iio/accel/st_accel_core.c\n> @@ -236,15 +236,17 @@ static const struct st_sensor_settings st_accel_sensors_settings[] = {\n>  \t\t\t.int1 = {\n>  \t\t\t\t.addr = 0x22,\n>  \t\t\t\t.mask = 0x02,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.int2 = {\n>  \t\t\t\t.addr = 0x22,\n>  \t\t\t\t.mask = 0x10,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.addr_ihl = 0x22,\n>  \t\t\t.mask_ihl = 0x80,\n> -\t\t\t.addr_od = 0x22,\n> -\t\t\t.mask_od = 0x40,\n>  \t\t\t.stat_drdy = {\n>  \t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n>  \t\t\t\t.mask = 0x07,\n> @@ -468,15 +470,17 @@ static const struct st_sensor_settings st_accel_sensors_settings[] = {\n>  \t\t\t.int1 = {\n>  \t\t\t\t.addr = 0x22,\n>  \t\t\t\t.mask = 0x04,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.int2 = {\n>  \t\t\t\t.addr = 0x22,\n>  \t\t\t\t.mask = 0x20,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.addr_ihl = 0x22,\n>  \t\t\t.mask_ihl = 0x80,\n> -\t\t\t.addr_od = 0x22,\n> -\t\t\t.mask_od = 0x40,\n>  \t\t\t.stat_drdy = {\n>  \t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n>  \t\t\t\t.mask = 0x07,\n> @@ -750,15 +754,17 @@ static const struct st_sensor_settings st_accel_sensors_settings[] = {\n>  \t\t\t.int1 = {\n>  \t\t\t\t.addr = 0x23,\n>  \t\t\t\t.mask = 0x01,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x20,\n>  \t\t\t},\n>  \t\t\t.int2 = {\n>  \t\t\t\t.addr = 0x24,\n>  \t\t\t\t.mask = 0x01,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x20,\n>  \t\t\t},\n>  \t\t\t.addr_ihl = 0x22,\n>  \t\t\t.mask_ihl = 0x08,\n> -\t\t\t.addr_od = 0x22,\n> -\t\t\t.mask_od = 0x20,\n>  \t\t\t.stat_drdy = {\n>  \t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n>  \t\t\t\t.mask = 0x01,\n> diff --git a/drivers/iio/common/st_sensors/st_sensors_core.c b/drivers/iio/common/st_sensors/st_sensors_core.c\n> index 6657160b5a73..40dfdfc0906b 100644\n> --- a/drivers/iio/common/st_sensors/st_sensors_core.c\n> +++ b/drivers/iio/common/st_sensors/st_sensors_core.c\n> @@ -319,7 +319,8 @@ static int st_sensors_set_drdy_int_pin(struct iio_dev *indio_dev,\n>  \t}\n>  \n>  \tif (pdata->open_drain) {\n> -\t\tif (!sdata->sensor_settings->drdy_irq.addr_od)\n> +\t\tif (!sdata->sensor_settings->drdy_irq.int1.addr_od &&\n> +\t\t    !sdata->sensor_settings->drdy_irq.int2.addr_od)\n>  \t\t\tdev_err(&indio_dev->dev,\n>  \t\t\t\t\"open drain requested but unsupported.\\n\");\n>  \t\telse\n> @@ -446,11 +447,21 @@ int st_sensors_init_sensor(struct iio_dev *indio_dev,\n>  \t}\n>  \n>  \tif (sdata->int_pin_open_drain) {\n> +\t\tu8 addr, mask;\n> +\n> +\t\tif (sdata->drdy_int_pin == 1) {\n> +\t\t\taddr = sdata->sensor_settings->drdy_irq.int1.addr_od;\n> +\t\t\tmask = sdata->sensor_settings->drdy_irq.int1.mask_od;\n> +\t\t} else {\n> +\t\t\taddr = sdata->sensor_settings->drdy_irq.int2.addr_od;\n> +\t\t\tmask = sdata->sensor_settings->drdy_irq.int2.mask_od;\n> +\t\t}\n> +\n>  \t\tdev_info(&indio_dev->dev,\n> -\t\t\t \"set interrupt line to open drain mode\\n\");\n> -\t\terr = st_sensors_write_data_with_mask(indio_dev,\n> -\t\t\t\tsdata->sensor_settings->drdy_irq.addr_od,\n> -\t\t\t\tsdata->sensor_settings->drdy_irq.mask_od, 1);\n> +\t\t\t \"set interrupt line to open drain mode on pin %d\\n\",\n> +\t\t\t sdata->drdy_int_pin);\n> +\t\terr = st_sensors_write_data_with_mask(indio_dev, addr,\n> +\t\t\t\t\t\t      mask, 1);\n>  \t\tif (err < 0)\n>  \t\t\treturn err;\n>  \t}\n> diff --git a/drivers/iio/pressure/st_pressure_core.c b/drivers/iio/pressure/st_pressure_core.c\n> index 15ad6054d9f6..349e5c713c03 100644\n> --- a/drivers/iio/pressure/st_pressure_core.c\n> +++ b/drivers/iio/pressure/st_pressure_core.c\n> @@ -283,15 +283,17 @@ static const struct st_sensor_settings st_press_sensors_settings[] = {\n>  \t\t\t.int1 = {\n>  \t\t\t\t.addr = 0x22,\n>  \t\t\t\t.mask = 0x04,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.int2 = {\n>  \t\t\t\t.addr = 0x22,\n>  \t\t\t\t.mask = 0x20,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.addr_ihl = 0x22,\n>  \t\t\t.mask_ihl = 0x80,\n> -\t\t\t.addr_od = 0x22,\n> -\t\t\t.mask_od = 0x40,\n>  \t\t\t.stat_drdy = {\n>  \t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n>  \t\t\t\t.mask = 0x03,\n> @@ -404,11 +406,11 @@ static const struct st_sensor_settings st_press_sensors_settings[] = {\n>  \t\t\t.int1 = {\n>  \t\t\t\t.addr = 0x23,\n>  \t\t\t\t.mask = 0x01,\n> +\t\t\t\t.addr_od = 0x22,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.addr_ihl = 0x22,\n>  \t\t\t.mask_ihl = 0x80,\n> -\t\t\t.addr_od = 0x22,\n> -\t\t\t.mask_od = 0x40,\n>  \t\t\t.stat_drdy = {\n>  \t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n>  \t\t\t\t.mask = 0x03,\n> @@ -473,11 +475,11 @@ static const struct st_sensor_settings st_press_sensors_settings[] = {\n>  \t\t\t.int1 = {\n>  \t\t\t\t.addr = 0x12,\n>  \t\t\t\t.mask = 0x04,\n> +\t\t\t\t.addr_od = 0x12,\n> +\t\t\t\t.mask_od = 0x40,\n>  \t\t\t},\n>  \t\t\t.addr_ihl = 0x12,\n>  \t\t\t.mask_ihl = 0x80,\n> -\t\t\t.addr_od = 0x12,\n> -\t\t\t.mask_od = 0x40,\n>  \t\t\t.stat_drdy = {\n>  \t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n>  \t\t\t\t.mask = 0x03,\n> diff --git a/include/linux/iio/common/st_sensors.h b/include/linux/iio/common/st_sensors.h\n> index e6c646d5d6d4..f9bd6e8ab138 100644\n> --- a/include/linux/iio/common/st_sensors.h\n> +++ b/include/linux/iio/common/st_sensors.h\n> @@ -130,32 +130,36 @@ struct st_sensor_das {\n>  \tu8 mask;\n>  };\n>  \n> +/**\n> + * struct st_sensor_int_drdy - ST sensor device drdy line parameters\n> + * @addr: address of INT drdy register.\n> + * @mask: mask to enable drdy line.\n> + * @addr_od: address to enable/disable Open Drain on the INT line.\n> + * @mask_od: mask to enable/disable Open Drain on the INT line.\n> + */\n> +struct st_sensor_int_drdy {\n> +\tu8 addr;\n> +\tu8 mask;\n> +\tu8 addr_od;\n> +\tu8 mask_od;\n> +};\n> +\n>  /**\n>   * struct st_sensor_data_ready_irq - ST sensor device data-ready interrupt\n>   * struct int1 - data-ready configuration register for INT1 pin.\n>   * struct int2 - data-ready configuration register for INT2 pin.\n>   * @addr_ihl: address to enable/disable active low on the INT lines.\n>   * @mask_ihl: mask to enable/disable active low on the INT lines.\n> - * @addr_od: address to enable/disable Open Drain on the INT lines.\n> - * @mask_od: mask to enable/disable Open Drain on the INT lines.\n>   * struct stat_drdy - status register of DRDY (data ready) interrupt.\n>   * struct ig1 - represents the Interrupt Generator 1 of sensors.\n>   * @en_addr: address of the enable ig1 register.\n>   * @en_mask: mask to write the on/off value for enable.\n>   */\n>  struct st_sensor_data_ready_irq {\n> -\tstruct {\n> -\t\tu8 addr;\n> -\t\tu8 mask;\n> -\t} int1;\n> -\tstruct {\n> -\t\tu8 addr;\n> -\t\tu8 mask;\n> -\t} int2;\n> +\tstruct st_sensor_int_drdy int1;\n> +\tstruct st_sensor_int_drdy int2;\n>  \tu8 addr_ihl;\n>  \tu8 mask_ihl;\n> -\tu8 addr_od;\n> -\tu8 mask_od;\n>  \tstruct {\n>  \t\tu8 addr;\n>  \t\tu8 mask;\n\n--\nTo unsubscribe from this list: send the line \"unsubscribe devicetree\" in\nthe body of a message to majordomo@vger.kernel.org\nMore majordomo info at  http://vger.kernel.org/majordomo-info.html","headers":{"Return-Path":"<devicetree-owner@vger.kernel.org>","X-Original-To":"incoming-dt@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-dt@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=devicetree-owner@vger.kernel.org; receiver=<UNKNOWN>)","mail.kernel.org;\n\tdmarc=none (p=none dis=none) header.from=kernel.org","mail.kernel.org;\n\tspf=none smtp.mailfrom=jic23@kernel.org"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3yBSF24zK9z9sCZ\n\tfor <incoming-dt@patchwork.ozlabs.org>;\n\tWed, 11 Oct 2017 06:42:30 +1100 (AEDT)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1754212AbdJJTm3 (ORCPT\n\t<rfc822;incoming-dt@patchwork.ozlabs.org>);\n\tTue, 10 Oct 2017 15:42:29 -0400","from mail.kernel.org ([198.145.29.99]:59440 \"EHLO mail.kernel.org\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1755999AbdJJTm2 (ORCPT <rfc822;devicetree@vger.kernel.org>);\n\tTue, 10 Oct 2017 15:42:28 -0400","from archlinux (cpc91196-cmbg18-2-0-cust659.5-4.cable.virginm.net\n\t[81.96.234.148])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby mail.kernel.org (Postfix) with ESMTPSA id 36E36218D7;\n\tTue, 10 Oct 2017 19:42:27 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mail.kernel.org 36E36218D7","Date":"Tue, 10 Oct 2017 20:39:14 +0100","From":"Jonathan Cameron <jic23@kernel.org>","To":"Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>","Cc":"linux-iio@vger.kernel.org, lorenzo.bianconi@st.com,\n\tdevicetree@vger.kernel.org","Subject":"Re: [PATCH 1/4] iio: st_sensors: split open-drain parameters for\n\tirq1 and irq2","Message-ID":"<20171010203914.0a50b20b@archlinux>","In-Reply-To":"<20170917161712.14645-2-lorenzo.bianconi@st.com>","References":"<20170917161712.14645-1-lorenzo.bianconi@st.com>\n\t<20170917161712.14645-2-lorenzo.bianconi@st.com>","X-Mailer":"Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-pc-linux-gnu)","MIME-Version":"1.0","Content-Type":"text/plain; charset=US-ASCII","Content-Transfer-Encoding":"7bit","Sender":"devicetree-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<devicetree.vger.kernel.org>","X-Mailing-List":"devicetree@vger.kernel.org"}},{"id":1784080,"web_url":"http://patchwork.ozlabs.org/comment/1784080/","msgid":"<20171010204001.76065029@archlinux>","list_archive_url":null,"date":"2017-10-10T19:40:01","subject":"Re: [PATCH 2/4] iio: common: st_sensors: check odr address value in\n\tst_sensors_set_odr()","submitter":{"id":10151,"url":"http://patchwork.ozlabs.org/api/people/10151/","name":"Jonathan Cameron","email":"jic23@kernel.org"},"content":"On Sun, 17 Sep 2017 18:17:10 +0200\nLorenzo Bianconi <lorenzo.bianconi83@gmail.com> wrote:\n\n> Do not try to configure sample frequency if the sensor do not export\n> odr register address in register map. That change will be used to\n> properly support LIS3DHH accel sensor.\n> \n> Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com>\nApplied to the togreg branch of iio.git and pushed out as testing\nfor the autobuilders to play with it.\n\nThanks,\n\nJonathan\n> ---\n>  drivers/iio/common/st_sensors/st_sensors_core.c | 3 +++\n>  1 file changed, 3 insertions(+)\n> \n> diff --git a/drivers/iio/common/st_sensors/st_sensors_core.c b/drivers/iio/common/st_sensors/st_sensors_core.c\n> index 40dfdfc0906b..57db19182e95 100644\n> --- a/drivers/iio/common/st_sensors/st_sensors_core.c\n> +++ b/drivers/iio/common/st_sensors/st_sensors_core.c\n> @@ -93,6 +93,9 @@ int st_sensors_set_odr(struct iio_dev *indio_dev, unsigned int odr)\n>  \tstruct st_sensor_odr_avl odr_out = {0, 0};\n>  \tstruct st_sensor_data *sdata = iio_priv(indio_dev);\n>  \n> +\tif (!sdata->sensor_settings->odr.addr)\n> +\t\treturn 0;\n> +\n>  \terr = st_sensors_match_odr(sdata->sensor_settings, odr, &odr_out);\n>  \tif (err < 0)\n>  \t\tgoto st_sensors_match_odr_error;\n\n--\nTo unsubscribe from this list: send the line \"unsubscribe devicetree\" in\nthe body of a message to majordomo@vger.kernel.org\nMore majordomo info at  http://vger.kernel.org/majordomo-info.html","headers":{"Return-Path":"<devicetree-owner@vger.kernel.org>","X-Original-To":"incoming-dt@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-dt@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=devicetree-owner@vger.kernel.org; receiver=<UNKNOWN>)","mail.kernel.org;\n\tdmarc=none (p=none dis=none) header.from=kernel.org","mail.kernel.org;\n\tspf=none smtp.mailfrom=jic23@kernel.org"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3yBSF34rrCz9t42\n\tfor <incoming-dt@patchwork.ozlabs.org>;\n\tWed, 11 Oct 2017 06:42:31 +1100 (AEDT)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1755419AbdJJTma (ORCPT\n\t<rfc822;incoming-dt@patchwork.ozlabs.org>);\n\tTue, 10 Oct 2017 15:42:30 -0400","from mail.kernel.org ([198.145.29.99]:59452 \"EHLO mail.kernel.org\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1756206AbdJJTma (ORCPT <rfc822;devicetree@vger.kernel.org>);\n\tTue, 10 Oct 2017 15:42:30 -0400","from archlinux (cpc91196-cmbg18-2-0-cust659.5-4.cable.virginm.net\n\t[81.96.234.148])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby mail.kernel.org (Postfix) with ESMTPSA id CEE2921904;\n\tTue, 10 Oct 2017 19:42:28 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mail.kernel.org CEE2921904","Date":"Tue, 10 Oct 2017 20:40:01 +0100","From":"Jonathan Cameron <jic23@kernel.org>","To":"Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>","Cc":"linux-iio@vger.kernel.org, lorenzo.bianconi@st.com,\n\tdevicetree@vger.kernel.org","Subject":"Re: [PATCH 2/4] iio: common: st_sensors: check odr address value in\n\tst_sensors_set_odr()","Message-ID":"<20171010204001.76065029@archlinux>","In-Reply-To":"<20170917161712.14645-3-lorenzo.bianconi@st.com>","References":"<20170917161712.14645-1-lorenzo.bianconi@st.com>\n\t<20170917161712.14645-3-lorenzo.bianconi@st.com>","X-Mailer":"Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-pc-linux-gnu)","MIME-Version":"1.0","Content-Type":"text/plain; charset=US-ASCII","Content-Transfer-Encoding":"7bit","Sender":"devicetree-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<devicetree.vger.kernel.org>","X-Mailing-List":"devicetree@vger.kernel.org"}},{"id":1784081,"web_url":"http://patchwork.ozlabs.org/comment/1784081/","msgid":"<20171010204050.2f850632@archlinux>","list_archive_url":null,"date":"2017-10-10T19:40:50","subject":"Re: [PATCH 3/4] iio: accel: add support to LIS3DHH","submitter":{"id":10151,"url":"http://patchwork.ozlabs.org/api/people/10151/","name":"Jonathan Cameron","email":"jic23@kernel.org"},"content":"On Sun, 17 Sep 2017 18:17:11 +0200\nLorenzo Bianconi <lorenzo.bianconi83@gmail.com> wrote:\n\n> add support to STMicroelectronics LIS3DHH accel sensor\n> \n> http://www.st.com/resource/en/datasheet/lis3dhh.pdf\n> Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com>\nApplied to the togreg branch of iio.git and pushed out as testing\nfor the autobuilders to play with it.\n\nThanks,\n\nJonathan\n> ---\n>  drivers/iio/accel/st_accel.h      |  2 ++\n>  drivers/iio/accel/st_accel_core.c | 52 +++++++++++++++++++++++++++++++++++++++\n>  drivers/iio/accel/st_accel_spi.c  |  5 ++++\n>  3 files changed, 59 insertions(+)\n> \n> diff --git a/drivers/iio/accel/st_accel.h b/drivers/iio/accel/st_accel.h\n> index 2ed0f60418c0..2f931e4837e5 100644\n> --- a/drivers/iio/accel/st_accel.h\n> +++ b/drivers/iio/accel/st_accel.h\n> @@ -33,6 +33,7 @@ enum st_accel_type {\n>  \tLIS331DL,\n>  \tLIS3LV02DL,\n>  \tLIS2DW12,\n> +\tLIS3DHH,\n>  \tST_ACCEL_MAX,\n>  };\n>  \n> @@ -54,6 +55,7 @@ enum st_accel_type {\n>  #define LIS3L02DQ_ACCEL_DEV_NAME\t\"lis3l02dq\"\n>  #define LNG2DM_ACCEL_DEV_NAME\t\t\"lng2dm\"\n>  #define LIS2DW12_ACCEL_DEV_NAME\t\t\"lis2dw12\"\n> +#define LIS3DHH_ACCEL_DEV_NAME\t\t\"lis3dhh\"\n>  \n>  /**\n>  * struct st_sensors_platform_data - default accel platform data\n> diff --git a/drivers/iio/accel/st_accel_core.c b/drivers/iio/accel/st_accel_core.c\n> index c88db25a1aff..460aa58e0159 100644\n> --- a/drivers/iio/accel/st_accel_core.c\n> +++ b/drivers/iio/accel/st_accel_core.c\n> @@ -777,6 +777,58 @@ static const struct st_sensor_settings st_accel_sensors_settings[] = {\n>  \t\t.multi_read_bit = false,\n>  \t\t.bootime = 2,\n>  \t},\n> +\t{\n> +\t\t.wai = 0x11,\n> +\t\t.wai_addr = ST_SENSORS_DEFAULT_WAI_ADDRESS,\n> +\t\t.sensors_supported = {\n> +\t\t\t[0] = LIS3DHH_ACCEL_DEV_NAME,\n> +\t\t},\n> +\t\t.ch = (struct iio_chan_spec *)st_accel_16bit_channels,\n> +\t\t.odr = {\n> +\t\t\t/* just ODR = 1100Hz available */\n> +\t\t\t.odr_avl = {\n> +\t\t\t\t{ .hz = 1100, .value = 0x00, },\n> +\t\t\t},\n> +\t\t},\n> +\t\t.pw = {\n> +\t\t\t.addr = 0x20,\n> +\t\t\t.mask = 0x80,\n> +\t\t\t.value_on = ST_SENSORS_DEFAULT_POWER_ON_VALUE,\n> +\t\t\t.value_off = ST_SENSORS_DEFAULT_POWER_OFF_VALUE,\n> +\t\t},\n> +\t\t.fs = {\n> +\t\t\t.fs_avl = {\n> +\t\t\t\t[0] = {\n> +\t\t\t\t\t.num = ST_ACCEL_FS_AVL_2G,\n> +\t\t\t\t\t.gain = IIO_G_TO_M_S_2(76),\n> +\t\t\t\t},\n> +\t\t\t},\n> +\t\t},\n> +\t\t.bdu = {\n> +\t\t\t.addr = 0x20,\n> +\t\t\t.mask = 0x01,\n> +\t\t},\n> +\t\t.drdy_irq = {\n> +\t\t\t.int1 = {\n> +\t\t\t\t.addr = 0x21,\n> +\t\t\t\t.mask = 0x80,\n> +\t\t\t\t.addr_od = 0x23,\n> +\t\t\t\t.mask_od = 0x04,\n> +\t\t\t},\n> +\t\t\t.int2 = {\n> +\t\t\t\t.addr = 0x22,\n> +\t\t\t\t.mask = 0x80,\n> +\t\t\t\t.addr_od = 0x23,\n> +\t\t\t\t.mask_od = 0x08,\n> +\t\t\t},\n> +\t\t\t.stat_drdy = {\n> +\t\t\t\t.addr = ST_SENSORS_DEFAULT_STAT_ADDR,\n> +\t\t\t\t.mask = 0x07,\n> +\t\t\t},\n> +\t\t},\n> +\t\t.multi_read_bit = false,\n> +\t\t.bootime = 2,\n> +\t},\n>  };\n>  \n>  static int st_accel_read_raw(struct iio_dev *indio_dev,\n> diff --git a/drivers/iio/accel/st_accel_spi.c b/drivers/iio/accel/st_accel_spi.c\n> index 7692da49e59f..dcc9bd243a52 100644\n> --- a/drivers/iio/accel/st_accel_spi.c\n> +++ b/drivers/iio/accel/st_accel_spi.c\n> @@ -86,6 +86,10 @@ static const struct of_device_id st_accel_of_match[] = {\n>  \t\t.compatible = \"st,lis2dw12\",\n>  \t\t.data = LIS2DW12_ACCEL_DEV_NAME,\n>  \t},\n> +\t{\n> +\t\t.compatible = \"st,lis3dhh\",\n> +\t\t.data = LIS3DHH_ACCEL_DEV_NAME,\n> +\t},\n>  \t{}\n>  };\n>  MODULE_DEVICE_TABLE(of, st_accel_of_match);\n> @@ -138,6 +142,7 @@ static const struct spi_device_id st_accel_id_table[] = {\n>  \t{ LIS331DL_ACCEL_DEV_NAME },\n>  \t{ LIS3LV02DL_ACCEL_DEV_NAME },\n>  \t{ LIS2DW12_ACCEL_DEV_NAME },\n> +\t{ LIS3DHH_ACCEL_DEV_NAME },\n>  \t{},\n>  };\n>  MODULE_DEVICE_TABLE(spi, st_accel_id_table);\n\n--\nTo unsubscribe from this list: send the line \"unsubscribe devicetree\" in\nthe body of a message to majordomo@vger.kernel.org\nMore majordomo info at  http://vger.kernel.org/majordomo-info.html","headers":{"Return-Path":"<devicetree-owner@vger.kernel.org>","X-Original-To":"incoming-dt@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-dt@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=devicetree-owner@vger.kernel.org; receiver=<UNKNOWN>)","mail.kernel.org;\n\tdmarc=none (p=none dis=none) header.from=kernel.org","mail.kernel.org;\n\tspf=none smtp.mailfrom=jic23@kernel.org"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3yBSF533bgz9sCZ\n\tfor <incoming-dt@patchwork.ozlabs.org>;\n\tWed, 11 Oct 2017 06:42:33 +1100 (AEDT)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1756327AbdJJTmc (ORCPT\n\t<rfc822;incoming-dt@patchwork.ozlabs.org>);\n\tTue, 10 Oct 2017 15:42:32 -0400","from mail.kernel.org ([198.145.29.99]:59472 \"EHLO mail.kernel.org\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1756206AbdJJTmb (ORCPT <rfc822;devicetree@vger.kernel.org>);\n\tTue, 10 Oct 2017 15:42:31 -0400","from archlinux (cpc91196-cmbg18-2-0-cust659.5-4.cable.virginm.net\n\t[81.96.234.148])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby mail.kernel.org (Postfix) with ESMTPSA id 6A0E021906;\n\tTue, 10 Oct 2017 19:42:30 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mail.kernel.org 6A0E021906","Date":"Tue, 10 Oct 2017 20:40:50 +0100","From":"Jonathan Cameron <jic23@kernel.org>","To":"Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>","Cc":"linux-iio@vger.kernel.org, lorenzo.bianconi@st.com,\n\tdevicetree@vger.kernel.org","Subject":"Re: [PATCH 3/4] iio: accel: add support to LIS3DHH","Message-ID":"<20171010204050.2f850632@archlinux>","In-Reply-To":"<20170917161712.14645-4-lorenzo.bianconi@st.com>","References":"<20170917161712.14645-1-lorenzo.bianconi@st.com>\n\t<20170917161712.14645-4-lorenzo.bianconi@st.com>","X-Mailer":"Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-pc-linux-gnu)","MIME-Version":"1.0","Content-Type":"text/plain; charset=US-ASCII","Content-Transfer-Encoding":"7bit","Sender":"devicetree-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<devicetree.vger.kernel.org>","X-Mailing-List":"devicetree@vger.kernel.org"}}]