iio: mlx90614: Add power management
authorVianney le Clément de Saint-Marcq <vianney.leclement@essensium.com>
Mon, 30 Mar 2015 08:35:01 +0000 (10:35 +0200)
committerJonathan Cameron <jic23@kernel.org>
Thu, 9 Apr 2015 14:09:16 +0000 (15:09 +0100)
commiteb4b07dae4d4b7915333f687675209f677f72fc6
tree70c1aa3b03772c2a7cca584057397659dc3a5ef4
parentfad65a8fe5b85b5039b316258c2790e773cc3502
iio: mlx90614: Add power management

Add support for system sleep and runtime power management.

To wake up the device, the SDA line should be held low for at least 33ms
while SCL is high.  As this is not possible using the i2c API (and not
supported by all i2c adapters), a GPIO connected to the SDA line is
needed.  The GPIO is named "wakeup" and can be specified in a device
tree with the "wakeup-gpios" binding.

If the wake-up GPIO is not given, disable power management for the
device.  Entering sleep requires an SMBus byte access, hence power
management is also disabled if byte access is not supported by the
adapter.

Signed-off-by: Vianney le Clément de Saint-Marcq <vianney.leclement@essensium.com>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Documentation/devicetree/bindings/iio/temperature/mlx90614.txt
drivers/iio/temperature/mlx90614.c