From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Mauro Carvalho Chehab <mchehab@infradead.org>,
linux-media@vger.kernel.org
Subject: Re: [PATCH] [media] Convert I2C drivers to dev_pm_ops
Date: Tue, 10 Apr 2012 20:02:08 -0300 [thread overview]
Message-ID: <4F84BBF0.2070208@redhat.com> (raw)
In-Reply-To: <1332448493-31828-1-git-send-email-broonie@opensource.wolfsonmicro.com>
Em 22-03-2012 17:34, Mark Brown escreveu:
> The legacy I2C PM functions have been deprecated and warning on boot
> for over a year, convert the drivers still using them to dev_pm_ops.
>
> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Em 22-03-2012 17:39, Mark Brown escreveu:
> On Thu, Mar 22, 2012 at 08:34:53PM +0000, Mark Brown wrote:
>
>> + .pm = msp3400_pm_ops,
>
> Gah, missing &s - will resend tomorrow.
It is not just the missing & at msp3400:
drivers/media/video/msp3400-driver.c:869:2: error: ‘msp3400_suspend’ undeclared here (not in a function)
drivers/media/video/msp3400-driver.c:869:2: error: ‘msp3400_resume’ undeclared here (not in a function)
drivers/media/video/msp3400-driver.c:882:3: error: initializer element is not constant
drivers/media/video/msp3400-driver.c:882:3: error: (near initialization for ‘msp_driver.driver.pm’)
drivers/media/video/msp3400-driver.c:600:12: warning: ‘msp_suspend’ defined but not used [-Wunused-function]
drivers/media/video/msp3400-driver.c:608:12: warning: ‘msp_resume’ defined but not used [-Wunused-function]
drivers/media/video/tuner-core.c:1329:3: error: initializer element is not constant
drivers/media/video/tuner-core.c:1329:3: error: (near initialization for ‘tuner_driver.driver.pm’)
Please fix and re-send it.
Thanks!
mauro
> ---
> drivers/media/video/msp3400-driver.c | 13 +++++++++----
> drivers/media/video/tuner-core.c | 13 +++++++++----
> 2 files changed, 18 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/media/video/msp3400-driver.c b/drivers/media/video/msp3400-driver.c
> index 82ce507..0a55317 100644
> --- a/drivers/media/video/msp3400-driver.c
> +++ b/drivers/media/video/msp3400-driver.c
> @@ -597,15 +597,17 @@ static int msp_log_status(struct v4l2_subdev *sd)
> return 0;
> }
>
> -static int msp_suspend(struct i2c_client *client, pm_message_t state)
> +static int msp_suspend(struct device *dev)
> {
> + struct i2c_client *client = to_i2c_client(dev);
> v4l_dbg(1, msp_debug, client, "suspend\n");
> msp_reset(client);
> return 0;
> }
>
> -static int msp_resume(struct i2c_client *client)
> +static int msp_resume(struct device *dev)
> {
> + struct i2c_client *client = to_i2c_client(dev);
> v4l_dbg(1, msp_debug, client, "resume\n");
> msp_wake_thread(client);
> return 0;
> @@ -863,6 +865,10 @@ static int msp_remove(struct i2c_client *client)
>
> /* ----------------------------------------------------------------------- */
>
> +static const struct dev_pm_ops msp3400_pm_ops = {
> + SET_SYSTEM_SLEEP_PM_OPS(msp3400_suspend, msp3400_resume)
> +};
> +
> static const struct i2c_device_id msp_id[] = {
> { "msp3400", 0 },
> { }
> @@ -873,11 +879,10 @@ static struct i2c_driver msp_driver = {
> .driver = {
> .owner = THIS_MODULE,
> .name = "msp3400",
> + .pm = msp3400_pm_ops,
> },
> .probe = msp_probe,
> .remove = msp_remove,
> - .suspend = msp_suspend,
> - .resume = msp_resume,
> .id_table = msp_id,
> };
>
> diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c
> index a5c6397..d3de74f 100644
> --- a/drivers/media/video/tuner-core.c
> +++ b/drivers/media/video/tuner-core.c
> @@ -1241,8 +1241,9 @@ static int tuner_log_status(struct v4l2_subdev *sd)
> return 0;
> }
>
> -static int tuner_suspend(struct i2c_client *c, pm_message_t state)
> +static int tuner_suspend(struct device *dev)
> {
> + struct i2c_client *c = to_i2c_client(dev);
> struct tuner *t = to_tuner(i2c_get_clientdata(c));
> struct analog_demod_ops *analog_ops = &t->fe.ops.analog_ops;
>
> @@ -1254,8 +1255,9 @@ static int tuner_suspend(struct i2c_client *c, pm_message_t state)
> return 0;
> }
>
> -static int tuner_resume(struct i2c_client *c)
> +static int tuner_resume(struct device *dev)
> {
> + struct i2c_client *c = to_i2c_client(dev);
> struct tuner *t = to_tuner(i2c_get_clientdata(c));
>
> tuner_dbg("resume\n");
> @@ -1310,6 +1312,10 @@ static const struct v4l2_subdev_ops tuner_ops = {
> * I2C structs and module init functions
> */
>
> +static const struct dev_pm_ops tuner_pm_ops = {
> + SET_SYSTEM_SLEEP_PM_OPS(tuner_suspend, tuner_resume)
> +};
> +
> static const struct i2c_device_id tuner_id[] = {
> { "tuner", }, /* autodetect */
> { }
> @@ -1320,12 +1326,11 @@ static struct i2c_driver tuner_driver = {
> .driver = {
> .owner = THIS_MODULE,
> .name = "tuner",
> + .pm = tuner_pm_ops,
> },
> .probe = tuner_probe,
> .remove = tuner_remove,
> .command = tuner_command,
> - .suspend = tuner_suspend,
> - .resume = tuner_resume,
> .id_table = tuner_id,
> };
>
next prev parent reply other threads:[~2012-04-10 23:02 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-22 20:34 [PATCH] [media] Convert I2C drivers to dev_pm_ops Mark Brown
2012-03-22 20:39 ` Mark Brown
2012-04-10 23:02 ` Mauro Carvalho Chehab [this message]
-- strict thread matches above, loose matches on Subject: below --
2012-04-11 8:38 Mark Brown
2012-05-03 10:54 Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F84BBF0.2070208@redhat.com \
--to=mchehab@redhat.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).