i3c: master: svc: fix cpu schedule in spin lock
authorClark Wang <xiaoning.wang@nxp.com>
Wed, 17 May 2023 03:30:29 +0000 (11:30 +0800)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sun, 4 Jun 2023 22:50:51 +0000 (00:50 +0200)
commit33beadb3b1ab74e69db2c49d9663f3a93a273943
tree91d3bab2fa2389aaef170ac513d345f9572ed7a2
parent1c5ee2a77b1bacd4c333bebea93610aaf17977be
i3c: master: svc: fix cpu schedule in spin lock

pm_runtime_resume_and_get() may call sleep(). It cannot be used in
svc_i3c_master_start_xfer_locked(), because it is in a spin lock.

Move the pm runtime operations to svc_i3c_master_enqueue_xfer().

Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
Fixes: 05be23ef78f7 ("i3c: master: svc: add runtime pm support")
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/r/20230517033030.3068085-2-xiaoning.wang@nxp.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/i3c/master/svc-i3c-master.c