drm/amdgpu/dce11: add dce clock setting for ELM/BAF
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 15 Oct 2015 21:14:31 +0000 (17:14 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 5 May 2016 00:24:22 +0000 (20:24 -0400)
Setup the disp clock and dp reference clock.  This is
now a separate command table on elm/baf compared to
older asics.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
drivers/gpu/drm/amd/amdgpu/dce_v11_0.c

index c86456e..d0eae2c 100644 (file)
@@ -3090,7 +3090,15 @@ static int dce_v11_0_hw_init(void *handle)
        /* init dig PHYs, disp eng pll */
        amdgpu_atombios_crtc_powergate_init(adev);
        amdgpu_atombios_encoder_init_dig(adev);
-       amdgpu_atombios_crtc_set_disp_eng_pll(adev, adev->clock.default_dispclk);
+       if ((adev->asic_type == CHIP_ELLESMERE) ||
+           (adev->asic_type == CHIP_BAFFIN)) {
+               amdgpu_atombios_crtc_set_dce_clock(adev, adev->clock.default_dispclk,
+                                                  DCE_CLOCK_TYPE_DISPCLK, ATOM_GCK_DFS);
+               amdgpu_atombios_crtc_set_dce_clock(adev, 0,
+                                                  DCE_CLOCK_TYPE_DPREFCLK, ATOM_GCK_DFS);
+       } else {
+               amdgpu_atombios_crtc_set_disp_eng_pll(adev, adev->clock.default_dispclk);
+       }
 
        /* initialize hpd */
        dce_v11_0_hpd_init(adev);