aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0261-drm-amdgpu-track-whether-the-asic-supports-SR-IOV.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0261-drm-amdgpu-track-whether-the-asic-supports-SR-IOV.patch')
-rw-r--r--common/recipes-kernel/linux/files/0261-drm-amdgpu-track-whether-the-asic-supports-SR-IOV.patch61
1 files changed, 61 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0261-drm-amdgpu-track-whether-the-asic-supports-SR-IOV.patch b/common/recipes-kernel/linux/files/0261-drm-amdgpu-track-whether-the-asic-supports-SR-IOV.patch
new file mode 100644
index 00000000..7b88995c
--- /dev/null
+++ b/common/recipes-kernel/linux/files/0261-drm-amdgpu-track-whether-the-asic-supports-SR-IOV.patch
@@ -0,0 +1,61 @@
+From 13b2c75583f64d8579d9da073e68cbbcc8173d50 Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexander.deucher@amd.com>
+Date: Mon, 1 Feb 2016 11:13:04 -0500
+Subject: [PATCH 0261/1110] drm/amdgpu: track whether the asic supports SR-IOV
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Required to make desicions about certain code pathes.
+
+Reviewed-by: Monk Liu <monk.liu@amd.com>
+Reviewed-by: Christian König <christian.koenig@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu.h | 7 +++++++
+ drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 ++++
+ 2 files changed, 11 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+index 5d51ef2..27c530b 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+@@ -1864,6 +1864,11 @@ void *amdgpu_cgs_create_device(struct amdgpu_device *adev);
+ void amdgpu_cgs_destroy_device(void *cgs_device);
+
+
++/* GPU virtualization */
++struct amdgpu_virtualization {
++ bool supports_sr_iov;
++};
++
+ /*
+ * Core structure, functions and helpers.
+ */
+@@ -2037,6 +2042,8 @@ struct amdgpu_device {
+
+ /* kernel conext for IB submission */
+ struct amdgpu_ctx kernel_ctx;
++
++ struct amdgpu_virtualization virtualization;
+ };
+
+ bool amdgpu_device_is_px(struct drm_device *dev);
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+index 4ba9ae4..970844d 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+@@ -1500,6 +1500,10 @@ int amdgpu_device_init(struct amdgpu_device *adev,
+ return r;
+ }
+
++ /* See if the asic supports SR-IOV */
++ adev->virtualization.supports_sr_iov =
++ amdgpu_atombios_has_gpu_virtualization_table(adev);
++
+ /* Post card if necessary */
+ if (!amdgpu_card_posted(adev)) {
+ if (!adev->bios) {
+--
+2.7.4
+