When CONFIG_PM_RUNTIME is not defined and bmg160 tries to power off the device, bmg160_set_power_state will call pm_runtime_put_autosuspend, which is not implemented (wil return -ENOSYS).
Only call bmg160_set_power_state when CONFIG_PM_RUNTIME is defined. Signed-off-by: Irina Tirdea <[email protected]> Reviewed-by: Srinivas Pandruvada <[email protected]> --- drivers/iio/gyro/bmg160.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/iio/gyro/bmg160.c b/drivers/iio/gyro/bmg160.c index 7524698..e41d6b5 100644 --- a/drivers/iio/gyro/bmg160.c +++ b/drivers/iio/gyro/bmg160.c @@ -235,6 +235,7 @@ static int bmg160_chip_init(struct bmg160_data *data) return 0; } +#ifdef CONFIG_PM_RUNTIME static int bmg160_set_power_state(struct bmg160_data *data, bool on) { int ret; @@ -254,6 +255,12 @@ static int bmg160_set_power_state(struct bmg160_data *data, bool on) return 0; } +#else +static int bmg160_set_power_state(struct bmg160_data *data, bool on) +{ + return 0; +} +#endif static int bmg160_setup_any_motion_interrupt(struct bmg160_data *data, bool status) -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

