Re: [PATCH 0/5] PM: Introduce EXPORT_NS_GPL_DEV_PM_OPS() and use cases in IIO.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Aug 7, 2022 at 9:13 PM Jonathan Cameron <jic23@xxxxxxxxxx> wrote:
>
> From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
>
> 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.

Pretty straightforward and looks useful to me, thanks!
Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>

> 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
>


-- 
With Best Regards,
Andy Shevchenko



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux