From: Jonathan Cameron <jic23@kernel.org>
To: Linus Walleij <linus.walleij@linaro.org>, linux-iio@vger.kernel.org
Subject: Re: [PATCH 09/17] iio: accel: kxsd9: Drop the buffer lock
Date: Wed, 31 Aug 2016 20:45:48 +0100 [thread overview]
Message-ID: <99069fd9-7d1b-a422-36c6-6162600a8d1e@kernel.org> (raw)
In-Reply-To: <1471354423-19186-10-git-send-email-linus.walleij@linaro.org>
On 16/08/16 14:33, Linus Walleij wrote:
> The RX/TX buffers are gone so drop the lock (it should have been
> in the transport struct anyway).
>
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Jonathan Cameron <jic23@kernel.org>
> ---
> drivers/iio/accel/kxsd9.c | 19 ++++---------------
> 1 file changed, 4 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/iio/accel/kxsd9.c b/drivers/iio/accel/kxsd9.c
> index fe85f61cfa9d..a8ee041dd4e4 100644
> --- a/drivers/iio/accel/kxsd9.c
> +++ b/drivers/iio/accel/kxsd9.c
> @@ -41,14 +41,10 @@
>
> /**
> * struct kxsd9_state - device related storage
> - * @buf_lock: protect the rx and tx buffers.
> - * @us: spi device
> - * @rx: single rx buffer storage
> - * @tx: single tx buffer storage
> - **/
> + * @map: regmap to the device
> + */
> struct kxsd9_state {
> struct regmap *map;
> - struct mutex buf_lock;
> };
>
> #define KXSD9_SCALE_2G "0.011978"
> @@ -74,7 +70,6 @@ static int kxsd9_write_scale(struct iio_dev *indio_dev, int micro)
> if (!foundit)
> return -EINVAL;
>
> - mutex_lock(&st->buf_lock);
> ret = regmap_read(st->map,
> KXSD9_REG_CTRL_C,
> &val);
> @@ -84,7 +79,6 @@ static int kxsd9_write_scale(struct iio_dev *indio_dev, int micro)
> KXSD9_REG_CTRL_C,
> (val & ~KXSD9_FS_MASK) | i);
> error_ret:
> - mutex_unlock(&st->buf_lock);
> return ret;
> }
>
> @@ -94,15 +88,11 @@ static int kxsd9_read(struct iio_dev *indio_dev, u8 address)
> struct kxsd9_state *st = iio_priv(indio_dev);
> __be16 raw_val;
>
> - mutex_lock(&st->buf_lock);
> ret = regmap_bulk_read(st->map, address, &raw_val, sizeof(raw_val));
> if (ret)
> - goto out_fail_read;
> + return ret;
> /* Only 12 bits are valid */
> - ret = be16_to_cpu(raw_val) & 0xfff0;
> -out_fail_read:
> - mutex_unlock(&st->buf_lock);
> - return ret;
> + return be16_to_cpu(raw_val) & 0xfff0;
> }
>
> static IIO_CONST_ATTR(accel_scale_available,
> @@ -220,7 +210,6 @@ int kxsd9_common_probe(struct device *parent,
> st = iio_priv(indio_dev);
> st->map = map;
>
> - mutex_init(&st->buf_lock);
> indio_dev->channels = kxsd9_channels;
> indio_dev->num_channels = ARRAY_SIZE(kxsd9_channels);
> indio_dev->name = name;
>
next prev parent reply other threads:[~2016-08-31 19:45 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-16 13:33 [PATCH 00/17] KCSD9 driver cleanup and modernization Linus Walleij
2016-08-16 13:33 ` [PATCH 01/17] iio: accel: kxsd9: Add device tree bindings Linus Walleij
2016-08-16 13:33 ` Linus Walleij
2016-08-18 19:21 ` Rob Herring
2016-08-18 19:21 ` Rob Herring
2016-08-21 19:41 ` Jonathan Cameron
2016-08-21 19:41 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 02/17] iio: accel: kxsd9: Fix raw read return Linus Walleij
[not found] ` <DE81936B-E9FB-40A1-A139-9BCA6841C11F@kernel.org>
2016-08-17 7:15 ` Linus Walleij
2016-08-21 19:40 ` Jonathan Cameron
2016-08-21 19:43 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 03/17] iio: accel: kxsd9: Split out transport mechanism Linus Walleij
2016-08-16 13:53 ` Peter Meerwald-Stadler
2016-08-17 7:18 ` Linus Walleij
2016-08-31 19:29 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 04/17] iio: accel: kxsd9: Use devm_iio_device_register() Linus Walleij
2016-08-16 13:33 ` [PATCH 05/17] iio: accel: kxsd9: Split out SPI transport Linus Walleij
2016-08-31 19:35 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 06/17] iio: accel: kxsd9: Do away with the write2 helper Linus Walleij
2016-08-31 19:43 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 07/17] iio: accel: kxsd9: Convert to use regmap for transport Linus Walleij
2016-08-21 19:49 ` Jonathan Cameron
2016-08-31 19:43 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 08/17] iio: accel: kxsd9: Add I2C transport Linus Walleij
2016-08-16 13:33 ` [PATCH 09/17] iio: accel: kxsd9: Drop the buffer lock Linus Walleij
2016-08-31 19:45 ` Jonathan Cameron [this message]
2016-08-16 13:33 ` [PATCH 10/17] iio: accel: kxsd9: Fix scaling bug Linus Walleij
2016-08-31 19:47 ` Jonathan Cameron
2016-09-01 8:43 ` Linus Walleij
2016-08-16 13:33 ` [PATCH 11/17] iio: accel: kxsd9: Fix up offset and scaling Linus Walleij
2016-08-16 13:58 ` Peter Meerwald-Stadler
2016-08-17 7:21 ` Linus Walleij
2016-08-16 13:33 ` [PATCH 12/17] iio: accel: kxsd9: Add triggered buffer handling Linus Walleij
2016-08-31 19:58 ` Jonathan Cameron
2016-08-31 20:00 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 13/17] iio: accel: kxsd9: Deploy proper register bit defines Linus Walleij
2016-08-31 20:05 ` Jonathan Cameron
2016-08-16 13:33 ` [PATCH 14/17] iio: accel: kxsd9: Fetch and handle regulators Linus Walleij
2016-08-16 13:33 ` [PATCH 15/17] iio: accel: kxsd9: Replace "parent" with "dev" Linus Walleij
2016-08-16 13:33 ` [PATCH 16/17] iio: accel: kxsd9: Deploy system and runtime PM Linus Walleij
2016-08-16 13:33 ` [PATCH 17/17] iio: accel: kxsd9: Support reading a mounting matrix Linus Walleij
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=99069fd9-7d1b-a422-36c6-6162600a8d1e@kernel.org \
--to=jic23@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-iio@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.