[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-iio
Subject: Re: [PATCH 03/10 v4] iio: pressure: bmp280: add reset GPIO line handling
From: Jonathan Cameron <jic23 () kernel ! org>
Date: 2016-06-30 19:25:59
Message-ID: 30468a81-6c7f-827c-4842-8aa42b43917a () kernel ! org
[Download RAW message or body]
On 30/06/16 02:48, Linus Walleij wrote:
> On the APQ8060 Dragonboard the reset line to the BMP085 pressure
> sensor is not deasserted on boot, so the driver needs to handle
> this. For a simple GPIO line supplied as a descriptor (from a board
> file, device tree or ACPI) this does the trick.
>
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Applied.
> ---
> ChangeLog v3->v4:
> - Fix BMP058->BMP085 in commit message
> ChangeLog v2->v3:
> - None, just rebasing/resending
> ---
> drivers/iio/pressure/bmp280.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/iio/pressure/bmp280.c b/drivers/iio/pressure/bmp280.c
> index fa76f5851245..1618968f8889 100644
> --- a/drivers/iio/pressure/bmp280.c
> +++ b/drivers/iio/pressure/bmp280.c
> @@ -23,6 +23,7 @@
> #include <linux/delay.h>
> #include <linux/iio/iio.h>
> #include <linux/iio/sysfs.h>
> +#include <linux/gpio/consumer.h>
>
> /* BMP280 specific registers */
> #define BMP280_REG_HUMIDITY_LSB 0xFE
> @@ -1024,6 +1025,7 @@ static int bmp280_probe(struct i2c_client *client,
> struct iio_dev *indio_dev;
> struct bmp280_data *data;
> unsigned int chip_id;
> + struct gpio_desc *gpiod;
>
> indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*data));
> if (!indio_dev)
> @@ -1063,6 +1065,14 @@ static int bmp280_probe(struct i2c_client *client,
> return -EINVAL;
> }
>
> + /* Bring chip out of reset if there is an assigned GPIO line */
> + gpiod = devm_gpiod_get(&client->dev, "reset", GPIOD_OUT_HIGH);
> + /* Deassert the signal */
> + if (!IS_ERR(gpiod)) {
> + dev_info(&client->dev, "release reset\n");
> + gpiod_set_value(gpiod, 0);
> + }
> +
> data->regmap = devm_regmap_init_i2c(client,
> data->chip_info->regmap_config);
> if (IS_ERR(data->regmap)) {
>
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic