Re: [PATCH 3/3] driver: Add Legacy PM OPS usage check and warning to driver_register()

From: Rafael J. Wysocki
Date: Mon Dec 23 2013 - 19:38:21 EST


On Thursday, November 07, 2013 05:03:50 PM Shuah Khan wrote:
> Add Legacy PM OPS usage checks to driver_register() function. If Legacy PM OPS
> usage is found, print warning message to indicate the driver code needs
> updating to use Dev PM OPS interfaces. This will help serve as a way to track
> drivers that still use Legacy PM OPS and fix them.
>
> The Legacy PM OPS check looks for suspend(struct device *, pm_message_t) or
> resume(struct device *) struct device_driver interfaces.
>
> Signed-off-by: Shuah Khan <shuah.kh@xxxxxxxxxxx>
> ---
> drivers/base/driver.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/base/driver.c b/drivers/base/driver.c
> index 9e29943..10ff280 100644
> --- a/drivers/base/driver.c
> +++ b/drivers/base/driver.c
> @@ -157,6 +157,10 @@ int driver_register(struct device_driver *drv)
> printk(KERN_WARNING "Driver '%s' needs updating - please use "
> "bus_type methods\n", drv->name);
>
> + if (drv->suspend || drv->resume)
> + pr_warn("Please update driver '%s' to use dev pm ops.\n",
> + drv->name);

What about the following message instead:

pr_warn("Driver '%s' needs updating - please use the pm pointer.\n",
drv->name);

And analogously for bus types and classes?

> +
> other = driver_find(drv->name, drv->bus);
> if (other) {
> printk(KERN_ERR "Error: Driver '%s' is already registered, "
>

Thanks!

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/