Re: [PATCH] i2c: s3c2410: remove superfluous runtime PM calls
From: Wolfram Sang <hidden>
Date: 2015-12-19 10:50:37
Also in:
linux-i2c
Attachments
- signature.asc [application/pgp-signature] 819 bytes
From: Wolfram Sang <hidden>
Date: 2015-12-19 10:50:37
Also in:
linux-i2c
Hi,
quoted
Since commit 6ada5c1e1b077a ("i2c: Mark adapter devices with pm_runtime_no_callbacks"), runtime PM on adapters turned into a no-op. So, we can remove these calls.Won't this break i2c client devices that use runtime PM? Not sure if any cases of such client exist now, I'll try to find some time to test this change.
Thanks, much appreciated.
IIRC client's pm_runtime* calls return error if their parent device's runtime PM is not enabled. Also enabling runtime PM on the i2c adapter allows propagating runtime PM calls up to its parent - the i2c controller platform device.
I was thinking the PM core would take care of that. Grepping for other users of pm_runtime_no_callbacks(), I see that most but not all use pm_runtime_enable() on the device, too. Asking linux-pm for help here: If we want to support RuntimePM for I2C clients, do we need to enable RuntimePM on the logical I2C adapter device (the bus master) which is already marked using pm_runtime_no_callbacks?
Perhaps we could just enable/disable adapter's runtime PM in i2c core.
That would be the proper place to do it, as I see it. Thanks, Wolfram