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:
Abhilash Sathyanarayana <quic_abhisath@quicinc.com>
Loading
Please register or sign in to comment