807-gpu-support-layerscape.patch 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. From 4278a546526094dd57bfa3cf7ae2bf34092246db Mon Sep 17 00:00:00 2001
  2. From: Yangbo Lu <[email protected]>
  3. Date: Mon, 25 Sep 2017 12:10:01 +0800
  4. Subject: [PATCH] gpu: support layerscape
  5. This is a integrated patch for layerscape dcu support.
  6. Signed-off-by: Alison Wang <[email protected]>
  7. Signed-off-by: Yangbo Lu <[email protected]>
  8. ---
  9. drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 18 ++++++++++++++++--
  10. 1 file changed, 16 insertions(+), 2 deletions(-)
  11. --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c
  12. +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c
  13. @@ -225,7 +225,6 @@ static int fsl_dcu_drm_pm_suspend(struct
  14. if (!fsl_dev)
  15. return 0;
  16. - disable_irq(fsl_dev->irq);
  17. drm_kms_helper_poll_disable(fsl_dev->drm);
  18. console_lock();
  19. @@ -243,6 +242,8 @@ static int fsl_dcu_drm_pm_suspend(struct
  20. return PTR_ERR(fsl_dev->state);
  21. }
  22. + disable_irq(fsl_dev->irq);
  23. +
  24. clk_disable_unprepare(fsl_dev->pix_clk);
  25. clk_disable_unprepare(fsl_dev->clk);
  26. @@ -263,6 +264,14 @@ static int fsl_dcu_drm_pm_resume(struct
  27. return ret;
  28. }
  29. + ret = clk_prepare_enable(fsl_dev->pix_clk);
  30. + if (ret < 0) {
  31. + dev_err(dev, "failed to enable dcu pix clk\n");
  32. + return ret;
  33. + }
  34. +
  35. + enable_irq(fsl_dev->irq);
  36. +
  37. if (fsl_dev->tcon)
  38. fsl_tcon_bypass_enable(fsl_dev->tcon);
  39. fsl_dcu_drm_init_planes(fsl_dev->drm);
  40. @@ -273,7 +282,6 @@ static int fsl_dcu_drm_pm_resume(struct
  41. console_unlock();
  42. drm_kms_helper_poll_enable(fsl_dev->drm);
  43. - enable_irq(fsl_dev->irq);
  44. return 0;
  45. }
  46. @@ -389,6 +397,12 @@ static int fsl_dcu_drm_probe(struct plat
  47. goto disable_clk;
  48. }
  49. + ret = clk_prepare_enable(fsl_dev->pix_clk);
  50. + if (ret < 0) {
  51. + dev_err(dev, "failed to enable dcu pix clk\n");
  52. + return ret;
  53. + }
  54. +
  55. fsl_dev->tcon = fsl_tcon_init(dev);
  56. drm = drm_dev_alloc(driver, dev);