aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0337-drm-amdgpu-set-fw_version-and-feature_version-for-sm.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0337-drm-amdgpu-set-fw_version-and-feature_version-for-sm.patch')
-rw-r--r--common/recipes-kernel/linux/files/0337-drm-amdgpu-set-fw_version-and-feature_version-for-sm.patch204
1 files changed, 0 insertions, 204 deletions
diff --git a/common/recipes-kernel/linux/files/0337-drm-amdgpu-set-fw_version-and-feature_version-for-sm.patch b/common/recipes-kernel/linux/files/0337-drm-amdgpu-set-fw_version-and-feature_version-for-sm.patch
deleted file mode 100644
index c1e9f215..00000000
--- a/common/recipes-kernel/linux/files/0337-drm-amdgpu-set-fw_version-and-feature_version-for-sm.patch
+++ /dev/null
@@ -1,204 +0,0 @@
-From 595fd013f795daeed0c7ddda02d8e0c51d8ce76c Mon Sep 17 00:00:00 2001
-From: Jammy Zhou <Jammy.Zhou@amd.com>
-Date: Tue, 4 Aug 2015 11:44:19 +0800
-Subject: [PATCH 0337/1050] drm/amdgpu: set fw_version and feature_version for
- smu fw loading
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The fw_version and feature_verion should be set correctly when the
-firmwares are loaded by SMU on Tonga/Carrzio/Iceland
-
-Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
-Reviewed-by: Christian König <christian.koenig@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 37 ++++++++++++++++++++--------------
- drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 7 ++++---
- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 7 ++++---
- 3 files changed, 30 insertions(+), 21 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
-index 0ac38ee..f5a42ab 100644
---- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
-+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
-@@ -587,6 +587,7 @@ static int gfx_v8_0_init_microcode(struct amdgpu_device *adev)
- int err;
- struct amdgpu_firmware_info *info = NULL;
- const struct common_firmware_header *header = NULL;
-+ const struct gfx_firmware_header_v1_0 *cp_hdr;
-
- DRM_DEBUG("\n");
-
-@@ -611,6 +612,9 @@ static int gfx_v8_0_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->gfx.pfp_fw);
- if (err)
- goto out;
-+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.pfp_fw->data;
-+ adev->gfx.pfp_fw_version = le32_to_cpu(cp_hdr->header.ucode_version);
-+ adev->gfx.pfp_feature_version = le32_to_cpu(cp_hdr->ucode_feature_version);
-
- snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_me.bin", chip_name);
- err = request_firmware(&adev->gfx.me_fw, fw_name, adev->dev);
-@@ -619,6 +623,9 @@ static int gfx_v8_0_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->gfx.me_fw);
- if (err)
- goto out;
-+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.me_fw->data;
-+ adev->gfx.me_fw_version = le32_to_cpu(cp_hdr->header.ucode_version);
-+ adev->gfx.me_feature_version = le32_to_cpu(cp_hdr->ucode_feature_version);
-
- snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_ce.bin", chip_name);
- err = request_firmware(&adev->gfx.ce_fw, fw_name, adev->dev);
-@@ -627,12 +634,18 @@ static int gfx_v8_0_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->gfx.ce_fw);
- if (err)
- goto out;
-+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.ce_fw->data;
-+ adev->gfx.ce_fw_version = le32_to_cpu(cp_hdr->header.ucode_version);
-+ adev->gfx.ce_feature_version = le32_to_cpu(cp_hdr->ucode_feature_version);
-
- snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_rlc.bin", chip_name);
- err = request_firmware(&adev->gfx.rlc_fw, fw_name, adev->dev);
- if (err)
- goto out;
- err = amdgpu_ucode_validate(adev->gfx.rlc_fw);
-+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.rlc_fw->data;
-+ adev->gfx.rlc_fw_version = le32_to_cpu(cp_hdr->header.ucode_version);
-+ adev->gfx.rlc_feature_version = le32_to_cpu(cp_hdr->ucode_feature_version);
-
- snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec.bin", chip_name);
- err = request_firmware(&adev->gfx.mec_fw, fw_name, adev->dev);
-@@ -641,6 +654,9 @@ static int gfx_v8_0_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->gfx.mec_fw);
- if (err)
- goto out;
-+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.mec_fw->data;
-+ adev->gfx.mec_fw_version = le32_to_cpu(cp_hdr->header.ucode_version);
-+ adev->gfx.mec_feature_version = le32_to_cpu(cp_hdr->ucode_feature_version);
-
- snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec2.bin", chip_name);
- err = request_firmware(&adev->gfx.mec2_fw, fw_name, adev->dev);
-@@ -648,6 +664,12 @@ static int gfx_v8_0_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->gfx.mec2_fw);
- if (err)
- goto out;
-+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)
-+ adev->gfx.mec2_fw->data;
-+ adev->gfx.mec2_fw_version = le32_to_cpu(
-+ cp_hdr->header.ucode_version);
-+ adev->gfx.mec2_feature_version = le32_to_cpu(
-+ cp_hdr->ucode_feature_version);
- } else {
- err = 0;
- adev->gfx.mec2_fw = NULL;
-@@ -2272,9 +2294,6 @@ static int gfx_v8_0_rlc_load_microcode(struct amdgpu_device *adev)
-
- hdr = (const struct rlc_firmware_header_v2_0 *)adev->gfx.rlc_fw->data;
- amdgpu_ucode_print_rlc_hdr(&hdr->header);
-- adev->gfx.rlc_fw_version = le32_to_cpu(hdr->header.ucode_version);
-- adev->gfx.rlc_feature_version = le32_to_cpu(
-- hdr->ucode_feature_version);
-
- fw_data = (const __le32 *)(adev->gfx.rlc_fw->data +
- le32_to_cpu(hdr->header.ucode_array_offset_bytes));
-@@ -2360,12 +2379,6 @@ static int gfx_v8_0_cp_gfx_load_microcode(struct amdgpu_device *adev)
- amdgpu_ucode_print_gfx_hdr(&pfp_hdr->header);
- amdgpu_ucode_print_gfx_hdr(&ce_hdr->header);
- amdgpu_ucode_print_gfx_hdr(&me_hdr->header);
-- adev->gfx.pfp_fw_version = le32_to_cpu(pfp_hdr->header.ucode_version);
-- adev->gfx.ce_fw_version = le32_to_cpu(ce_hdr->header.ucode_version);
-- adev->gfx.me_fw_version = le32_to_cpu(me_hdr->header.ucode_version);
-- adev->gfx.me_feature_version = le32_to_cpu(me_hdr->ucode_feature_version);
-- adev->gfx.ce_feature_version = le32_to_cpu(ce_hdr->ucode_feature_version);
-- adev->gfx.pfp_feature_version = le32_to_cpu(pfp_hdr->ucode_feature_version);
-
- gfx_v8_0_cp_gfx_enable(adev, false);
-
-@@ -2621,9 +2634,6 @@ static int gfx_v8_0_cp_compute_load_microcode(struct amdgpu_device *adev)
-
- mec_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.mec_fw->data;
- amdgpu_ucode_print_gfx_hdr(&mec_hdr->header);
-- adev->gfx.mec_fw_version = le32_to_cpu(mec_hdr->header.ucode_version);
-- adev->gfx.mec_feature_version = le32_to_cpu(
-- mec_hdr->ucode_feature_version);
-
- fw_data = (const __le32 *)
- (adev->gfx.mec_fw->data +
-@@ -2642,9 +2652,6 @@ static int gfx_v8_0_cp_compute_load_microcode(struct amdgpu_device *adev)
-
- mec2_hdr = (const struct gfx_firmware_header_v1_0 *)adev->gfx.mec2_fw->data;
- amdgpu_ucode_print_gfx_hdr(&mec2_hdr->header);
-- adev->gfx.mec2_fw_version = le32_to_cpu(mec2_hdr->header.ucode_version);
-- adev->gfx.mec2_feature_version = le32_to_cpu(
-- mec2_hdr->ucode_feature_version);
-
- fw_data = (const __le32 *)
- (adev->gfx.mec2_fw->data +
-diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
-index 01bd5c9..a988dfb 100644
---- a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
-+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
-@@ -121,6 +121,7 @@ static int sdma_v2_4_init_microcode(struct amdgpu_device *adev)
- int err, i;
- struct amdgpu_firmware_info *info = NULL;
- const struct common_firmware_header *header = NULL;
-+ const struct sdma_firmware_header_v1_0 *hdr;
-
- DRM_DEBUG("\n");
-
-@@ -142,6 +143,9 @@ static int sdma_v2_4_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->sdma[i].fw);
- if (err)
- goto out;
-+ hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma[i].fw->data;
-+ adev->sdma[i].fw_version = le32_to_cpu(hdr->header.ucode_version);
-+ adev->sdma[i].feature_version = le32_to_cpu(hdr->ucode_feature_version);
-
- if (adev->firmware.smu_load) {
- info = &adev->firmware.ucode[AMDGPU_UCODE_ID_SDMA0 + i];
-@@ -541,9 +545,6 @@ static int sdma_v2_4_load_microcode(struct amdgpu_device *adev)
- hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma[i].fw->data;
- amdgpu_ucode_print_sdma_hdr(&hdr->header);
- fw_size = le32_to_cpu(hdr->header.ucode_size_bytes) / 4;
-- adev->sdma[i].fw_version = le32_to_cpu(hdr->header.ucode_version);
-- adev->sdma[i].feature_version = le32_to_cpu(hdr->ucode_feature_version);
--
- fw_data = (const __le32 *)
- (adev->sdma[i].fw->data +
- le32_to_cpu(hdr->header.ucode_array_offset_bytes));
-diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
-index cf9bc2e..2b86569 100644
---- a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
-+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
-@@ -159,6 +159,7 @@ static int sdma_v3_0_init_microcode(struct amdgpu_device *adev)
- int err, i;
- struct amdgpu_firmware_info *info = NULL;
- const struct common_firmware_header *header = NULL;
-+ const struct sdma_firmware_header_v1_0 *hdr;
-
- DRM_DEBUG("\n");
-
-@@ -183,6 +184,9 @@ static int sdma_v3_0_init_microcode(struct amdgpu_device *adev)
- err = amdgpu_ucode_validate(adev->sdma[i].fw);
- if (err)
- goto out;
-+ hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma[i].fw->data;
-+ adev->sdma[i].fw_version = le32_to_cpu(hdr->header.ucode_version);
-+ adev->sdma[i].feature_version = le32_to_cpu(hdr->ucode_feature_version);
-
- if (adev->firmware.smu_load) {
- info = &adev->firmware.ucode[AMDGPU_UCODE_ID_SDMA0 + i];
-@@ -630,9 +634,6 @@ static int sdma_v3_0_load_microcode(struct amdgpu_device *adev)
- hdr = (const struct sdma_firmware_header_v1_0 *)adev->sdma[i].fw->data;
- amdgpu_ucode_print_sdma_hdr(&hdr->header);
- fw_size = le32_to_cpu(hdr->header.ucode_size_bytes) / 4;
-- adev->sdma[i].fw_version = le32_to_cpu(hdr->header.ucode_version);
-- adev->sdma[i].feature_version = le32_to_cpu(hdr->ucode_feature_version);
--
- fw_data = (const __le32 *)
- (adev->sdma[i].fw->data +
- le32_to_cpu(hdr->header.ucode_array_offset_bytes));
---
-1.9.1
-