regcache_cache_only(tas2552->regmap, true);
regcache_mark_dirty(tas2552->regmap);
- gpiod_set_value(tas2552->enable_gpio, 0);
+ gpiod_set_value_cansleep(tas2552->enable_gpio, 0);
return 0;
}
{
struct tas2552_data *tas2552 = dev_get_drvdata(dev);
- gpiod_set_value(tas2552->enable_gpio, 1);
+ gpiod_set_value_cansleep(tas2552->enable_gpio, 1);
tas2552_sw_shutdown(tas2552, 0);
return ret;
}
- gpiod_set_value(tas2552->enable_gpio, 1);
+ gpiod_set_value_cansleep(tas2552->enable_gpio, 1);
ret = pm_runtime_resume_and_get(component->dev);
if (ret < 0) {
probe_fail:
pm_runtime_put_noidle(component->dev);
- gpiod_set_value(tas2552->enable_gpio, 0);
+ gpiod_set_value_cansleep(tas2552->enable_gpio, 0);
regulator_bulk_disable(ARRAY_SIZE(tas2552->supplies),
tas2552->supplies);
pm_runtime_put(component->dev);
- gpiod_set_value(tas2552->enable_gpio, 0);
+ gpiod_set_value_cansleep(tas2552->enable_gpio, 0);
};
#ifdef CONFIG_PM