diff options
author | Gilad Broner <gbroner@codeaurora.org> | 2015-07-14 14:07:05 +0300 |
---|---|---|
committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-22 11:00:13 -0700 |
commit | 8f1b4b5eb025e773158e5764b7f538ebda1f7bc8 (patch) | |
tree | eb0471ba2cfddcb216c9143f3f7081c1252c176f /drivers/scsi/ufs/ufs-qcom.h | |
parent | 38da06a7709696c2c1179ae0f7ffc8d5b782ae92 (diff) |
scsi: ufs-qcom: add sys-fs entries for PM QoS control
Add sys-fs entries to allow user space control PM QoS
latency parameters and enable/disable PM QoS voting.
The entries are added under:
/sys/bus/platform/devices/624000.ufshc/624000.ufshc:ufs_variant/
pm_qos_enable:
write 0 to disable PM QoS, 1 to enable.
Example: "echo 1 > pm_qos_enable"
pm_qos_latency_us:
write the desired value for each cpu group, separated by a comma.
Example: "echo 10,20 > pm_qos_latency_us"
Change-Id: I9797a1e62c4867ab831b4f18cbb1e0ca9834247b
Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
Signed-off-by: Krishna Konda <kkonda@codeaurora.org>
[venkatg@codeaurora.org: resolved trivial merge conflicts]
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
Diffstat (limited to 'drivers/scsi/ufs/ufs-qcom.h')
-rw-r--r-- | drivers/scsi/ufs/ufs-qcom.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/ufs/ufs-qcom.h b/drivers/scsi/ufs/ufs-qcom.h index a8cc22ebb0ee..55edd8e777ef 100644 --- a/drivers/scsi/ufs/ufs-qcom.h +++ b/drivers/scsi/ufs/ufs-qcom.h @@ -283,6 +283,8 @@ struct ufs_qcom_pm_qos_cpu_group { /** * struct ufs_qcom_pm_qos - data related to PM QoS voting logic * @groups: PM QoS cpu group state array + * @enable_attr: sysfs attribute to enable/disable PM QoS voting logic + * @latency_attr: sysfs attribute to set latency value * @workq: single threaded workqueue to run PM QoS voting/unvoting * @num_clusters: number of clusters defined * @default_cpu: cpu to use for voting for request not specifying a cpu @@ -290,6 +292,8 @@ struct ufs_qcom_pm_qos_cpu_group { */ struct ufs_qcom_pm_qos { struct ufs_qcom_pm_qos_cpu_group *groups; + struct device_attribute enable_attr; + struct device_attribute latency_attr; struct workqueue_struct *workq; int num_groups; int default_cpu; |