Use gpio_direction_output instead of atomic call gpio_set_value.
gpio_direction_output is safe to be called from non-atomic contexts.
Bug
1695392
Change-Id: I69e279a91f4b411c9b2913ff0e9c5a234a22f944
Signed-off-by: Pavan Kunapuli <pkunapuli@nvidia.com>
Reviewed-on: http://git-master/r/839911
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/
1129214
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
unsigned int act_dis_time_us = tps->reg_pdata[id].active_discharge_time;
if (gpio_is_valid(act_dis_gpio)) {
- gpio_set_value(act_dis_gpio, 1);
+ gpio_set_value_cansleep(act_dis_gpio, 1);
usleep_range(act_dis_time_us,
act_dis_time_us + TPS65132_ACT_DIS_TIME_SLACK);
- gpio_set_value(act_dis_gpio, 0);
+ gpio_set_value_cansleep(act_dis_gpio, 0);
}
return 0;