scsi: ufs: Add support for Auto-Hibernate Idle Timer
authorAdrian Hunter <adrian.hunter@intel.com>
Tue, 20 Mar 2018 13:07:38 +0000 (15:07 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 22 Mar 2018 01:21:25 +0000 (21:21 -0400)
commitad448378825f5746c5fa37718724bc8f4e7b6945
tree0ebb00a59acf4e870228d90900fe8c39b5dfbc30
parent114c1aa210494a02c26aa33f793e5b641df01989
scsi: ufs: Add support for Auto-Hibernate Idle Timer

UFS host controllers may support an autonomous power management feature
called the Auto-Hibernate Idle Timer. The timer is set to the number of
microseconds of idle time before the UFS host controller will autonomously
put the link into Hibernate state. That will save power at the expense of
increased latency. Any access to the host controller interface registers
will automatically put the link out of Hibernate state. So once configured,
the feature is transparent to the driver.

Expose the Auto-Hibernate Idle Timer value via SysFS to allow users to
choose between power efficiency or lower latency. Set a default value of
150 ms.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Documentation/ABI/testing/sysfs-driver-ufs
drivers/scsi/ufs/ufs-sysfs.c
drivers/scsi/ufs/ufshcd.c
drivers/scsi/ufs/ufshcd.h
drivers/scsi/ufs/ufshci.h