diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/dce_virtual.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/dce_virtual.c | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_virtual.c b/drivers/gpu/drm/amd/amdgpu/dce_virtual.c index d6802be0ea39..c7da45c2c8fe 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_virtual.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_virtual.c | |||
@@ -25,11 +25,13 @@ | |||
25 | #include "amdgpu_pm.h" | 25 | #include "amdgpu_pm.h" |
26 | #include "amdgpu_i2c.h" | 26 | #include "amdgpu_i2c.h" |
27 | #include "atom.h" | 27 | #include "atom.h" |
28 | #include "amdgpu_atombios.h" | ||
29 | #include "atombios_crtc.h" | ||
30 | #include "atombios_encoders.h" | ||
31 | #include "amdgpu_pll.h" | 28 | #include "amdgpu_pll.h" |
32 | #include "amdgpu_connectors.h" | 29 | #include "amdgpu_connectors.h" |
30 | #ifdef CONFIG_DRM_AMDGPU_CIK | ||
31 | #include "dce_v8_0.h" | ||
32 | #endif | ||
33 | #include "dce_v10_0.h" | ||
34 | #include "dce_v11_0.h" | ||
33 | 35 | ||
34 | static void dce_virtual_set_display_funcs(struct amdgpu_device *adev); | 36 | static void dce_virtual_set_display_funcs(struct amdgpu_device *adev); |
35 | static void dce_virtual_set_irq_funcs(struct amdgpu_device *adev); | 37 | static void dce_virtual_set_irq_funcs(struct amdgpu_device *adev); |
@@ -98,6 +100,30 @@ static bool dce_virtual_is_display_hung(struct amdgpu_device *adev) | |||
98 | void dce_virtual_stop_mc_access(struct amdgpu_device *adev, | 100 | void dce_virtual_stop_mc_access(struct amdgpu_device *adev, |
99 | struct amdgpu_mode_mc_save *save) | 101 | struct amdgpu_mode_mc_save *save) |
100 | { | 102 | { |
103 | switch (adev->asic_type) { | ||
104 | case CHIP_BONAIRE: | ||
105 | case CHIP_HAWAII: | ||
106 | case CHIP_KAVERI: | ||
107 | case CHIP_KABINI: | ||
108 | case CHIP_MULLINS: | ||
109 | #ifdef CONFIG_DRM_AMDGPU_CIK | ||
110 | dce_v8_0_disable_dce(adev); | ||
111 | #endif | ||
112 | break; | ||
113 | case CHIP_FIJI: | ||
114 | case CHIP_TONGA: | ||
115 | dce_v10_0_disable_dce(adev); | ||
116 | break; | ||
117 | case CHIP_CARRIZO: | ||
118 | case CHIP_STONEY: | ||
119 | case CHIP_POLARIS11: | ||
120 | case CHIP_POLARIS10: | ||
121 | dce_v11_0_disable_dce(adev); | ||
122 | break; | ||
123 | default: | ||
124 | DRM_ERROR("Usupported ASIC type: 0x%X\n", adev->asic_type); | ||
125 | } | ||
126 | |||
101 | return; | 127 | return; |
102 | } | 128 | } |
103 | void dce_virtual_resume_mc_access(struct amdgpu_device *adev, | 129 | void dce_virtual_resume_mc_access(struct amdgpu_device *adev, |