]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
i3c: master: Introduce optional Runtime PM support
authorAdrian Hunter <adrian.hunter@intel.com>
Tue, 13 Jan 2026 07:27:00 +0000 (09:27 +0200)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Wed, 14 Jan 2026 16:21:10 +0000 (17:21 +0100)
commit990c149c61ee45da4fb6372e6b2fdd9808414e7a
treea17d6d32ed15a0a0577af0a0fc57bbe5d4a1a9ab
parent3c3de6803a7d90faba0387ba248ac71e627ca827
i3c: master: Introduce optional Runtime PM support

Master drivers currently manage Runtime PM individually, but all require
runtime resume for bus operations.  This can be centralized in common code.

Add optional Runtime PM support to ensure the parent device is runtime
resumed before bus operations and auto-suspended afterward.

Notably, do not call ->bus_cleanup() if runtime resume fails.  Master
drivers that opt-in to core runtime PM support must take that into account.

Also provide an option to allow IBIs and hot-joins while runtime suspended.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260113072702.16268-20-adrian.hunter@intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/i3c/device.c
drivers/i3c/internals.h
drivers/i3c/master.c
include/linux/i3c/master.h