summaryrefslogtreecommitdiff
path: root/SOURCES/tkg-misc-additions.patch
diff options
context:
space:
mode:
Diffstat (limited to 'SOURCES/tkg-misc-additions.patch')
-rw-r--r--SOURCES/tkg-misc-additions.patch158
1 files changed, 0 insertions, 158 deletions
diff --git a/SOURCES/tkg-misc-additions.patch b/SOURCES/tkg-misc-additions.patch
index 618b53c..31368a7 100644
--- a/SOURCES/tkg-misc-additions.patch
+++ b/SOURCES/tkg-misc-additions.patch
@@ -97,161 +97,3 @@ index f4b210ab061291..837d0dbb28ea08 100644
depends on HAVE_ARCH_MMAP_RND_COMPAT_BITS
help
This value can be used to select the number of bits to use to
-
-From 3cfb591e23181791195a74efe2e9065e0d4bd201 Mon Sep 17 00:00:00 2001
-From: Etienne JUVIGNY <ti3nou@gmail.com>
-Date: Mon, 15 Jan 2024 19:09:39 +0100
-Subject: Revert: drm/amd/pm: fix the high voltage and temperature issue
-
-This was supposed to fix the high voltage and temperature issue after the driver is unloaded on smu 13.0.0,
-smu 13.0.7 and smu 13.0.10, but introduced an arguably more annoying issue. Let's revert it until a proper fix is offered.
-
-Fixes rdna3 shutdown/reboot hang.
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-index 93cf73d6f..960966f4b 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-@@ -4050,23 +4050,13 @@ int amdgpu_device_init(struct amdgpu_device *adev,
- }
- }
- } else {
-- switch (amdgpu_ip_version(adev, MP1_HWIP, 0)) {
-- case IP_VERSION(13, 0, 0):
-- case IP_VERSION(13, 0, 7):
-- case IP_VERSION(13, 0, 10):
-- r = psp_gpu_reset(adev);
-- break;
-- default:
-- tmp = amdgpu_reset_method;
-- /* It should do a default reset when loading or reloading the driver,
-- * regardless of the module parameter reset_method.
-- */
-- amdgpu_reset_method = AMD_RESET_METHOD_NONE;
-- r = amdgpu_asic_reset(adev);
-- amdgpu_reset_method = tmp;
-- break;
-- }
--
-+ tmp = amdgpu_reset_method;
-+ /* It should do a default reset when loading or reloading the driver,
-+ * regardless of the module parameter reset_method.
-+ */
-+ amdgpu_reset_method = AMD_RESET_METHOD_NONE;
-+ r = amdgpu_asic_reset(adev);
-+ amdgpu_reset_method = tmp;
- if (r) {
- dev_err(adev->dev, "asic reset on init failed\n");
- goto failed;
-diff --git a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
-index e1a5ee911..308ebeb43 100644
---- a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
-+++ b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
-@@ -733,7 +733,7 @@ static int smu_early_init(void *handle)
- smu->adev = adev;
- smu->pm_enabled = !!amdgpu_dpm;
- smu->is_apu = false;
-- smu->smu_baco.state = SMU_BACO_STATE_NONE;
-+ smu->smu_baco.state = SMU_BACO_STATE_EXIT;
- smu->smu_baco.platform_support = false;
- smu->user_dpm_profile.fan_mode = -1;
-
-@@ -1753,31 +1753,10 @@ static int smu_smc_hw_cleanup(struct smu_context *smu)
- return 0;
- }
-
--static int smu_reset_mp1_state(struct smu_context *smu)
--{
-- struct amdgpu_device *adev = smu->adev;
-- int ret = 0;
--
-- if ((!adev->in_runpm) && (!adev->in_suspend) &&
-- (!amdgpu_in_reset(adev)))
-- switch (amdgpu_ip_version(adev, MP1_HWIP, 0)) {
-- case IP_VERSION(13, 0, 0):
-- case IP_VERSION(13, 0, 7):
-- case IP_VERSION(13, 0, 10):
-- ret = smu_set_mp1_state(smu, PP_MP1_STATE_UNLOAD);
-- break;
-- default:
-- break;
-- }
--
-- return ret;
--}
--
- static int smu_hw_fini(void *handle)
- {
- struct amdgpu_device *adev = (struct amdgpu_device *)handle;
- struct smu_context *smu = adev->powerplay.pp_handle;
-- int ret;
-
- if (amdgpu_sriov_vf(adev) && !amdgpu_sriov_is_pp_one_vf(adev))
- return 0;
-@@ -1795,15 +1774,7 @@ static int smu_hw_fini(void *handle)
-
- adev->pm.dpm_enabled = false;
-
-- ret = smu_smc_hw_cleanup(smu);
-- if (ret)
-- return ret;
--
-- ret = smu_reset_mp1_state(smu);
-- if (ret)
-- return ret;
--
-- return 0;
-+ return smu_smc_hw_cleanup(smu);
- }
-
- static void smu_late_fini(void *handle)
-diff --git a/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h b/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
-index f8b2e6cc2..e8329d157 100644
---- a/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
-+++ b/drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h
-@@ -419,7 +419,6 @@ enum smu_reset_mode {
- enum smu_baco_state {
- SMU_BACO_STATE_ENTER = 0,
- SMU_BACO_STATE_EXIT,
-- SMU_BACO_STATE_NONE,
- };
-
- struct smu_baco_context {
-diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
-index 82c4e1f1c..2ba77b1d1 100644
---- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
-+++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
-@@ -2772,13 +2766,7 @@ static int smu_v13_0_0_set_mp1_state(struct smu_context *smu,
-
- switch (mp1_state) {
- case PP_MP1_STATE_UNLOAD:
-- ret = smu_cmn_send_smc_msg_with_param(smu,
-- SMU_MSG_PrepareMp1ForUnload,
-- 0x55, NULL);
--
-- if (!ret && smu->smu_baco.state == SMU_BACO_STATE_EXIT)
-- ret = smu_v13_0_disable_pmfw_state(smu);
--
-+ ret = smu_cmn_set_mp1_state(smu, mp1_state);
- break;
- default:
- /* Ignore others */
-diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
-index 81eafed76..19c1289d0 100644
---- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
-+++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c
-@@ -2499,13 +2499,7 @@ static int smu_v13_0_7_set_mp1_state(struct smu_context *smu,
-
- switch (mp1_state) {
- case PP_MP1_STATE_UNLOAD:
-- ret = smu_cmn_send_smc_msg_with_param(smu,
-- SMU_MSG_PrepareMp1ForUnload,
-- 0x55, NULL);
--
-- if (!ret && smu->smu_baco.state == SMU_BACO_STATE_EXIT)
-- ret = smu_v13_0_disable_pmfw_state(smu);
--
-+ ret = smu_cmn_set_mp1_state(smu, mp1_state);
- break;
- default:
- /* Ignore others */