diff options
Diffstat (limited to 'meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0697-drm-amd-display-Initial-prototype-of-FBC-implementat.patch')
-rw-r--r-- | meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0697-drm-amd-display-Initial-prototype-of-FBC-implementat.patch | 98 |
1 files changed, 0 insertions, 98 deletions
diff --git a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0697-drm-amd-display-Initial-prototype-of-FBC-implementat.patch b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0697-drm-amd-display-Initial-prototype-of-FBC-implementat.patch deleted file mode 100644 index 857e2be5..00000000 --- a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0697-drm-amd-display-Initial-prototype-of-FBC-implementat.patch +++ /dev/null @@ -1,98 +0,0 @@ -From d1ccf3d96b7dbda982ffd4ee99a33bcaff74b94c Mon Sep 17 00:00:00 2001 -From: Roman Li <Roman.Li@amd.com> -Date: Thu, 27 Jul 2017 19:53:55 -0400 -Subject: [PATCH 0697/4131] drm/amd/display: Initial prototype of FBC - implementation - -- Protected by ENABLE_FBC compile flag -- DC part will follow - -Signed-off-by: Roman Li <Roman.Li@amd.com> -Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> -Acked-by: Harry Wentland <Harry.Wentland@amd.com> -Signed-off-by: Alex Deucher <alexander.deucher@amd.com> ---- - drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 29 +++++++++++++++++++++++ - drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 12 ++++++++++ - 2 files changed, 41 insertions(+) - -diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c -index 9825af7..ad8dc2c 100644 ---- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c -+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c -@@ -297,6 +297,30 @@ static void hotplug_notify_work_func(struct work_struct *work) - drm_kms_helper_hotplug_event(dev); - } - -+#ifdef ENABLE_FBC -+#include "dal_asic_id.h" -+/* Allocate memory for FBC compressed data */ -+/* TODO: Dynamic allocation */ -+#define AMDGPU_FBC_SIZE (3840 * 2160 * 4) -+ -+void amdgpu_dm_initialize_fbc(struct amdgpu_device *adev) -+{ -+ int r; -+ struct dm_comressor_info *compressor = &adev->dm.compressor; -+ -+ if (!compressor->bo_ptr) { -+ r = amdgpu_bo_create_kernel(adev, AMDGPU_FBC_SIZE, PAGE_SIZE, -+ AMDGPU_GEM_DOMAIN_VRAM, &compressor->bo_ptr, -+ &compressor->gpu_addr, &compressor->cpu_addr); -+ -+ if (r) -+ DRM_ERROR("DM: Failed to initialize fbc\n"); -+ } -+ -+} -+#endif -+ -+ - /* Init display KMS - * - * Returns 0 on success -@@ -347,6 +371,11 @@ int amdgpu_dm_init(struct amdgpu_device *adev) - - init_data.dce_environment = DCE_ENV_PRODUCTION_DRV; - -+#ifdef ENABLE_FBC -+ if (adev->family == FAMILY_CZ) -+ amdgpu_dm_initialize_fbc(adev); -+ init_data.fbc_gpu_addr = adev->dm.compressor.gpu_addr; -+#endif - /* Display Core create. */ - adev->dm.dc = dc_create(&init_data); - -diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h -index 16b2e08..ce0223a 100644 ---- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h -+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h -@@ -72,6 +72,15 @@ struct irq_list_head { - struct work_struct work; - }; - -+#ifdef ENABLE_FBC -+struct dm_comressor_info { -+ void *cpu_addr; -+ struct amdgpu_bo *bo_ptr; -+ uint64_t gpu_addr; -+}; -+#endif -+ -+ - struct amdgpu_display_manager { - struct dal *dal; - struct dc *dc; -@@ -133,6 +142,9 @@ struct amdgpu_display_manager { - * Caches device atomic state for suspend/resume - */ - struct drm_atomic_state *cached_state; -+#ifdef ENABLE_FBC -+ struct dm_comressor_info compressor; -+#endif - }; - - /* basic init/fini API */ --- -2.7.4 - |