Skip to content

Commit

Permalink
[media] Convert I2C drivers to dev_pm_ops
Browse files Browse the repository at this point in the history
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>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Mark Brown authored and Mauro Carvalho Chehab committed May 15, 2012
1 parent b189000 commit 5cbd28d
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 8 deletions.
15 changes: 11 additions & 4 deletions drivers/media/video/msp3400-driver.c
Original file line number Diff line number Diff line change
Expand Up @@ -597,19 +597,23 @@ static int msp_log_status(struct v4l2_subdev *sd)
return 0;
}

static int msp_suspend(struct i2c_client *client, pm_message_t state)
#ifdef CONFIG_PM_SLEEP
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;
}
#endif

/* ----------------------------------------------------------------------- */

Expand Down Expand Up @@ -863,6 +867,10 @@ static int msp_remove(struct i2c_client *client)

/* ----------------------------------------------------------------------- */

static const struct dev_pm_ops msp3400_pm_ops = {
SET_SYSTEM_SLEEP_PM_OPS(msp_suspend, msp_resume)
};

static const struct i2c_device_id msp_id[] = {
{ "msp3400", 0 },
{ }
Expand All @@ -873,11 +881,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,
};

Expand Down
15 changes: 11 additions & 4 deletions drivers/media/video/tuner-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1241,8 +1241,10 @@ static int tuner_log_status(struct v4l2_subdev *sd)
return 0;
}

static int tuner_suspend(struct i2c_client *c, pm_message_t state)
#ifdef CONFIG_PM_SLEEP
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;

Expand All @@ -1254,8 +1256,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");
Expand All @@ -1266,6 +1269,7 @@ static int tuner_resume(struct i2c_client *c)

return 0;
}
#endif

static int tuner_command(struct i2c_client *client, unsigned cmd, void *arg)
{
Expand Down Expand Up @@ -1310,6 +1314,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 */
{ }
Expand All @@ -1320,12 +1328,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,
};

Expand Down

0 comments on commit 5cbd28d

Please sign in to comment.