All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] PM: Introduce EXPORT_NS_GPL_DEV_PM_OPS() and use cases in IIO.
@ 2022-08-07 19:20 Jonathan Cameron
  2022-08-07 19:20 ` [PATCH 1/5] PM: core: Add EXPORT_NS_GPL_DEV_PM_OPS to avoid drivers rolling own Jonathan Cameron
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Jonathan Cameron @ 2022-08-07 19:20 UTC (permalink / raw)
  To: linux-iio, Rafael J . Wysocki, linux-pm
  Cc: Paul Cercueil, Sean Nyekjaer, Rui Miguel Silva,
	Jean-Baptiste Maneyrol, Linus Walleij, Jonathan Cameron

From: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Perhaps the most complex case we can have is a core driver module (usually
with accompanying per bus modules) that exports, in a namespace,
a struct dev_pm_ops. The driver has different handling for runtime and
sleep suspend / resume so (almost) all callbacks are provided.
The pm.h helper macro _EXPORT_DEV_PM_OPS() could be used here but the
handling of the last two parameters is unusual and very different from
the macros intended for driver usage. First parameter needs to be "_gpl"
and second needs to be the namespace specified as a string.  Other NS
macros take it without quotes.

As such, this series proposes introducing a suitable macro and then provides
a number of IIO driver conversions. Where relevant the exports from the
driver are moved into the new namespace.

If accepted we can either take the whole lot through the PM tree and hope
there is nothing much else overlapping with this driver code in this cycle,
or ideally we could use an immutable branch and pull this into both the
IIO and PM trees.

Jonathan Cameron (5):
  PM: core: Add EXPORT_NS_GPL_DEV_PM_OPS to avoid drivers rolling own.
  iio: accel: fxls8962af: Use new EXPORT_NS_GPL_DEV_PM_OPS()
  iio: gyro: fxas210002c: Move exports to IIO_FXAS210002C namespace.
  iio: imu: inv_icm42600: Move exports to IIO_ICM42600 namespace
  iio: imu: inv_mpu: Move exports to IIO_MPU6050 namespace

 drivers/iio/accel/fxls8962af-core.c           | 17 +++++++--------
 drivers/iio/accel/fxls8962af-i2c.c            |  2 +-
 drivers/iio/accel/fxls8962af-spi.c            |  2 +-
 drivers/iio/gyro/fxas21002c_core.c            | 21 ++++++++-----------
 drivers/iio/gyro/fxas21002c_i2c.c             |  3 ++-
 drivers/iio/gyro/fxas21002c_spi.c             |  3 ++-
 .../iio/imu/inv_icm42600/inv_icm42600_core.c  | 21 ++++++++-----------
 .../iio/imu/inv_icm42600/inv_icm42600_i2c.c   |  3 ++-
 .../iio/imu/inv_icm42600/inv_icm42600_spi.c   |  3 ++-
 drivers/iio/imu/inv_mpu6050/inv_mpu_core.c    | 18 +++++++---------
 drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c     |  3 ++-
 drivers/iio/imu/inv_mpu6050/inv_mpu_spi.c     |  3 ++-
 include/linux/pm.h                            |  5 +++++
 13 files changed, 52 insertions(+), 52 deletions(-)

-- 
2.37.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-08-22 19:34 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-07 19:20 [PATCH 0/5] PM: Introduce EXPORT_NS_GPL_DEV_PM_OPS() and use cases in IIO Jonathan Cameron
2022-08-07 19:20 ` [PATCH 1/5] PM: core: Add EXPORT_NS_GPL_DEV_PM_OPS to avoid drivers rolling own Jonathan Cameron
2022-08-08 11:22   ` Paul Cercueil
2022-08-13 16:14     ` Jonathan Cameron
2022-08-07 19:20 ` [PATCH 2/5] iio: accel: fxls8962af: Use new EXPORT_NS_GPL_DEV_PM_OPS() Jonathan Cameron
2022-08-08 11:37   ` Sean Nyekjaer
2022-08-07 19:20 ` [PATCH 3/5] iio: gyro: fxas210002c: Move exports to IIO_FXAS210002C namespace Jonathan Cameron
2022-08-08 11:00   ` Rui Miguel Silva
2022-08-07 19:20 ` [PATCH 4/5] iio: imu: inv_icm42600: Move exports to IIO_ICM42600 namespace Jonathan Cameron
2022-08-07 19:20 ` [PATCH 5/5] iio: imu: inv_mpu: Move exports to IIO_MPU6050 namespace Jonathan Cameron
2022-08-22  8:59   ` Linus Walleij
2022-08-08  9:36 ` [PATCH 0/5] PM: Introduce EXPORT_NS_GPL_DEV_PM_OPS() and use cases in IIO Andy Shevchenko
2022-08-22  9:04 ` Linus Walleij
2022-08-22 18:59   ` Jonathan Cameron

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.