Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f3c67e03 authored by Abhilash Sathyanarayana's avatar Abhilash Sathyanarayana
Browse files

soc: pinctrl-lpi: remove pm ops



pm runtime resume and suspend operation uses
linux clock API to vote/unvote lpass hw resources.
When autosuspend funtionality is used, suspend op
is triggered from a worker thread upon timer expiration,
can block if there is an ongoing clock
operation holding global prepare/unprepare mutex
lock in common clock framwork. If the ongoing
clock operation calls get_sync on pinctrl-lpi,
the get_sync gets scheduled out due to ongoing suspend
by worker thread. This leads to dead lock between
get_sync and suspend, waiting for each other to
complete. Avoid using autosuspend functionality in
pinctrl-lpi to avoid race conditions in clock APIs.

As auto suspend functionality is not required, lpass
hw voting/devoting happens in synchronous manner, can
be done directly by calling DSP voting APIs. Hence remove
runtime pm ops in lpi pinctrl driver.

Change-Id: I86df5e8e502c6466feea196fe8649c34e046aa26
Signed-off-by: default avatarAbhilash Sathyanarayana <quic_abhisath@quicinc.com>
parent 0fd85632
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment