mirror of
https://github.com/torvalds/linux.git
synced 2026-07-31 03:27:03 +02:00
input: qcom-hv-haptics: use OL_TLRA if getting CL_TLRA failed
If getting close-loop TLRA failed in driver probe, such as if there is no valid value in SDAM register for CAL_TLRA_CL_STS because of the bootloader had not run the frequency calibration successfully. Use open-loop TLRA to program the hardware so the vibrator can still be functional but just lose some efficiency because of unadjusted frequency. Change-Id: I8b8dd0906aa6b3fa882e2044cdbe579c746714a3 Signed-off-by: Fenglin Wu <quic_fenglinw@quicinc.com>
This commit is contained in:
parent
be18d8d3b5
commit
e37bf7e664
|
|
@ -2720,15 +2720,14 @@ static int haptics_init_lra_period_config(struct haptics_chip *chip)
|
|||
return rc;
|
||||
|
||||
/* get calibrated close loop period */
|
||||
t_lra_us = chip->config.t_lra_us;
|
||||
rc = haptics_get_closeloop_lra_period(chip, true);
|
||||
if (rc < 0)
|
||||
return rc;
|
||||
if (!rc && chip->config.cl_t_lra_us != 0)
|
||||
t_lra_us = chip->config.cl_t_lra_us;
|
||||
else
|
||||
dev_warn(chip->dev, "get closeloop LRA period failed, rc=%d\n", rc);
|
||||
|
||||
/* Config T_LRA */
|
||||
t_lra_us = chip->config.t_lra_us;
|
||||
if (chip->config.cl_t_lra_us != 0)
|
||||
t_lra_us = chip->config.cl_t_lra_us;
|
||||
|
||||
return haptics_config_openloop_lra_period(chip, t_lra_us);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user