Merge tag 'tilcdc-4.22' of https://github.com/jsarha/linux into drm-next
authorDave Airlie <airlied@redhat.com>
Thu, 10 Jan 2019 20:29:26 +0000 (06:29 +1000)
committerDave Airlie <airlied@redhat.com>
Thu, 10 Jan 2019 20:29:31 +0000 (06:29 +1000)
tilcdc pull request for Linux v4.22

Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Jyri Sarha <jsarha@ti.com>
Link: https://patchwork.freedesktop.org/patch/msgid/cdf82a00-4e40-20a6-cc7d-3278dc23473e@ti.com
1  2 
drivers/gpu/drm/tilcdc/tilcdc_drv.c

index 3dac08b24140fe5c16c90c76f2379f6d63ecd9ba,bbd390cacc6b27989746ddc4a424b1878140fb2e..337e86a1d5eaa59c358e4cf0393510ea5c045605
@@@ -140,6 -140,7 +140,6 @@@ static int tilcdc_commit(struct drm_dev
  
  static const struct drm_mode_config_funcs mode_config_funcs = {
        .fb_create = tilcdc_fb_create,
 -      .output_poll_changed = drm_fb_helper_output_poll_changed,
        .atomic_check = tilcdc_atomic_check,
        .atomic_commit = tilcdc_commit,
  };
@@@ -183,6 -184,12 +183,12 @@@ static void tilcdc_fini(struct drm_devi
  {
        struct tilcdc_drm_private *priv = dev->dev_private;
  
+ #ifdef CONFIG_CPU_FREQ
+       if (priv->freq_transition.notifier_call)
+               cpufreq_unregister_notifier(&priv->freq_transition,
+                                           CPUFREQ_TRANSITION_NOTIFIER);
+ #endif
        if (priv->crtc)
                tilcdc_crtc_shutdown(priv->crtc);
  
                drm_dev_unregister(dev);
  
        drm_kms_helper_poll_fini(dev);
 -
 -      drm_fb_cma_fbdev_fini(dev);
 -
        drm_irq_uninstall(dev);
        drm_mode_config_cleanup(dev);
        tilcdc_remove_external_device(dev);
  
- #ifdef CONFIG_CPU_FREQ
-       if (priv->freq_transition.notifier_call)
-               cpufreq_unregister_notifier(&priv->freq_transition,
-                                           CPUFREQ_TRANSITION_NOTIFIER);
- #endif
        if (priv->clk)
                clk_put(priv->clk);
  
@@@ -270,17 -274,6 +270,6 @@@ static int tilcdc_init(struct drm_drive
                goto init_failed;
        }
  
- #ifdef CONFIG_CPU_FREQ
-       priv->freq_transition.notifier_call = cpufreq_transition;
-       ret = cpufreq_register_notifier(&priv->freq_transition,
-                       CPUFREQ_TRANSITION_NOTIFIER);
-       if (ret) {
-               dev_err(dev, "failed to register cpufreq notifier\n");
-               priv->freq_transition.notifier_call = NULL;
-               goto init_failed;
-       }
- #endif
        if (of_property_read_u32(node, "max-bandwidth", &priv->max_bandwidth))
                priv->max_bandwidth = TILCDC_DEFAULT_MAX_BANDWIDTH;
  
        }
        modeset_init(ddev);
  
+ #ifdef CONFIG_CPU_FREQ
+       priv->freq_transition.notifier_call = cpufreq_transition;
+       ret = cpufreq_register_notifier(&priv->freq_transition,
+                       CPUFREQ_TRANSITION_NOTIFIER);
+       if (ret) {
+               dev_err(dev, "failed to register cpufreq notifier\n");
+               priv->freq_transition.notifier_call = NULL;
+               goto init_failed;
+       }
+ #endif
        if (priv->is_componentized) {
                ret = component_bind_all(dev, ddev);
                if (ret < 0)
  
        drm_mode_config_reset(ddev);
  
 -      ret = drm_fb_cma_fbdev_init(ddev, bpp, 0);
 -      if (ret)
 -              goto init_failed;
 -
        drm_kms_helper_poll_init(ddev);
  
        ret = drm_dev_register(ddev, 0);
        if (ret)
                goto init_failed;
  
 +      drm_fbdev_generic_setup(ddev, bpp);
 +
        priv->is_registered = true;
        return 0;
  
@@@ -513,6 -519,7 +513,6 @@@ DEFINE_DRM_GEM_CMA_FOPS(fops)
  static struct drm_driver tilcdc_driver = {
        .driver_features    = (DRIVER_HAVE_IRQ | DRIVER_GEM | DRIVER_MODESET |
                               DRIVER_PRIME | DRIVER_ATOMIC),
 -      .lastclose          = drm_fb_helper_lastclose,
        .irq_handler        = tilcdc_irq,
        .gem_free_object_unlocked = drm_gem_cma_free_object,
        .gem_print_info     = drm_gem_cma_print_info,