FROMGIT: i3c: master: Enable runtime PM for master controller
Enable runtime PM for i3c master node during master registration time. Sometimes i3c client device driver may want to control the PM of the parent (master) to perform the transactions and save the power in an efficient way by controlling the session. Hence device can call PM APIs by passing the parent node. Here, I3C target device when calls pm_runtime_get_sync(dev->parent) couldn't invoke master drivers runtime PM callback registered by the master driver because parent's PM status was disabled in the Master node. Also call pm_runtime_no_callbacks() and pm_suspend_ignore_children() for the master node to not have any callback addition and ignore the children to have runtime PM work just locally in the driver. This should be generic and common change for all i3c devices and should not have any other impact. With these changes, I3C client device works and able to invoke master driver registered runtime PM callbacks. Signed-off-by:Mukesh Kumar Savaliya <quic_msavaliy@quicinc.com> Signed-off-by:
Alexandre Belloni <alexandre.belloni@bootlin.com> Link: https://lore.kernel.org/r/20240228093407.4038399-1-quic_msavaliy@quicinc.com (cherry picked from commit fe23b69d78d76abc4a3859259be81cd75006cb19 https://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux.git for-next) Bug: 341850281 Change-Id: Ic3261b00f6dcc63c0eae61b7184a6c532a7ae99a Signed-off-by:
Visweswara Tanuku <quic_vtanuku@quicinc.com>
Loading
Please sign in to comment