From: Jonathan Cameron <jic23@kernel.org>
To: Sachin Kamat <sachin.kamat@linaro.org>
Cc: linux-iio@vger.kernel.org, jic23@cam.ac.uk, denis.ciocca@st.com
Subject: Re: [PATCH 2/2] iio: magnetometer: st_magn: Use devm_iio_device_alloc
Date: Sat, 03 Aug 2013 18:45:54 +0100 [thread overview]
Message-ID: <51FD41D2.7000405@kernel.org> (raw)
In-Reply-To: <1375438128-23219-2-git-send-email-sachin.kamat@linaro.org>
On 08/02/13 11:08, Sachin Kamat wrote:
> Using devm_iio_device_alloc makes code simpler.
>
> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
> Cc: Denis Ciocca <denis.ciocca@st.com>
Applied to the togreg branch of iio.git
Thanks for getting all of these done.
Whilst this sort of change is kind of simple, the reduction in
complexity makes my life as maintainer easier in the long
run so I am very much in favour!
Also getting rid of all cases like you are doing means
that best practice is obvious to anyone writing new drivers.
> ---
> drivers/iio/magnetometer/st_magn_core.c | 1 -
> drivers/iio/magnetometer/st_magn_i2c.c | 15 ++++-----------
> drivers/iio/magnetometer/st_magn_spi.c | 15 ++++-----------
> 3 files changed, 8 insertions(+), 23 deletions(-)
>
> diff --git a/drivers/iio/magnetometer/st_magn_core.c b/drivers/iio/magnetometer/st_magn_core.c
> index 7cd784f..e8d2849 100644
> --- a/drivers/iio/magnetometer/st_magn_core.c
> +++ b/drivers/iio/magnetometer/st_magn_core.c
> @@ -407,7 +407,6 @@ void st_magn_common_remove(struct iio_dev *indio_dev)
> st_sensors_deallocate_trigger(indio_dev);
> st_magn_deallocate_ring(indio_dev);
> }
> - iio_device_free(indio_dev);
> }
> EXPORT_SYMBOL(st_magn_common_remove);
>
> diff --git a/drivers/iio/magnetometer/st_magn_i2c.c b/drivers/iio/magnetometer/st_magn_i2c.c
> index 1bed117..892e0fe 100644
> --- a/drivers/iio/magnetometer/st_magn_i2c.c
> +++ b/drivers/iio/magnetometer/st_magn_i2c.c
> @@ -25,11 +25,9 @@ static int st_magn_i2c_probe(struct i2c_client *client,
> struct st_sensor_data *mdata;
> int err;
>
> - indio_dev = iio_device_alloc(sizeof(*mdata));
> - if (indio_dev == NULL) {
> - err = -ENOMEM;
> - goto iio_device_alloc_error;
> - }
> + indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*mdata));
> + if (!indio_dev)
> + return -ENOMEM;
>
> mdata = iio_priv(indio_dev);
> mdata->dev = &client->dev;
> @@ -38,14 +36,9 @@ static int st_magn_i2c_probe(struct i2c_client *client,
>
> err = st_magn_common_probe(indio_dev, NULL);
> if (err < 0)
> - goto st_magn_common_probe_error;
> + return err;
>
> return 0;
> -
> -st_magn_common_probe_error:
> - iio_device_free(indio_dev);
> -iio_device_alloc_error:
> - return err;
> }
>
> static int st_magn_i2c_remove(struct i2c_client *client)
> diff --git a/drivers/iio/magnetometer/st_magn_spi.c b/drivers/iio/magnetometer/st_magn_spi.c
> index a2333a1..a6143ea 100644
> --- a/drivers/iio/magnetometer/st_magn_spi.c
> +++ b/drivers/iio/magnetometer/st_magn_spi.c
> @@ -24,11 +24,9 @@ static int st_magn_spi_probe(struct spi_device *spi)
> struct st_sensor_data *mdata;
> int err;
>
> - indio_dev = iio_device_alloc(sizeof(*mdata));
> - if (indio_dev == NULL) {
> - err = -ENOMEM;
> - goto iio_device_alloc_error;
> - }
> + indio_dev = devm_iio_device_alloc(&spi->dev, sizeof(*mdata));
> + if (!indio_dev)
> + return -ENOMEM;
>
> mdata = iio_priv(indio_dev);
> mdata->dev = &spi->dev;
> @@ -37,14 +35,9 @@ static int st_magn_spi_probe(struct spi_device *spi)
>
> err = st_magn_common_probe(indio_dev, NULL);
> if (err < 0)
> - goto st_magn_common_probe_error;
> + return err;
>
> return 0;
> -
> -st_magn_common_probe_error:
> - iio_device_free(indio_dev);
> -iio_device_alloc_error:
> - return err;
> }
>
> static int st_magn_spi_remove(struct spi_device *spi)
>
next prev parent reply other threads:[~2013-08-03 16:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-02 10:08 [PATCH 1/2] iio: magnetometer: hid-sensor-magn-3d: Use devm_iio_device_alloc Sachin Kamat
2013-08-02 10:08 ` [PATCH 2/2] iio: magnetometer: st_magn: " Sachin Kamat
2013-08-03 17:45 ` Jonathan Cameron [this message]
2013-08-05 6:19 ` Sachin Kamat
2013-08-02 16:09 ` [PATCH 1/2] iio: magnetometer: hid-sensor-magn-3d: " Srinivas Pandruvada
2013-08-02 17:15 ` Jonathan Cameron
2013-08-03 17:43 ` Jonathan Cameron
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=51FD41D2.7000405@kernel.org \
--to=jic23@kernel.org \
--cc=denis.ciocca@st.com \
--cc=jic23@cam.ac.uk \
--cc=linux-iio@vger.kernel.org \
--cc=sachin.kamat@linaro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).