The plan is to use the OPP bindings.  For now, remove the documentation
for qcom,gpu-pwrlevels, and make the driver fall back to a safe low
clock if the node is not present.

Note that no upstream dtb use this node.  For now we keep compatibility
with this node to avoid breaking compatibility with downstream android
dt files.

Signed-off-by: Rob Clark <robdcl...@gmail.com>
---
 Documentation/devicetree/bindings/display/msm/gpu.txt | 15 ---------------
 drivers/gpu/drm/msm/adreno/adreno_device.c            |  6 ++++--
 2 files changed, 4 insertions(+), 17 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/msm/gpu.txt 
b/Documentation/devicetree/bindings/display/msm/gpu.txt
index 67d0a58..747b984 100644
--- a/Documentation/devicetree/bindings/display/msm/gpu.txt
+++ b/Documentation/devicetree/bindings/display/msm/gpu.txt
@@ -12,12 +12,6 @@ Required properties:
   * "mem_iface_clk"
 - qcom,chipid: gpu chip-id.  Note this may become optional for future
   devices if we can reliably read the chipid from hw
-- qcom,gpu-pwrlevels: list of operating points
-  - compatible: "qcom,gpu-pwrlevels"
-  - for each qcom,gpu-pwrlevel:
-    - qcom,gpu-freq: requested gpu clock speed
-    - NOTE: downstream android driver defines additional parameters to
-      configure memory bandwidth scaling per OPP.
 
 Example:
 
@@ -39,14 +33,5 @@ Example:
                    <&mmcc GFX3D_AHB_CLK>,
                    <&mmcc MMSS_IMEM_AHB_CLK>;
                qcom,chipid = <0x03020100>;
-               qcom,gpu-pwrlevels {
-                       compatible = "qcom,gpu-pwrlevels";
-                       qcom,gpu-pwrlevel@0 {
-                               qcom,gpu-freq = <450000000>;
-                       };
-                       qcom,gpu-pwrlevel@1 {
-                               qcom,gpu-freq = <27000000>;
-                       };
-               };
        };
 };
diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c 
b/drivers/gpu/drm/msm/adreno/adreno_device.c
index e130b5e..7b9181b2 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_device.c
+++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
@@ -224,8 +224,10 @@ static int adreno_bind(struct device *dev, struct device 
*master, void *data)
        }
 
        if (!config.fast_rate) {
-               dev_err(dev, "could not find clk rates\n");
-               return -ENXIO;
+               dev_warn(dev, "could not find clk rates\n");
+               /* This is a safe low speed for all devices: */
+               config.fast_rate = 200000000;
+               config.slow_rate = 27000000;
        }
 
        for (i = 0; i < ARRAY_SIZE(quirks); i++)
-- 
2.9.3

_______________________________________________
Freedreno mailing list
Freedreno@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/freedreno

Reply via email to