Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu: replace dce_virtual with amdgpu_vkms (v3)

Move dce_virtual into amdgpu_vkms and update all references to
dce_virtual with amdgpu_vkms.

v2: Removed more references to dce_virtual.

v3: Restored display modes from previous implementation.

Signed-off-by: Ryan Taylor <Ryan.Taylor@amd.com>
Reported-by: kernel test robot <lkp@intel.com>
Suggested-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Ryan Taylor and committed by
Alex Deucher
733ee71a fd922f7a

+228 -290
+1 -2
drivers/gpu/drm/amd/amdgpu/Makefile
··· 120 120 amdgpu-y += \ 121 121 dce_v10_0.o \ 122 122 dce_v11_0.o \ 123 - amdgpu_vkms.o \ 124 - dce_virtual.o 123 + amdgpu_vkms.o 125 124 126 125 # add GFX block 127 126 amdgpu-y += \
+195
drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
··· 5 5 #include <drm/drm_vblank.h> 6 6 7 7 #include "amdgpu.h" 8 + #ifdef CONFIG_DRM_AMDGPU_SI 9 + #include "dce_v6_0.h" 10 + #endif 11 + #ifdef CONFIG_DRM_AMDGPU_CIK 12 + #include "dce_v8_0.h" 13 + #endif 14 + #include "dce_v10_0.h" 15 + #include "dce_v11_0.h" 16 + #include "ivsrcid/ivsrcid_vislands30.h" 8 17 #include "amdgpu_vkms.h" 9 18 #include "amdgpu_display.h" 10 19 ··· 453 444 454 445 return ret; 455 446 } 447 + 448 + const struct drm_mode_config_funcs amdgpu_vkms_mode_funcs = { 449 + .fb_create = amdgpu_display_user_framebuffer_create, 450 + .atomic_check = drm_atomic_helper_check, 451 + .atomic_commit = drm_atomic_helper_commit, 452 + }; 453 + 454 + static int amdgpu_vkms_sw_init(void *handle) 455 + { 456 + int r, i; 457 + struct amdgpu_device *adev = (struct amdgpu_device *)handle; 458 + 459 + adev_to_drm(adev)->max_vblank_count = 0; 460 + 461 + adev_to_drm(adev)->mode_config.funcs = &amdgpu_vkms_mode_funcs; 462 + 463 + adev_to_drm(adev)->mode_config.max_width = XRES_MAX; 464 + adev_to_drm(adev)->mode_config.max_height = YRES_MAX; 465 + 466 + adev_to_drm(adev)->mode_config.preferred_depth = 24; 467 + adev_to_drm(adev)->mode_config.prefer_shadow = 1; 468 + 469 + adev_to_drm(adev)->mode_config.fb_base = adev->gmc.aper_base; 470 + 471 + r = amdgpu_display_modeset_create_props(adev); 472 + if (r) 473 + return r; 474 + 475 + adev->amdgpu_vkms_output = kcalloc(adev->mode_info.num_crtc, sizeof(struct amdgpu_vkms_output), GFP_KERNEL); 476 + 477 + /* allocate crtcs, encoders, connectors */ 478 + for (i = 0; i < adev->mode_info.num_crtc; i++) { 479 + r = amdgpu_vkms_output_init(adev_to_drm(adev), &adev->amdgpu_vkms_output[i], i); 480 + if (r) 481 + return r; 482 + } 483 + 484 + drm_kms_helper_poll_init(adev_to_drm(adev)); 485 + 486 + adev->mode_info.mode_config_initialized = true; 487 + return 0; 488 + } 489 + 490 + static int amdgpu_vkms_sw_fini(void *handle) 491 + { 492 + struct amdgpu_device *adev = (struct amdgpu_device *)handle; 493 + int i = 0; 494 + 495 + for (i = 0; i < adev->mode_info.num_crtc; i++) 496 + if (adev->mode_info.crtcs[i]) 497 + hrtimer_cancel(&adev->mode_info.crtcs[i]->vblank_timer); 498 + 499 + kfree(adev->mode_info.bios_hardcoded_edid); 500 + kfree(adev->amdgpu_vkms_output); 501 + 502 + drm_kms_helper_poll_fini(adev_to_drm(adev)); 503 + 504 + adev->mode_info.mode_config_initialized = false; 505 + return 0; 506 + } 507 + 508 + static int amdgpu_vkms_hw_init(void *handle) 509 + { 510 + struct amdgpu_device *adev = (struct amdgpu_device *)handle; 511 + 512 + switch (adev->asic_type) { 513 + #ifdef CONFIG_DRM_AMDGPU_SI 514 + case CHIP_TAHITI: 515 + case CHIP_PITCAIRN: 516 + case CHIP_VERDE: 517 + case CHIP_OLAND: 518 + dce_v6_0_disable_dce(adev); 519 + break; 520 + #endif 521 + #ifdef CONFIG_DRM_AMDGPU_CIK 522 + case CHIP_BONAIRE: 523 + case CHIP_HAWAII: 524 + case CHIP_KAVERI: 525 + case CHIP_KABINI: 526 + case CHIP_MULLINS: 527 + dce_v8_0_disable_dce(adev); 528 + break; 529 + #endif 530 + case CHIP_FIJI: 531 + case CHIP_TONGA: 532 + dce_v10_0_disable_dce(adev); 533 + break; 534 + case CHIP_CARRIZO: 535 + case CHIP_STONEY: 536 + case CHIP_POLARIS10: 537 + case CHIP_POLARIS11: 538 + case CHIP_VEGAM: 539 + dce_v11_0_disable_dce(adev); 540 + break; 541 + case CHIP_TOPAZ: 542 + #ifdef CONFIG_DRM_AMDGPU_SI 543 + case CHIP_HAINAN: 544 + #endif 545 + /* no DCE */ 546 + break; 547 + default: 548 + break; 549 + } 550 + return 0; 551 + } 552 + 553 + static int amdgpu_vkms_hw_fini(void *handle) 554 + { 555 + return 0; 556 + } 557 + 558 + static int amdgpu_vkms_suspend(void *handle) 559 + { 560 + struct amdgpu_device *adev = (struct amdgpu_device *)handle; 561 + int r; 562 + 563 + r = drm_mode_config_helper_suspend(adev_to_drm(adev)); 564 + if (r) 565 + return r; 566 + return amdgpu_vkms_hw_fini(handle); 567 + } 568 + 569 + static int amdgpu_vkms_resume(void *handle) 570 + { 571 + struct amdgpu_device *adev = (struct amdgpu_device *)handle; 572 + int r; 573 + 574 + r = amdgpu_vkms_hw_init(handle); 575 + if (r) 576 + return r; 577 + return drm_mode_config_helper_resume(adev_to_drm(adev)); 578 + } 579 + 580 + static bool amdgpu_vkms_is_idle(void *handle) 581 + { 582 + return true; 583 + } 584 + 585 + static int amdgpu_vkms_wait_for_idle(void *handle) 586 + { 587 + return 0; 588 + } 589 + 590 + static int amdgpu_vkms_soft_reset(void *handle) 591 + { 592 + return 0; 593 + } 594 + 595 + static int amdgpu_vkms_set_clockgating_state(void *handle, 596 + enum amd_clockgating_state state) 597 + { 598 + return 0; 599 + } 600 + 601 + static int amdgpu_vkms_set_powergating_state(void *handle, 602 + enum amd_powergating_state state) 603 + { 604 + return 0; 605 + } 606 + 607 + static const struct amd_ip_funcs amdgpu_vkms_ip_funcs = { 608 + .name = "amdgpu_vkms", 609 + .early_init = NULL, 610 + .late_init = NULL, 611 + .sw_init = amdgpu_vkms_sw_init, 612 + .sw_fini = amdgpu_vkms_sw_fini, 613 + .hw_init = amdgpu_vkms_hw_init, 614 + .hw_fini = amdgpu_vkms_hw_fini, 615 + .suspend = amdgpu_vkms_suspend, 616 + .resume = amdgpu_vkms_resume, 617 + .is_idle = amdgpu_vkms_is_idle, 618 + .wait_for_idle = amdgpu_vkms_wait_for_idle, 619 + .soft_reset = amdgpu_vkms_soft_reset, 620 + .set_clockgating_state = amdgpu_vkms_set_clockgating_state, 621 + .set_powergating_state = amdgpu_vkms_set_powergating_state, 622 + }; 623 + 624 + const struct amdgpu_ip_block_version amdgpu_vkms_ip_block = 625 + { 626 + .type = AMD_IP_BLOCK_TYPE_DCE, 627 + .major = 1, 628 + .minor = 0, 629 + .rev = 0, 630 + .funcs = &amdgpu_vkms_ip_funcs, 631 + }; 632 +
-3
drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.h
··· 23 23 struct drm_pending_vblank_event *event; 24 24 }; 25 25 26 - int amdgpu_vkms_output_init(struct drm_device *dev, 27 - struct amdgpu_vkms_output *output, int index); 28 - 29 26 #endif /* _AMDGPU_VKMS_H_ */
+5 -5
drivers/gpu/drm/amd/amdgpu/cik.c
··· 70 70 71 71 #include "amdgpu_dm.h" 72 72 #include "amdgpu_amdkfd.h" 73 - #include "dce_virtual.h" 73 + #include "amdgpu_vkms.h" 74 74 75 75 static const struct amdgpu_video_codec_info cik_video_codecs_encode_array[] = 76 76 { ··· 2259 2259 amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); 2260 2260 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2261 2261 if (adev->enable_virtual_display) 2262 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2262 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2263 2263 #if defined(CONFIG_DRM_AMD_DC) 2264 2264 else if (amdgpu_device_has_dc_support(adev)) 2265 2265 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2277 2277 amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); 2278 2278 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2279 2279 if (adev->enable_virtual_display) 2280 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2280 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2281 2281 #if defined(CONFIG_DRM_AMD_DC) 2282 2282 else if (amdgpu_device_has_dc_support(adev)) 2283 2283 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2295 2295 amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); 2296 2296 amdgpu_device_ip_block_add(adev, &kv_smu_ip_block); 2297 2297 if (adev->enable_virtual_display) 2298 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2298 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2299 2299 #if defined(CONFIG_DRM_AMD_DC) 2300 2300 else if (amdgpu_device_has_dc_support(adev)) 2301 2301 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2315 2315 amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); 2316 2316 amdgpu_device_ip_block_add(adev, &kv_smu_ip_block); 2317 2317 if (adev->enable_virtual_display) 2318 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2318 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2319 2319 #if defined(CONFIG_DRM_AMD_DC) 2320 2320 else if (amdgpu_device_has_dc_support(adev)) 2321 2321 amdgpu_device_ip_block_add(adev, &dm_ip_block);
-223
drivers/gpu/drm/amd/amdgpu/dce_virtual.c
··· 1 - /* 2 - * Copyright 2014 Advanced Micro Devices, Inc. 3 - * 4 - * Permission is hereby granted, free of charge, to any person obtaining a 5 - * copy of this software and associated documentation files (the "Software"), 6 - * to deal in the Software without restriction, including without limitation 7 - * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 - * and/or sell copies of the Software, and to permit persons to whom the 9 - * Software is furnished to do so, subject to the following conditions: 10 - * 11 - * The above copyright notice and this permission notice shall be included in 12 - * all copies or substantial portions of the Software. 13 - * 14 - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17 - * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 18 - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19 - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20 - * OTHER DEALINGS IN THE SOFTWARE. 21 - * 22 - */ 23 - 24 - #include <drm/drm_atomic_helper.h> 25 - 26 - #include "amdgpu.h" 27 - #ifdef CONFIG_DRM_AMDGPU_SI 28 - #include "dce_v6_0.h" 29 - #endif 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" 35 - #include "dce_virtual.h" 36 - #include "ivsrcid/ivsrcid_vislands30.h" 37 - #include "amdgpu_display.h" 38 - #include "amdgpu_vkms.h" 39 - 40 - const struct drm_mode_config_funcs dce_virtual_mode_funcs = { 41 - .fb_create = amdgpu_display_user_framebuffer_create, 42 - .atomic_check = drm_atomic_helper_check, 43 - .atomic_commit = drm_atomic_helper_commit, 44 - }; 45 - 46 - static int dce_virtual_sw_init(void *handle) 47 - { 48 - int r, i; 49 - struct amdgpu_device *adev = (struct amdgpu_device *)handle; 50 - 51 - adev_to_drm(adev)->max_vblank_count = 0; 52 - 53 - adev_to_drm(adev)->mode_config.funcs = &dce_virtual_mode_funcs; 54 - 55 - adev_to_drm(adev)->mode_config.max_width = XRES_MAX; 56 - adev_to_drm(adev)->mode_config.max_height = YRES_MAX; 57 - 58 - adev_to_drm(adev)->mode_config.preferred_depth = 24; 59 - adev_to_drm(adev)->mode_config.prefer_shadow = 1; 60 - 61 - adev_to_drm(adev)->mode_config.fb_base = adev->gmc.aper_base; 62 - 63 - r = amdgpu_display_modeset_create_props(adev); 64 - if (r) 65 - return r; 66 - 67 - adev->amdgpu_vkms_output = kcalloc(adev->mode_info.num_crtc, sizeof(struct amdgpu_vkms_output), GFP_KERNEL); 68 - 69 - /* allocate crtcs, encoders, connectors */ 70 - for (i = 0; i < adev->mode_info.num_crtc; i++) { 71 - r = amdgpu_vkms_output_init(adev_to_drm(adev), &adev->amdgpu_vkms_output[i], i); 72 - if (r) 73 - return r; 74 - } 75 - 76 - drm_kms_helper_poll_init(adev_to_drm(adev)); 77 - 78 - adev->mode_info.mode_config_initialized = true; 79 - return 0; 80 - } 81 - 82 - static int dce_virtual_sw_fini(void *handle) 83 - { 84 - struct amdgpu_device *adev = (struct amdgpu_device *)handle; 85 - int i = 0; 86 - 87 - for (i = 0; i < adev->mode_info.num_crtc; i++) 88 - if (adev->mode_info.crtcs[i]) 89 - hrtimer_cancel(&adev->mode_info.crtcs[i]->vblank_timer); 90 - 91 - kfree(adev->mode_info.bios_hardcoded_edid); 92 - kfree(adev->amdgpu_vkms_output); 93 - 94 - drm_kms_helper_poll_fini(adev_to_drm(adev)); 95 - 96 - adev->mode_info.mode_config_initialized = false; 97 - return 0; 98 - } 99 - 100 - static int dce_virtual_hw_init(void *handle) 101 - { 102 - struct amdgpu_device *adev = (struct amdgpu_device *)handle; 103 - 104 - switch (adev->asic_type) { 105 - #ifdef CONFIG_DRM_AMDGPU_SI 106 - case CHIP_TAHITI: 107 - case CHIP_PITCAIRN: 108 - case CHIP_VERDE: 109 - case CHIP_OLAND: 110 - dce_v6_0_disable_dce(adev); 111 - break; 112 - #endif 113 - #ifdef CONFIG_DRM_AMDGPU_CIK 114 - case CHIP_BONAIRE: 115 - case CHIP_HAWAII: 116 - case CHIP_KAVERI: 117 - case CHIP_KABINI: 118 - case CHIP_MULLINS: 119 - dce_v8_0_disable_dce(adev); 120 - break; 121 - #endif 122 - case CHIP_FIJI: 123 - case CHIP_TONGA: 124 - dce_v10_0_disable_dce(adev); 125 - break; 126 - case CHIP_CARRIZO: 127 - case CHIP_STONEY: 128 - case CHIP_POLARIS10: 129 - case CHIP_POLARIS11: 130 - case CHIP_VEGAM: 131 - dce_v11_0_disable_dce(adev); 132 - break; 133 - case CHIP_TOPAZ: 134 - #ifdef CONFIG_DRM_AMDGPU_SI 135 - case CHIP_HAINAN: 136 - #endif 137 - /* no DCE */ 138 - break; 139 - default: 140 - break; 141 - } 142 - return 0; 143 - } 144 - 145 - static int dce_virtual_hw_fini(void *handle) 146 - { 147 - return 0; 148 - } 149 - 150 - static int dce_virtual_suspend(void *handle) 151 - { 152 - struct amdgpu_device *adev = (struct amdgpu_device *)handle; 153 - int r; 154 - 155 - r = drm_mode_config_helper_suspend(adev_to_drm(adev)); 156 - if (r) 157 - return r; 158 - return dce_virtual_hw_fini(handle); 159 - } 160 - 161 - static int dce_virtual_resume(void *handle) 162 - { 163 - struct amdgpu_device *adev = (struct amdgpu_device *)handle; 164 - int r; 165 - 166 - r = dce_virtual_hw_init(handle); 167 - if (r) 168 - return r; 169 - return drm_mode_config_helper_resume(adev_to_drm(adev)); 170 - } 171 - 172 - static bool dce_virtual_is_idle(void *handle) 173 - { 174 - return true; 175 - } 176 - 177 - static int dce_virtual_wait_for_idle(void *handle) 178 - { 179 - return 0; 180 - } 181 - 182 - static int dce_virtual_soft_reset(void *handle) 183 - { 184 - return 0; 185 - } 186 - 187 - static int dce_virtual_set_clockgating_state(void *handle, 188 - enum amd_clockgating_state state) 189 - { 190 - return 0; 191 - } 192 - 193 - static int dce_virtual_set_powergating_state(void *handle, 194 - enum amd_powergating_state state) 195 - { 196 - return 0; 197 - } 198 - 199 - static const struct amd_ip_funcs dce_virtual_ip_funcs = { 200 - .name = "dce_virtual", 201 - .early_init = NULL, 202 - .late_init = NULL, 203 - .sw_init = dce_virtual_sw_init, 204 - .sw_fini = dce_virtual_sw_fini, 205 - .hw_init = dce_virtual_hw_init, 206 - .hw_fini = dce_virtual_hw_fini, 207 - .suspend = dce_virtual_suspend, 208 - .resume = dce_virtual_resume, 209 - .is_idle = dce_virtual_is_idle, 210 - .wait_for_idle = dce_virtual_wait_for_idle, 211 - .soft_reset = dce_virtual_soft_reset, 212 - .set_clockgating_state = dce_virtual_set_clockgating_state, 213 - .set_powergating_state = dce_virtual_set_powergating_state, 214 - }; 215 - 216 - const struct amdgpu_ip_block_version dce_virtual_ip_block = 217 - { 218 - .type = AMD_IP_BLOCK_TYPE_DCE, 219 - .major = 1, 220 - .minor = 0, 221 - .rev = 0, 222 - .funcs = &dce_virtual_ip_funcs, 223 - };
-30
drivers/gpu/drm/amd/amdgpu/dce_virtual.h
··· 1 - /* 2 - * Copyright 2014 Advanced Micro Devices, Inc. 3 - * 4 - * Permission is hereby granted, free of charge, to any person obtaining a 5 - * copy of this software and associated documentation files (the "Software"), 6 - * to deal in the Software without restriction, including without limitation 7 - * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 - * and/or sell copies of the Software, and to permit persons to whom the 9 - * Software is furnished to do so, subject to the following conditions: 10 - * 11 - * The above copyright notice and this permission notice shall be included in 12 - * all copies or substantial portions of the Software. 13 - * 14 - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17 - * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 18 - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19 - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20 - * OTHER DEALINGS IN THE SOFTWARE. 21 - * 22 - */ 23 - 24 - #ifndef __DCE_VIRTUAL_H__ 25 - #define __DCE_VIRTUAL_H__ 26 - 27 - extern const struct amdgpu_ip_block_version dce_virtual_ip_block; 28 - 29 - #endif 30 -
+11 -11
drivers/gpu/drm/amd/amdgpu/nv.c
··· 58 58 #include "jpeg_v2_0.h" 59 59 #include "vcn_v3_0.h" 60 60 #include "jpeg_v3_0.h" 61 - #include "dce_virtual.h" 61 + #include "amdgpu_vkms.h" 62 62 #include "mes_v10_1.h" 63 63 #include "mxgpu_nv.h" 64 64 #include "smuio_v11_0.h" ··· 721 721 !amdgpu_sriov_vf(adev)) 722 722 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 723 723 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 724 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 724 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 725 725 #if defined(CONFIG_DRM_AMD_DC) 726 726 else if (amdgpu_device_has_dc_support(adev)) 727 727 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 749 749 if (adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) 750 750 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 751 751 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 752 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 752 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 753 753 #if defined(CONFIG_DRM_AMD_DC) 754 754 else if (amdgpu_device_has_dc_support(adev)) 755 755 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 779 779 is_support_sw_smu(adev)) 780 780 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 781 781 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 782 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 782 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 783 783 #if defined(CONFIG_DRM_AMD_DC) 784 784 else if (amdgpu_device_has_dc_support(adev)) 785 785 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 802 802 is_support_sw_smu(adev)) 803 803 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 804 804 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 805 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 805 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 806 806 #if defined(CONFIG_DRM_AMD_DC) 807 807 else if (amdgpu_device_has_dc_support(adev)) 808 808 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 823 823 amdgpu_device_ip_block_add(adev, &psp_v11_0_ip_block); 824 824 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 825 825 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 826 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 826 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 827 827 #if defined(CONFIG_DRM_AMD_DC) 828 828 else if (amdgpu_device_has_dc_support(adev)) 829 829 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 843 843 is_support_sw_smu(adev)) 844 844 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 845 845 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 846 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 846 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 847 847 #if defined(CONFIG_DRM_AMD_DC) 848 848 else if (amdgpu_device_has_dc_support(adev)) 849 849 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 865 865 amdgpu_device_ip_block_add(adev, &gfx_v10_0_ip_block); 866 866 amdgpu_device_ip_block_add(adev, &sdma_v5_2_ip_block); 867 867 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 868 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 868 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 869 869 #if defined(CONFIG_DRM_AMD_DC) 870 870 else if (amdgpu_device_has_dc_support(adev)) 871 871 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 883 883 amdgpu_device_ip_block_add(adev, &psp_v13_0_ip_block); 884 884 amdgpu_device_ip_block_add(adev, &smu_v13_0_ip_block); 885 885 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 886 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 886 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 887 887 amdgpu_device_ip_block_add(adev, &gfx_v10_0_ip_block); 888 888 amdgpu_device_ip_block_add(adev, &sdma_v5_2_ip_block); 889 889 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 890 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 890 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 891 891 #if defined(CONFIG_DRM_AMD_DC) 892 892 else if (amdgpu_device_has_dc_support(adev)) 893 893 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 905 905 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); 906 906 } 907 907 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 908 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 908 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 909 909 amdgpu_device_ip_block_add(adev, &gfx_v10_0_ip_block); 910 910 amdgpu_device_ip_block_add(adev, &sdma_v5_0_ip_block); 911 911 break;
+4 -4
drivers/gpu/drm/amd/amdgpu/si.c
··· 44 44 #include "dce_v6_0.h" 45 45 #include "si.h" 46 46 #include "uvd_v3_1.h" 47 - #include "dce_virtual.h" 47 + #include "amdgpu_vkms.h" 48 48 #include "gca/gfx_6_0_d.h" 49 49 #include "oss/oss_1_0_d.h" 50 50 #include "oss/oss_1_0_sh_mask.h" ··· 2759 2759 amdgpu_device_ip_block_add(adev, &si_dma_ip_block); 2760 2760 amdgpu_device_ip_block_add(adev, &si_smu_ip_block); 2761 2761 if (adev->enable_virtual_display) 2762 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2762 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2763 2763 #if defined(CONFIG_DRM_AMD_DC) && defined(CONFIG_DRM_AMD_DC_SI) 2764 2764 else if (amdgpu_device_has_dc_support(adev)) 2765 2765 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2777 2777 amdgpu_device_ip_block_add(adev, &si_dma_ip_block); 2778 2778 amdgpu_device_ip_block_add(adev, &si_smu_ip_block); 2779 2779 if (adev->enable_virtual_display) 2780 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2780 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2781 2781 #if defined(CONFIG_DRM_AMD_DC) && defined(CONFIG_DRM_AMD_DC_SI) 2782 2782 else if (amdgpu_device_has_dc_support(adev)) 2783 2783 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2795 2795 amdgpu_device_ip_block_add(adev, &si_dma_ip_block); 2796 2796 amdgpu_device_ip_block_add(adev, &si_smu_ip_block); 2797 2797 if (adev->enable_virtual_display) 2798 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2798 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2799 2799 break; 2800 2800 default: 2801 2801 BUG();
+5 -5
drivers/gpu/drm/amd/amdgpu/soc15.c
··· 74 74 #include "smuio_v9_0.h" 75 75 #include "smuio_v11_0.h" 76 76 #include "smuio_v13_0.h" 77 - #include "dce_virtual.h" 77 + #include "amdgpu_vkms.h" 78 78 #include "mxgpu_ai.h" 79 79 #include "amdgpu_ras.h" 80 80 #include "amdgpu_xgmi.h" ··· 843 843 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 844 844 } 845 845 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 846 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 846 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 847 847 #if defined(CONFIG_DRM_AMD_DC) 848 848 else if (amdgpu_device_has_dc_support(adev)) 849 849 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 863 863 amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); 864 864 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 865 865 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 866 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 866 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 867 867 #if defined(CONFIG_DRM_AMD_DC) 868 868 else if (amdgpu_device_has_dc_support(adev)) 869 869 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 885 885 } 886 886 887 887 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 888 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 888 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 889 889 amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block); 890 890 amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); 891 891 amdgpu_device_ip_block_add(adev, &smu_v11_0_ip_block); ··· 909 909 amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block); 910 910 amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); 911 911 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 912 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 912 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 913 913 #if defined(CONFIG_DRM_AMD_DC) 914 914 else if (amdgpu_device_has_dc_support(adev)) 915 915 amdgpu_device_ip_block_add(adev, &dm_ip_block);
+7 -7
drivers/gpu/drm/amd/amdgpu/vi.c
··· 77 77 #if defined(CONFIG_DRM_AMD_ACP) 78 78 #include "amdgpu_acp.h" 79 79 #endif 80 - #include "dce_virtual.h" 80 + #include "amdgpu_vkms.h" 81 81 #include "mxgpu_vi.h" 82 82 #include "amdgpu_dm.h" 83 83 ··· 2102 2102 amdgpu_device_ip_block_add(adev, &sdma_v2_4_ip_block); 2103 2103 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2104 2104 if (adev->enable_virtual_display) 2105 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2105 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2106 2106 break; 2107 2107 case CHIP_FIJI: 2108 2108 amdgpu_device_ip_block_add(adev, &vi_common_ip_block); ··· 2112 2112 amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); 2113 2113 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2114 2114 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 2115 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2115 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2116 2116 #if defined(CONFIG_DRM_AMD_DC) 2117 2117 else if (amdgpu_device_has_dc_support(adev)) 2118 2118 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2132 2132 amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); 2133 2133 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2134 2134 if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) 2135 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2135 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2136 2136 #if defined(CONFIG_DRM_AMD_DC) 2137 2137 else if (amdgpu_device_has_dc_support(adev)) 2138 2138 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2155 2155 amdgpu_device_ip_block_add(adev, &sdma_v3_1_ip_block); 2156 2156 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2157 2157 if (adev->enable_virtual_display) 2158 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2158 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2159 2159 #if defined(CONFIG_DRM_AMD_DC) 2160 2160 else if (amdgpu_device_has_dc_support(adev)) 2161 2161 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2173 2173 amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); 2174 2174 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2175 2175 if (adev->enable_virtual_display) 2176 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2176 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2177 2177 #if defined(CONFIG_DRM_AMD_DC) 2178 2178 else if (amdgpu_device_has_dc_support(adev)) 2179 2179 amdgpu_device_ip_block_add(adev, &dm_ip_block); ··· 2194 2194 amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); 2195 2195 amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); 2196 2196 if (adev->enable_virtual_display) 2197 - amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block); 2197 + amdgpu_device_ip_block_add(adev, &amdgpu_vkms_ip_block); 2198 2198 #if defined(CONFIG_DRM_AMD_DC) 2199 2199 else if (amdgpu_device_has_dc_support(adev)) 2200 2200 amdgpu_device_ip_block_add(adev, &dm_ip_block);