NFC: trf7970a: Add pm_runtime support
authorMark A. Greer <mgreer@animalcreek.com>
Tue, 25 Mar 2014 15:54:38 +0000 (08:54 -0700)
committerSamuel Ortiz <sameo@linux.intel.com>
Mon, 21 Apr 2014 22:37:28 +0000 (00:37 +0200)
commite6403b7c756f9d694332870ba0c2be7a4aa0b8c0
tree06627a8ffbe78a58f04f70f4763e91d19b5ef2b0
parenta1d2dc5b407ae18b59b7a129c93c8eb5ad7b1c80
NFC: trf7970a: Add pm_runtime support

Add pm_runtime support by moving the code that enables the trf7970a to
the pm_runtime hook routines. The pm_runtime 'autosuspend' feature is
used so that the device isn't disabled until at least 30 seconds have
passed since trf7970a_switch_rf_off() was last called.

The result is that when trf7970a_switch_rf_on() is called, the device
will be enabled and initialized (if it isn't already).  When
trf7970a_switch_rf_off() is called, it will turn off the RF immediately
but leave the device enabled for at least 30 seconds.
If 30 seconds have passed and the pm_runtime facility decides to suspend
the driver, the device will be disabled then.

Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/nfc/trf7970a.c