diff --git a/drivers/pwm/pwm-qpnp.c b/drivers/pwm/pwm-qpnp.c index 2f07345499b0..dbed75cd4715 100644 --- a/drivers/pwm/pwm-qpnp.c +++ b/drivers/pwm/pwm-qpnp.c @@ -28,6 +28,7 @@ #include #include #include +#include #define QPNP_LPG_DRIVER_NAME "qcom,qpnp-pwm" #define QPNP_LPG_CHANNEL_BASE "qpnp-lpg-channel-base" @@ -1119,6 +1120,9 @@ static int qpnp_lpg_configure_lut_state(struct qpnp_pwm_chip *chip, addr = SPMI_LPG_REG_ADDR(lpg_config->base_addr, QPNP_ENABLE_CONTROL); + // Add 1mS delay to fix qcom known HW issue + mdelay(1); + if (chip->in_test_mode) { test_enable = (state == QPNP_LUT_ENABLE) ? 1 : 0; rc = qpnp_dtest_config(chip, test_enable);