summaryrefslogtreecommitdiffstats
path: root/drm-radeon-update-smc-firmware-selection-for-si.patch
diff options
context:
space:
mode:
Diffstat (limited to 'drm-radeon-update-smc-firmware-selection-for-si.patch')
-rw-r--r--drm-radeon-update-smc-firmware-selection-for-si.patch124
1 files changed, 0 insertions, 124 deletions
diff --git a/drm-radeon-update-smc-firmware-selection-for-si.patch b/drm-radeon-update-smc-firmware-selection-for-si.patch
deleted file mode 100644
index ad115ef05..000000000
--- a/drm-radeon-update-smc-firmware-selection-for-si.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From 6458bd4dfd9414cba5804eb9907fe2a824278c34 Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Thu, 5 Jan 2017 12:15:52 -0500
-Subject: drm/radeon: update smc firmware selection for SI
-
-From: Alex Deucher <alexander.deucher@amd.com>
-
-commit 6458bd4dfd9414cba5804eb9907fe2a824278c34 upstream.
-
-Use the appropriate smc firmware for each chip revision.
-Using the wrong one can cause stability issues.
-
-Acked-by: Edward O'Callaghan <funfunctor@folklore1984.net>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/gpu/drm/radeon/si.c | 60 ++++++++++++++++++++------------------------
- 1 file changed, 28 insertions(+), 32 deletions(-)
-
---- a/drivers/gpu/drm/radeon/si.c
-+++ b/drivers/gpu/drm/radeon/si.c
-@@ -50,7 +50,6 @@ MODULE_FIRMWARE("radeon/tahiti_ce.bin");
- MODULE_FIRMWARE("radeon/tahiti_mc.bin");
- MODULE_FIRMWARE("radeon/tahiti_rlc.bin");
- MODULE_FIRMWARE("radeon/tahiti_smc.bin");
--MODULE_FIRMWARE("radeon/tahiti_k_smc.bin");
-
- MODULE_FIRMWARE("radeon/PITCAIRN_pfp.bin");
- MODULE_FIRMWARE("radeon/PITCAIRN_me.bin");
-@@ -1657,9 +1656,6 @@ static int si_init_microcode(struct rade
- switch (rdev->family) {
- case CHIP_TAHITI:
- chip_name = "TAHITI";
-- /* XXX: figure out which Tahitis need the new ucode */
-- if (0)
-- new_smc = true;
- new_chip_name = "tahiti";
- pfp_req_size = SI_PFP_UCODE_SIZE * 4;
- me_req_size = SI_PM4_UCODE_SIZE * 4;
-@@ -1671,12 +1667,9 @@ static int si_init_microcode(struct rade
- break;
- case CHIP_PITCAIRN:
- chip_name = "PITCAIRN";
-- if ((rdev->pdev->revision == 0x81) ||
-- (rdev->pdev->device == 0x6810) ||
-- (rdev->pdev->device == 0x6811) ||
-- (rdev->pdev->device == 0x6816) ||
-- (rdev->pdev->device == 0x6817) ||
-- (rdev->pdev->device == 0x6806))
-+ if ((rdev->pdev->revision == 0x81) &&
-+ ((rdev->pdev->device == 0x6810) ||
-+ (rdev->pdev->device == 0x6811)))
- new_smc = true;
- new_chip_name = "pitcairn";
- pfp_req_size = SI_PFP_UCODE_SIZE * 4;
-@@ -1689,15 +1682,15 @@ static int si_init_microcode(struct rade
- break;
- case CHIP_VERDE:
- chip_name = "VERDE";
-- if ((rdev->pdev->revision == 0x81) ||
-- (rdev->pdev->revision == 0x83) ||
-- (rdev->pdev->revision == 0x87) ||
-- (rdev->pdev->device == 0x6820) ||
-- (rdev->pdev->device == 0x6821) ||
-- (rdev->pdev->device == 0x6822) ||
-- (rdev->pdev->device == 0x6823) ||
-- (rdev->pdev->device == 0x682A) ||
-- (rdev->pdev->device == 0x682B))
-+ if (((rdev->pdev->device == 0x6820) &&
-+ ((rdev->pdev->revision == 0x81) ||
-+ (rdev->pdev->revision == 0x83))) ||
-+ ((rdev->pdev->device == 0x6821) &&
-+ ((rdev->pdev->revision == 0x83) ||
-+ (rdev->pdev->revision == 0x87))) ||
-+ ((rdev->pdev->revision == 0x87) &&
-+ ((rdev->pdev->device == 0x6823) ||
-+ (rdev->pdev->device == 0x682b))))
- new_smc = true;
- new_chip_name = "verde";
- pfp_req_size = SI_PFP_UCODE_SIZE * 4;
-@@ -1710,13 +1703,13 @@ static int si_init_microcode(struct rade
- break;
- case CHIP_OLAND:
- chip_name = "OLAND";
-- if ((rdev->pdev->revision == 0xC7) ||
-- (rdev->pdev->revision == 0x80) ||
-- (rdev->pdev->revision == 0x81) ||
-- (rdev->pdev->revision == 0x83) ||
-- (rdev->pdev->revision == 0x87) ||
-- (rdev->pdev->device == 0x6604) ||
-- (rdev->pdev->device == 0x6605))
-+ if (((rdev->pdev->revision == 0x81) &&
-+ ((rdev->pdev->device == 0x6600) ||
-+ (rdev->pdev->device == 0x6604) ||
-+ (rdev->pdev->device == 0x6605) ||
-+ (rdev->pdev->device == 0x6610))) ||
-+ ((rdev->pdev->revision == 0x83) &&
-+ (rdev->pdev->device == 0x6610)))
- new_smc = true;
- new_chip_name = "oland";
- pfp_req_size = SI_PFP_UCODE_SIZE * 4;
-@@ -1728,12 +1721,15 @@ static int si_init_microcode(struct rade
- break;
- case CHIP_HAINAN:
- chip_name = "HAINAN";
-- if ((rdev->pdev->revision == 0x81) ||
-- (rdev->pdev->revision == 0x83) ||
-- (rdev->pdev->revision == 0xC3) ||
-- (rdev->pdev->device == 0x6664) ||
-- (rdev->pdev->device == 0x6665) ||
-- (rdev->pdev->device == 0x6667))
-+ if (((rdev->pdev->revision == 0x81) &&
-+ (rdev->pdev->device == 0x6660)) ||
-+ ((rdev->pdev->revision == 0x83) &&
-+ ((rdev->pdev->device == 0x6660) ||
-+ (rdev->pdev->device == 0x6663) ||
-+ (rdev->pdev->device == 0x6665) ||
-+ (rdev->pdev->device == 0x6667))) ||
-+ ((rdev->pdev->revision == 0xc3) &&
-+ (rdev->pdev->device == 0x6665)))
- new_smc = true;
- new_chip_name = "hainan";
- pfp_req_size = SI_PFP_UCODE_SIZE * 4;