drm/msm: drop _clk suffix from clk names
authorRob Clark <robdclark@gmail.com>
Mon, 30 Jan 2017 16:30:58 +0000 (11:30 -0500)
committerRob Clark <robdclark@gmail.com>
Mon, 6 Feb 2017 16:28:42 +0000 (11:28 -0500)
Suggested by Rob Herring.  We still support the old names for
compatibility with downstream android dt files.

Cc: Rob Herring <robh@kernel.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/display/msm/gpu.txt
drivers/gpu/drm/msm/msm_drv.c
drivers/gpu/drm/msm/msm_drv.h
drivers/gpu/drm/msm/msm_gpu.c

index 7ac3052ca7b55320541b5c59015e42c7cd6de197..43fac0fe09bbaf69bfbc1539ffbf095a3078bba8 100644 (file)
@@ -11,9 +11,9 @@ Required properties:
 - clocks: device clocks
   See ../clocks/clock-bindings.txt for details.
 - clock-names: the following clocks are required:
-  * "core_clk"
-  * "iface_clk"
-  * "mem_iface_clk"
+  * "core"
+  * "iface"
+  * "mem_iface"
 
 Example:
 
@@ -27,9 +27,9 @@ Example:
                interrupts = <GIC_SPI 80 0>;
                interrupt-names = "kgsl_3d0_irq";
                clock-names =
-                   "core_clk",
-                   "iface_clk",
-                   "mem_iface_clk";
+                   "core",
+                   "iface",
+                   "mem_iface";
                clocks =
                    <&mmcc GFX3D_CLK>,
                    <&mmcc GFX3D_AHB_CLK>,
index 6b85c41952529fb6e585703285cd56deedd664d0..70226eaa5cac24ad34a85e1b0117492acca3d471 100644 (file)
@@ -91,6 +91,25 @@ module_param(dumpstate, bool, 0600);
  * Util/helpers:
  */
 
+struct clk *msm_clk_get(struct platform_device *pdev, const char *name)
+{
+       struct clk *clk;
+       char name2[32];
+
+       clk = devm_clk_get(&pdev->dev, name);
+       if (!IS_ERR(clk) || PTR_ERR(clk) == -EPROBE_DEFER)
+               return clk;
+
+       snprintf(name2, sizeof(name2), "%s_clk", name);
+
+       clk = devm_clk_get(&pdev->dev, name2);
+       if (!IS_ERR(clk))
+               dev_warn(&pdev->dev, "Using legacy clk name binding.  Use "
+                               "\"%s\" instead of \"%s\"\n", name, name2);
+
+       return clk;
+}
+
 void __iomem *msm_ioremap(struct platform_device *pdev, const char *name,
                const char *dbgname)
 {
index ed4dad3ca133b101428b37bf91f0664cf9114642..5f6f48f4fbd933bfc7a021bb930bc37bd89ae161 100644 (file)
@@ -318,6 +318,7 @@ static inline int msm_debugfs_late_init(struct drm_device *dev) { return 0; }
 static inline void msm_rd_dump_submit(struct msm_gem_submit *submit) {}
 #endif
 
+struct clk *msm_clk_get(struct platform_device *pdev, const char *name);
 void __iomem *msm_ioremap(struct platform_device *pdev, const char *name,
                const char *dbgname);
 void msm_writel(u32 data, void __iomem *addr);
index b28527a65d096e839a26cb117a9d66ddf22dd13d..99e05aacbee181f4341625af8abbc91ad284f381 100644 (file)
@@ -560,8 +560,7 @@ static irqreturn_t irq_handler(int irq, void *data)
 }
 
 static const char *clk_names[] = {
-               "core_clk", "iface_clk", "rbbmtimer_clk", "mem_clk",
-               "mem_iface_clk", "alt_mem_iface_clk",
+       "core", "iface", "rbbmtimer", "mem", "mem_iface", "alt_mem_iface",
 };
 
 int msm_gpu_init(struct drm_device *drm, struct platform_device *pdev,
@@ -625,13 +624,13 @@ int msm_gpu_init(struct drm_device *drm, struct platform_device *pdev,
 
        /* Acquire clocks: */
        for (i = 0; i < ARRAY_SIZE(clk_names); i++) {
-               gpu->grp_clks[i] = devm_clk_get(&pdev->dev, clk_names[i]);
+               gpu->grp_clks[i] = msm_clk_get(pdev, clk_names[i]);
                DBG("grp_clks[%s]: %p", clk_names[i], gpu->grp_clks[i]);
                if (IS_ERR(gpu->grp_clks[i]))
                        gpu->grp_clks[i] = NULL;
        }
 
-       gpu->ebi1_clk = devm_clk_get(&pdev->dev, "bus_clk");
+       gpu->ebi1_clk = msm_clk_get(pdev, "bus");
        DBG("ebi1_clk: %p", gpu->ebi1_clk);
        if (IS_ERR(gpu->ebi1_clk))
                gpu->ebi1_clk = NULL;