[PATCH 17/31] drm/amdgpu: skip imu related function if dpm=0

Alex Deucher alexander.deucher at amd.com
Mon Apr 29 14:33:25 UTC 2024


From: Likun Gao <Likun.Gao at amd.com>

Only execute IMU related functions if dpm>0.

Signed-off-by: Likun Gao <Likun.Gao at amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang at amd.com>
Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
---
 drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
index 1253053d10339..f3f8601d6e184 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
@@ -1076,7 +1076,7 @@ static int gfx_v12_0_rlc_backdoor_autoload_enable(struct amdgpu_device *adev)
 
 	WREG32_SOC15(GC, 0, regGFX_IMU_RLC_BOOTLOADER_SIZE, rlc_g_size);
 
-	if (adev->gfx.imu.funcs) {
+	if (adev->gfx.imu.funcs && (amdgpu_dpm > 0)) {
 		/* RLC autoload sequence 3: load IMU fw */
 		if (adev->gfx.imu.funcs->load_microcode)
 			adev->gfx.imu.funcs->load_microcode(adev);
@@ -1149,7 +1149,7 @@ static int gfx_v12_0_sw_init(void *handle)
 
 	adev->gfx.gfx_current_status = AMDGPU_GFX_NORMAL_MODE;
 
-	if (adev->gfx.imu.funcs) {
+	if (adev->gfx.imu.funcs && (amdgpu_dpm > 0)) {
 		if (adev->gfx.imu.funcs->init_microcode) {
 			r = adev->gfx.imu.funcs->init_microcode(adev);
 			if (r)
@@ -3215,7 +3215,7 @@ static int gfx_v12_0_hw_init(void *handle)
 	struct amdgpu_device *adev = (struct amdgpu_device *)handle;
 
 	if (adev->firmware.load_type == AMDGPU_FW_LOAD_RLC_BACKDOOR_AUTO) {
-		if (adev->gfx.imu.funcs) {
+		if (adev->gfx.imu.funcs && (amdgpu_dpm > 0)) {
 			/* RLC autoload sequence 1: Program rlc ram */
 			if (adev->gfx.imu.funcs->program_rlc_ram)
 				adev->gfx.imu.funcs->program_rlc_ram(adev);
-- 
2.44.0



More information about the amd-gfx mailing list