* [PATCH 0/2] bmc150 magnetometer cleanup
@ 2015-07-23 17:15 Irina Tirdea
2015-07-23 17:15 ` [PATCH 1/2] iio: magn: bmc150_magn: add locking comment for runtime resume Irina Tirdea
2015-07-23 17:15 ` [PATCH 2/2] iio: magn: bmc150_magn: do not set power state twice when setting trigger state Irina Tirdea
0 siblings, 2 replies; 5+ messages in thread
From: Irina Tirdea @ 2015-07-23 17:15 UTC (permalink / raw)
To: Jonathan Cameron, linux-iio
Cc: linux-kernel, Hartmut Knaack, Vlad Dogaru, Irina Tirdea
A couple of small cleanup patches starting from Hartmut's series.
There are no conflicts with the rest of Hartmut's patches, so they
can be applied in any order.
Irina Tirdea (2):
iio: magn: bmc150_magn: add locking comment for runtime resume
iio: magn: bmc150_magn: do not set power state twice when setting
trigger state
drivers/iio/magnetometer/bmc150_magn.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] iio: magn: bmc150_magn: add locking comment for runtime resume
2015-07-23 17:15 [PATCH 0/2] bmc150 magnetometer cleanup Irina Tirdea
@ 2015-07-23 17:15 ` Irina Tirdea
2015-08-02 17:19 ` Jonathan Cameron
2015-07-23 17:15 ` [PATCH 2/2] iio: magn: bmc150_magn: do not set power state twice when setting trigger state Irina Tirdea
1 sibling, 1 reply; 5+ messages in thread
From: Irina Tirdea @ 2015-07-23 17:15 UTC (permalink / raw)
To: Jonathan Cameron, linux-iio
Cc: linux-kernel, Hartmut Knaack, Vlad Dogaru, Irina Tirdea
Runtime resume function is called with the data->mutex lock held.
Add a comment to indicate this.
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
---
drivers/iio/magnetometer/bmc150_magn.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetometer/bmc150_magn.c
index 074a99d..d66f8cf 100644
--- a/drivers/iio/magnetometer/bmc150_magn.c
+++ b/drivers/iio/magnetometer/bmc150_magn.c
@@ -1043,6 +1043,9 @@ static int bmc150_magn_runtime_suspend(struct device *dev)
return 0;
}
+/*
+ * Should be called with data->mutex held.
+ */
static int bmc150_magn_runtime_resume(struct device *dev)
{
struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
--
1.9.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] iio: magn: bmc150_magn: do not set power state twice when setting trigger state
2015-07-23 17:15 [PATCH 0/2] bmc150 magnetometer cleanup Irina Tirdea
2015-07-23 17:15 ` [PATCH 1/2] iio: magn: bmc150_magn: add locking comment for runtime resume Irina Tirdea
@ 2015-07-23 17:15 ` Irina Tirdea
2015-08-02 17:20 ` Jonathan Cameron
1 sibling, 1 reply; 5+ messages in thread
From: Irina Tirdea @ 2015-07-23 17:15 UTC (permalink / raw)
To: Jonathan Cameron, linux-iio
Cc: linux-kernel, Hartmut Knaack, Vlad Dogaru, Irina Tirdea
When setting the trigger state, the device power state is set through
buffer preenable and postdisable hooks. There is no need
to also set it in the trigger set state call.
Remove duplicate set power state from the trigger set
state call.
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
---
drivers/iio/magnetometer/bmc150_magn.c | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetometer/bmc150_magn.c
index d66f8cf..38c2eb64 100644
--- a/drivers/iio/magnetometer/bmc150_magn.c
+++ b/drivers/iio/magnetometer/bmc150_magn.c
@@ -783,29 +783,23 @@ static int bmc150_magn_data_rdy_trigger_set_state(struct iio_trigger *trig,
if (state == data->dready_trigger_on)
goto err_unlock;
- ret = bmc150_magn_set_power_state(data, state);
- if (ret < 0)
- goto err_unlock;
-
ret = regmap_update_bits(data->regmap, BMC150_MAGN_REG_INT_DRDY,
BMC150_MAGN_MASK_DRDY_EN,
state << BMC150_MAGN_SHIFT_DRDY_EN);
if (ret < 0)
- goto err_poweroff;
+ goto err_unlock;
data->dready_trigger_on = state;
if (state) {
ret = bmc150_magn_reset_intr(data);
if (ret < 0)
- goto err_poweroff;
+ goto err_unlock;
}
mutex_unlock(&data->mutex);
return 0;
-err_poweroff:
- bmc150_magn_set_power_state(data, false);
err_unlock:
mutex_unlock(&data->mutex);
return ret;
--
1.9.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] iio: magn: bmc150_magn: add locking comment for runtime resume
2015-07-23 17:15 ` [PATCH 1/2] iio: magn: bmc150_magn: add locking comment for runtime resume Irina Tirdea
@ 2015-08-02 17:19 ` Jonathan Cameron
0 siblings, 0 replies; 5+ messages in thread
From: Jonathan Cameron @ 2015-08-02 17:19 UTC (permalink / raw)
To: Irina Tirdea, linux-iio; +Cc: linux-kernel, Hartmut Knaack, Vlad Dogaru
On 23/07/15 18:15, Irina Tirdea wrote:
> Runtime resume function is called with the data->mutex lock held.
> Add a comment to indicate this.
>
> Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Sensible follow up to Hartmut's patches.
Applied to the togreg branch of iio.git
Thanks,
Jonathan
> ---
> drivers/iio/magnetometer/bmc150_magn.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetometer/bmc150_magn.c
> index 074a99d..d66f8cf 100644
> --- a/drivers/iio/magnetometer/bmc150_magn.c
> +++ b/drivers/iio/magnetometer/bmc150_magn.c
> @@ -1043,6 +1043,9 @@ static int bmc150_magn_runtime_suspend(struct device *dev)
> return 0;
> }
>
> +/*
> + * Should be called with data->mutex held.
> + */
> static int bmc150_magn_runtime_resume(struct device *dev)
> {
> struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] iio: magn: bmc150_magn: do not set power state twice when setting trigger state
2015-07-23 17:15 ` [PATCH 2/2] iio: magn: bmc150_magn: do not set power state twice when setting trigger state Irina Tirdea
@ 2015-08-02 17:20 ` Jonathan Cameron
0 siblings, 0 replies; 5+ messages in thread
From: Jonathan Cameron @ 2015-08-02 17:20 UTC (permalink / raw)
To: Irina Tirdea, linux-iio; +Cc: linux-kernel, Hartmut Knaack, Vlad Dogaru
On 23/07/15 18:15, Irina Tirdea wrote:
> When setting the trigger state, the device power state is set through
> buffer preenable and postdisable hooks. There is no need
> to also set it in the trigger set state call.
>
> Remove duplicate set power state from the trigger set
> state call.
>
> Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Applied to the togreg branch of iio.git
Thanks,
Jonathan
> ---
> drivers/iio/magnetometer/bmc150_magn.c | 10 ++--------
> 1 file changed, 2 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/iio/magnetometer/bmc150_magn.c b/drivers/iio/magnetometer/bmc150_magn.c
> index d66f8cf..38c2eb64 100644
> --- a/drivers/iio/magnetometer/bmc150_magn.c
> +++ b/drivers/iio/magnetometer/bmc150_magn.c
> @@ -783,29 +783,23 @@ static int bmc150_magn_data_rdy_trigger_set_state(struct iio_trigger *trig,
> if (state == data->dready_trigger_on)
> goto err_unlock;
>
> - ret = bmc150_magn_set_power_state(data, state);
> - if (ret < 0)
> - goto err_unlock;
> -
> ret = regmap_update_bits(data->regmap, BMC150_MAGN_REG_INT_DRDY,
> BMC150_MAGN_MASK_DRDY_EN,
> state << BMC150_MAGN_SHIFT_DRDY_EN);
> if (ret < 0)
> - goto err_poweroff;
> + goto err_unlock;
>
> data->dready_trigger_on = state;
>
> if (state) {
> ret = bmc150_magn_reset_intr(data);
> if (ret < 0)
> - goto err_poweroff;
> + goto err_unlock;
> }
> mutex_unlock(&data->mutex);
>
> return 0;
>
> -err_poweroff:
> - bmc150_magn_set_power_state(data, false);
> err_unlock:
> mutex_unlock(&data->mutex);
> return ret;
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-08-02 17:20 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-23 17:15 [PATCH 0/2] bmc150 magnetometer cleanup Irina Tirdea
2015-07-23 17:15 ` [PATCH 1/2] iio: magn: bmc150_magn: add locking comment for runtime resume Irina Tirdea
2015-08-02 17:19 ` Jonathan Cameron
2015-07-23 17:15 ` [PATCH 2/2] iio: magn: bmc150_magn: do not set power state twice when setting trigger state Irina Tirdea
2015-08-02 17:20 ` Jonathan Cameron
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).