diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2015-06-05 06:03:17 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2015-06-05 06:03:17 -0700 |
commit | dd4151b763c65b4b7a490773630e6a498b2b94bd (patch) | |
tree | 13fab494aa373f8e5616378ab8c9200d97f9ee1c /include/linux | |
parent | a5fa232aa134b7bd3d45da06d8728a7e4ee0305d (diff) | |
parent | b45b1357f30207815906caa197e6e288c37c6c5c (diff) | |
download | qcom-msm-v3.10-dd4151b763c65b4b7a490773630e6a498b2b94bd.tar.gz |
Merge "ARM: dts: msm: Enable modified dynamic qos in sdhci for MSM8939"
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/mmc/sdhci.h | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/include/linux/mmc/sdhci.h b/include/linux/mmc/sdhci.h index 6dcd8a315a5..230da189c72 100644 --- a/include/linux/mmc/sdhci.h +++ b/include/linux/mmc/sdhci.h @@ -30,6 +30,19 @@ enum sdhci_power_policy { SDHCI_POWER_SAVE_MODE, }; +struct sdhci_host_qos { + unsigned int *cpu_dma_latency_us; + unsigned int cpu_dma_latency_tbl_sz; + struct pm_qos_request pm_qos_req_dma; +}; + +enum sdhci_host_qos_policy { + SDHCI_QOS_READ_WRITE, + SDHCI_QOS_READ, + SDHCI_QOS_WRITE, + SDHCI_QOS_MAX_POLICY, +}; + struct sdhci_host { /* Data set by hardware interface driver */ const char *hw_name; /* Hardware bus name */ @@ -266,11 +279,13 @@ struct sdhci_host { #define SDHCI_TUNING_MODE_1 0 struct timer_list tuning_timer; /* Timer for tuning */ - unsigned int *cpu_dma_latency_us; - unsigned int cpu_dma_latency_tbl_sz; - struct pm_qos_request pm_qos_req_dma; + struct sdhci_host_qos host_qos[SDHCI_QOS_MAX_POLICY]; + enum sdhci_host_qos_policy last_qos_policy; + + bool host_use_default_qos; unsigned int pm_qos_timeout_us; /* timeout for PM QoS request */ struct device_attribute pm_qos_tout; + struct delayed_work pm_qos_work; struct sdhci_next next_data; ktime_t data_start_time; |