浏览代码

Documentation: i2c: Use PM ops instead of legacy suspend/resume

New drivers should use PM ops instead of the legacy suspend/resume
callbacks. Update the I2C device driver guides to reflect this.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Lars-Peter Clausen 11 年之前
父节点
当前提交
5f835cef77
共有 2 个文件被更改,包括 6 次插入8 次删除
  1. 2 4
      Documentation/i2c/upgrading-clients
  2. 4 4
      Documentation/i2c/writing-clients

+ 2 - 4
Documentation/i2c/upgrading-clients

@@ -79,11 +79,10 @@ static struct i2c_driver example_driver = {
  	.driver		= {
  	.driver		= {
 		.owner		= THIS_MODULE,
 		.owner		= THIS_MODULE,
 		.name		= "example",
 		.name		= "example",
+		.pm		= &example_pm_ops,
 	},
 	},
 	.attach_adapter = example_attach_adapter,
 	.attach_adapter = example_attach_adapter,
 	.detach_client	= example_detach,
 	.detach_client	= example_detach,
-	.suspend	= example_suspend,
-	.resume		= example_resume,
 };
 };
 
 
 
 
@@ -272,10 +271,9 @@ static struct i2c_driver example_driver = {
  	.driver		= {
  	.driver		= {
 		.owner		= THIS_MODULE,
 		.owner		= THIS_MODULE,
 		.name		= "example",
 		.name		= "example",
+		.pm		= &example_pm_ops,
 	},
 	},
 	.id_table	= example_idtable,
 	.id_table	= example_idtable,
 	.probe		= example_probe,
 	.probe		= example_probe,
 	.remove		= example_remove,
 	.remove		= example_remove,
-	.suspend	= example_suspend,
-	.resume		= example_resume,
 };
 };

+ 4 - 4
Documentation/i2c/writing-clients

@@ -36,6 +36,7 @@ MODULE_DEVICE_TABLE(i2c, foo_idtable);
 static struct i2c_driver foo_driver = {
 static struct i2c_driver foo_driver = {
 	.driver = {
 	.driver = {
 		.name	= "foo",
 		.name	= "foo",
+		.pm	= &foo_pm_ops,	/* optional */
 	},
 	},
 
 
 	.id_table	= foo_idtable,
 	.id_table	= foo_idtable,
@@ -47,8 +48,6 @@ static struct i2c_driver foo_driver = {
 	.address_list	= normal_i2c,
 	.address_list	= normal_i2c,
 
 
 	.shutdown	= foo_shutdown,	/* optional */
 	.shutdown	= foo_shutdown,	/* optional */
-	.suspend	= foo_suspend,	/* optional */
-	.resume		= foo_resume,	/* optional */
 	.command	= foo_command,	/* optional, deprecated */
 	.command	= foo_command,	/* optional, deprecated */
 }
 }
 
 
@@ -279,8 +278,9 @@ Power Management
 
 
 If your I2C device needs special handling when entering a system low
 If your I2C device needs special handling when entering a system low
 power state -- like putting a transceiver into a low power mode, or
 power state -- like putting a transceiver into a low power mode, or
-activating a system wakeup mechanism -- do that in the suspend() method.
-The resume() method should reverse what the suspend() method does.
+activating a system wakeup mechanism -- do that by implementing the
+appropriate callbacks for the dev_pm_ops of the driver (like suspend
+and resume).
 
 
 These are standard driver model calls, and they work just like they
 These are standard driver model calls, and they work just like they
 would for any other driver stack.  The calls can sleep, and can use
 would for any other driver stack.  The calls can sleep, and can use