summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorRoger Quadros <rogerq@ti.com>2012-08-15 16:26:48 +0300
committerXavier Boudet <x-boudet@ti.com>2012-08-16 14:58:20 +0200
commitda9c43ee05c8bedf9b894f9670789ac6a3f800a1 (patch)
tree300131337fc84c54e03a7be79ab815070cf78d97 /drivers
parentfe8e2f9d7a6e8442fc421719718864a0756fd37c (diff)
HACK: iommu: omap: Prevent DSP power domain from going below CSWR
DSP firmware doesn't support context losses so we prevent the DSP power domain from going Closed Switch Retention state. Signed-off-by: Roger Quadros <rogerq@ti.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/iommu/omap-iommu.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c
index 221046e843e5..9639382bb270 100644
--- a/drivers/iommu/omap-iommu.c
+++ b/drivers/iommu/omap-iommu.c
@@ -131,6 +131,17 @@ int omap_iommu_update_latency(struct omap_iommu *oiommu, int val)
if (!strcmp(oiommu->name, "ipu"))
pm_qos_update_request(&oiommu->qos_request.pm_qos, val);
else {
+ /*
+ * HACK: prevent DSP from going below Closed switch Retention
+ * state as firmware doesn't support it
+ */
+ if (val < 300) {
+ pr_info("%s Requested latency %d but limiting "
+ " DSP latency to %d due to buggy firmware\n",
+ __func__, val, 300);
+ val = 300;
+ }
+ /* end HACK */
ret = dev_pm_qos_update_request(
&oiommu->qos_request.dev_pm_qos, val);
ret = ret > 0 ? 0 : ret;