drm/msm: dpu: Don't use power_event for vbif_init_memtypes
authorSean Paul <seanpaul@chromium.org>
Fri, 16 Nov 2018 18:42:14 +0000 (13:42 -0500)
committerRob Clark <robdclark@gmail.com>
Tue, 11 Dec 2018 18:10:08 +0000 (13:10 -0500)
power_events are only used for pm_runtime, and that's all handled in
dpu_kms. So just call vbif_init_memtypes at the correct times.

Changes in v2:
- Removed obsolete comment (Jeykumar)

Cc: Jeykumar Sankaran <jsanka@codeaurora.org>
Reviewed-by: Jeykumar Sankaran <jsanka@codeaurora.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h

index 62a3a46715e34a6ffaa1836d7814fcf594791108..62bba492d81cc798c3be8a4a36b4d2b489b8357f 100644 (file)
@@ -652,10 +652,6 @@ static void _dpu_kms_hw_destroy(struct dpu_kms *dpu_kms)
                dpu_hw_intr_destroy(dpu_kms->hw_intr);
        dpu_kms->hw_intr = NULL;
 
-       if (dpu_kms->power_event)
-               dpu_power_handle_unregister_event(
-                               &dpu_kms->phandle, dpu_kms->power_event);
-
        /* safe to call these more than once during shutdown */
        _dpu_debugfs_destroy(dpu_kms);
        _dpu_kms_mmu_destroy(dpu_kms);
@@ -836,16 +832,6 @@ u64 dpu_kms_get_clk_rate(struct dpu_kms *dpu_kms, char *clock_name)
        return clk_get_rate(clk->clk);
 }
 
-static void dpu_kms_handle_power_event(u32 event_type, void *usr)
-{
-       struct dpu_kms *dpu_kms = usr;
-
-       if (!dpu_kms)
-               return;
-
-       dpu_vbif_init_memtypes(dpu_kms);
-}
-
 static int dpu_kms_hw_init(struct msm_kms *kms)
 {
        struct dpu_kms *dpu_kms;
@@ -1016,13 +1002,7 @@ static int dpu_kms_hw_init(struct msm_kms *kms)
         */
        dev->mode_config.allow_fb_modifiers = true;
 
-       /*
-        * Handle (re)initializations during power enable
-        */
-       dpu_kms_handle_power_event(DPU_POWER_EVENT_ENABLE, dpu_kms);
-       dpu_kms->power_event = dpu_power_handle_register_event(
-                       &dpu_kms->phandle, DPU_POWER_EVENT_ENABLE,
-                       dpu_kms_handle_power_event, dpu_kms, "kms");
+       dpu_vbif_init_memtypes(dpu_kms);
 
        pm_runtime_put_sync(&dpu_kms->pdev->dev);
 
@@ -1176,6 +1156,8 @@ static int __maybe_unused dpu_runtime_resume(struct device *dev)
                return rc;
        }
 
+       dpu_vbif_init_memtypes(dpu_kms);
+
        rc = dpu_power_resource_enable(&dpu_kms->phandle, true);
        if (rc)
                DPU_ERROR("resource enable failed: %d\n", rc);
index f2c78deb0854e00931df5e1ab6e0428f38889381..5f08be187c86da818e2c0be28b3bf5e972ba551c 100644 (file)
@@ -114,7 +114,6 @@ struct dpu_kms {
        struct dpu_mdss_cfg *catalog;
 
        struct dpu_power_handle phandle;
-       struct dpu_power_event *power_event;
 
        /* directory entry for debugfs */
        struct dentry *debugfs_root;