* [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs
@ 2022-01-21 2:46 Guchun Chen
2022-01-21 3:37 ` Quan, Evan
0 siblings, 1 reply; 4+ messages in thread
From: Guchun Chen @ 2022-01-21 2:46 UTC (permalink / raw)
To: amd-gfx, alexander.deucher, christian.koenig, xinhui.pan,
evan.quan, lijo.lazar
Cc: Guchun Chen
In multiple GPU configuration, when failed to send a SMU
message, it's hard to figure out which GPU has such problem.
So it's not comfortable to user.
[40190.142181] amdgpu: [powerplay]
last message was failed ret is 65535
[40190.242420] amdgpu: [powerplay]
failed to send message 201 ret is 65535
[40190.392763] amdgpu: [powerplay]
last message was failed ret is 65535
[40190.492997] amdgpu: [powerplay]
failed to send message 200 ret is 65535
[40190.743575] amdgpu: [powerplay]
last message was failed ret is 65535
[40190.843812] amdgpu: [powerplay]
failed to send message 282 ret is 65535
Signed-off-by: Guchun Chen <guchun.chen@amd.com>
---
drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c | 4 +++-
.../gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c | 4 ++--
drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c | 11 +++++++----
drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c | 2 +-
.../gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c | 4 ++--
5 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
index 93a1c7248e26..5ca3c422f7d4 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
@@ -208,6 +208,7 @@ static int ci_read_smc_sram_dword(struct pp_hwmgr *hwmgr, uint32_t smc_addr,
static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
{
+ struct amdgpu_device *adev = hwmgr->adev;
int ret;
cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
@@ -218,7 +219,8 @@ static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
if (ret != 1)
- pr_info("\n failed to send message %x ret is %d\n", msg, ret);
+ dev_info(adev->dev,
+ "failed to send message %x ret is %d\n", msg,ret);
return 0;
}
diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
index 47b34c6ca924..88a5641465dc 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
@@ -87,7 +87,7 @@ static int smu10_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
smu10_send_msg_to_smc_without_waiting(hwmgr, msg);
if (smu10_wait_for_response(hwmgr) == 0)
- printk("Failed to send Message %x.\n", msg);
+ dev_err(adev->dev, "Failed to send Message %x.\n", msg);
return 0;
}
@@ -108,7 +108,7 @@ static int smu10_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
if (smu10_wait_for_response(hwmgr) == 0)
- printk("Failed to send Message %x.\n", msg);
+ dev_err(adev->dev, "Failed to send Message %x.\n", msg);
return 0;
}
diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
index aae25243eb10..5a010cd38303 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
@@ -165,6 +165,7 @@ bool smu7_is_smc_ram_running(struct pp_hwmgr *hwmgr)
int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
{
+ struct amdgpu_device *adev = hwmgr->adev;
int ret;
PHM_WAIT_FIELD_UNEQUAL(hwmgr, SMC_RESP_0, SMC_RESP, 0);
@@ -172,9 +173,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
if (ret == 0xFE)
- pr_debug("last message was not supported\n");
+ dev_dbg(adev->dev, "last message was not supported\n");
else if (ret != 1)
- pr_info("\n last message was failed ret is %d\n", ret);
+ dev_info(adev->dev,
+ "\nlast message was failed ret is %d\n", ret);
cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
cgs_write_register(hwmgr->device, mmSMC_MESSAGE_0, msg);
@@ -184,9 +186,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
if (ret == 0xFE)
- pr_debug("message %x was not supported\n", msg);
+ dev_dbg(adev->dev, "message %x was not supported\n", msg);
else if (ret != 1)
- pr_info("\n failed to send message %x ret is %d \n", msg, ret);
+ dev_dbg(adev->dev,
+ "failed to send message %x ret is %d \n", msg, ret);
return 0;
}
diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
index 23e5de3c4ec1..8c9bf4940dc1 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
@@ -126,7 +126,7 @@ int smu9_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
ret = smu9_wait_for_response(hwmgr);
if (ret != 1)
- pr_err("Failed to send message: 0x%x, ret value: 0x%x\n", msg, ret);
+ dev_err(adev->dev, "Failed to send message: 0x%x, ret value: 0x%x\n", msg, ret);
return 0;
}
diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
index 741fbc87467f..9ad26c285ecd 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
@@ -115,7 +115,7 @@ static int vega20_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
ret = vega20_wait_for_response(hwmgr);
if (ret != PPSMC_Result_OK)
- pr_err("Failed to send message 0x%x, response 0x%x\n", msg, ret);
+ dev_err(adev->dev, "Failed to send message 0x%x, response 0x%x\n", msg, ret);
return (ret == PPSMC_Result_OK) ? 0 : -EIO;
}
@@ -143,7 +143,7 @@ static int vega20_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
ret = vega20_wait_for_response(hwmgr);
if (ret != PPSMC_Result_OK)
- pr_err("Failed to send message 0x%x, response 0x%x\n", msg, ret);
+ dev_err(adev->dev, "Failed to send message 0x%x, response 0x%x\n", msg, ret);
return (ret == PPSMC_Result_OK) ? 0 : -EIO;
}
--
2.17.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* RE: [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs
2022-01-21 2:46 [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs Guchun Chen
@ 2022-01-21 3:37 ` Quan, Evan
2022-01-21 7:34 ` Chen, Guchun
0 siblings, 1 reply; 4+ messages in thread
From: Quan, Evan @ 2022-01-21 3:37 UTC (permalink / raw)
To: Chen, Guchun, amd-gfx, Deucher, Alexander, Koenig, Christian,
Pan, Xinhui, Lazar, Lijo
[AMD Official Use Only]
Reviewed-by: Evan Quan <evan.quan@amd.com>
> -----Original Message-----
> From: Chen, Guchun <Guchun.Chen@amd.com>
> Sent: Friday, January 21, 2022 10:47 AM
> To: amd-gfx@lists.freedesktop.org; Deucher, Alexander
> <Alexander.Deucher@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Quan,
> Evan <Evan.Quan@amd.com>; Lazar, Lijo <Lijo.Lazar@amd.com>
> Cc: Chen, Guchun <Guchun.Chen@amd.com>
> Subject: [PATCH] drm/amd/pm: use dev_*** to print output in multiple
> GPUs
>
> In multiple GPU configuration, when failed to send a SMU
> message, it's hard to figure out which GPU has such problem.
> So it's not comfortable to user.
>
> [40190.142181] amdgpu: [powerplay]
> last message was failed ret is 65535
> [40190.242420] amdgpu: [powerplay]
> failed to send message 201 ret is 65535
> [40190.392763] amdgpu: [powerplay]
> last message was failed ret is 65535
> [40190.492997] amdgpu: [powerplay]
> failed to send message 200 ret is 65535
> [40190.743575] amdgpu: [powerplay]
> last message was failed ret is 65535
> [40190.843812] amdgpu: [powerplay]
> failed to send message 282 ret is 65535
>
> Signed-off-by: Guchun Chen <guchun.chen@amd.com>
> ---
> drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c | 4 +++-
> .../gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c | 4 ++--
> drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c | 11
> +++++++----
> drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c | 2 +-
> .../gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c | 4 ++--
> 5 files changed, 15 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> index 93a1c7248e26..5ca3c422f7d4 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> @@ -208,6 +208,7 @@ static int ci_read_smc_sram_dword(struct pp_hwmgr
> *hwmgr, uint32_t smc_addr,
>
> static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
> {
> + struct amdgpu_device *adev = hwmgr->adev;
> int ret;
>
> cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
> @@ -218,7 +219,8 @@ static int ci_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
> ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
>
> if (ret != 1)
> - pr_info("\n failed to send message %x ret is %d\n", msg, ret);
> + dev_info(adev->dev,
> + "failed to send message %x ret is %d\n", msg,ret);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> index 47b34c6ca924..88a5641465dc 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> @@ -87,7 +87,7 @@ static int smu10_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
> smu10_send_msg_to_smc_without_waiting(hwmgr, msg);
>
> if (smu10_wait_for_response(hwmgr) == 0)
> - printk("Failed to send Message %x.\n", msg);
> + dev_err(adev->dev, "Failed to send Message %x.\n", msg);
>
> return 0;
> }
> @@ -108,7 +108,7 @@ static int
> smu10_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
>
>
> if (smu10_wait_for_response(hwmgr) == 0)
> - printk("Failed to send Message %x.\n", msg);
> + dev_err(adev->dev, "Failed to send Message %x.\n", msg);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> index aae25243eb10..5a010cd38303 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> @@ -165,6 +165,7 @@ bool smu7_is_smc_ram_running(struct pp_hwmgr
> *hwmgr)
>
> int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
> {
> + struct amdgpu_device *adev = hwmgr->adev;
> int ret;
>
> PHM_WAIT_FIELD_UNEQUAL(hwmgr, SMC_RESP_0, SMC_RESP, 0);
> @@ -172,9 +173,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
> ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
>
> if (ret == 0xFE)
> - pr_debug("last message was not supported\n");
> + dev_dbg(adev->dev, "last message was not supported\n");
> else if (ret != 1)
> - pr_info("\n last message was failed ret is %d\n", ret);
> + dev_info(adev->dev,
> + "\nlast message was failed ret is %d\n", ret);
>
> cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
> cgs_write_register(hwmgr->device, mmSMC_MESSAGE_0, msg);
> @@ -184,9 +186,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
> ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
>
> if (ret == 0xFE)
> - pr_debug("message %x was not supported\n", msg);
> + dev_dbg(adev->dev, "message %x was not supported\n",
> msg);
> else if (ret != 1)
> - pr_info("\n failed to send message %x ret is %d \n", msg,
> ret);
> + dev_dbg(adev->dev,
> + "failed to send message %x ret is %d \n", msg, ret);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> index 23e5de3c4ec1..8c9bf4940dc1 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> @@ -126,7 +126,7 @@ int smu9_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
>
> ret = smu9_wait_for_response(hwmgr);
> if (ret != 1)
> - pr_err("Failed to send message: 0x%x, ret value: 0x%x\n",
> msg, ret);
> + dev_err(adev->dev, "Failed to send message: 0x%x, ret
> value: 0x%x\n", msg, ret);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> index 741fbc87467f..9ad26c285ecd 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> @@ -115,7 +115,7 @@ static int vega20_send_msg_to_smc(struct
> pp_hwmgr *hwmgr, uint16_t msg)
>
> ret = vega20_wait_for_response(hwmgr);
> if (ret != PPSMC_Result_OK)
> - pr_err("Failed to send message 0x%x, response 0x%x\n",
> msg, ret);
> + dev_err(adev->dev, "Failed to send message 0x%x, response
> 0x%x\n", msg, ret);
>
> return (ret == PPSMC_Result_OK) ? 0 : -EIO;
> }
> @@ -143,7 +143,7 @@ static int
> vega20_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
>
> ret = vega20_wait_for_response(hwmgr);
> if (ret != PPSMC_Result_OK)
> - pr_err("Failed to send message 0x%x, response 0x%x\n",
> msg, ret);
> + dev_err(adev->dev, "Failed to send message 0x%x, response
> 0x%x\n", msg, ret);
>
> return (ret == PPSMC_Result_OK) ? 0 : -EIO;
> }
> --
> 2.17.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs
2022-01-21 3:37 ` Quan, Evan
@ 2022-01-21 7:34 ` Chen, Guchun
2022-01-21 7:36 ` Quan, Evan
0 siblings, 1 reply; 4+ messages in thread
From: Chen, Guchun @ 2022-01-21 7:34 UTC (permalink / raw)
To: Quan, Evan, amd-gfx, Deucher, Alexander, Koenig, Christian, Pan,
Xinhui, Lazar, Lijo
[Public]
Thank you for review, Evan. I will submit the patch with modifying the commit message a bit to align the indentation. Hope it's fine to you.
Regards,
Guchun
-----Original Message-----
From: Quan, Evan <Evan.Quan@amd.com>
Sent: Friday, January 21, 2022 11:38 AM
To: Chen, Guchun <Guchun.Chen@amd.com>; amd-gfx@lists.freedesktop.org; Deucher, Alexander <Alexander.Deucher@amd.com>; Koenig, Christian <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Lazar, Lijo <Lijo.Lazar@amd.com>
Subject: RE: [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs
[AMD Official Use Only]
Reviewed-by: Evan Quan <evan.quan@amd.com>
> -----Original Message-----
> From: Chen, Guchun <Guchun.Chen@amd.com>
> Sent: Friday, January 21, 2022 10:47 AM
> To: amd-gfx@lists.freedesktop.org; Deucher, Alexander
> <Alexander.Deucher@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Quan,
> Evan <Evan.Quan@amd.com>; Lazar, Lijo <Lijo.Lazar@amd.com>
> Cc: Chen, Guchun <Guchun.Chen@amd.com>
> Subject: [PATCH] drm/amd/pm: use dev_*** to print output in multiple
> GPUs
>
> In multiple GPU configuration, when failed to send a SMU message, it's
> hard to figure out which GPU has such problem.
> So it's not comfortable to user.
>
> [40190.142181] amdgpu: [powerplay]
> last message was failed ret is 65535 [40190.242420]
> amdgpu: [powerplay]
> failed to send message 201 ret is 65535 [40190.392763]
> amdgpu: [powerplay]
> last message was failed ret is 65535 [40190.492997]
> amdgpu: [powerplay]
> failed to send message 200 ret is 65535 [40190.743575]
> amdgpu: [powerplay]
> last message was failed ret is 65535 [40190.843812]
> amdgpu: [powerplay]
> failed to send message 282 ret is 65535
>
> Signed-off-by: Guchun Chen <guchun.chen@amd.com>
> ---
> drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c | 4 +++-
> .../gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c | 4 ++--
> drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c | 11
> +++++++----
> drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c | 2 +-
> .../gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c | 4 ++--
> 5 files changed, 15 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> index 93a1c7248e26..5ca3c422f7d4 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> @@ -208,6 +208,7 @@ static int ci_read_smc_sram_dword(struct pp_hwmgr
> *hwmgr, uint32_t smc_addr,
>
> static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
> {
> + struct amdgpu_device *adev = hwmgr->adev;
> int ret;
>
> cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0); @@ -218,7 +219,8
> @@ static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
> ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
>
> if (ret != 1)
> - pr_info("\n failed to send message %x ret is %d\n", msg, ret);
> + dev_info(adev->dev,
> + "failed to send message %x ret is %d\n", msg,ret);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> index 47b34c6ca924..88a5641465dc 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> @@ -87,7 +87,7 @@ static int smu10_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
> smu10_send_msg_to_smc_without_waiting(hwmgr, msg);
>
> if (smu10_wait_for_response(hwmgr) == 0)
> - printk("Failed to send Message %x.\n", msg);
> + dev_err(adev->dev, "Failed to send Message %x.\n", msg);
>
> return 0;
> }
> @@ -108,7 +108,7 @@ static int
> smu10_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
>
>
> if (smu10_wait_for_response(hwmgr) == 0)
> - printk("Failed to send Message %x.\n", msg);
> + dev_err(adev->dev, "Failed to send Message %x.\n", msg);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> index aae25243eb10..5a010cd38303 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> @@ -165,6 +165,7 @@ bool smu7_is_smc_ram_running(struct pp_hwmgr
> *hwmgr)
>
> int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg) {
> + struct amdgpu_device *adev = hwmgr->adev;
> int ret;
>
> PHM_WAIT_FIELD_UNEQUAL(hwmgr, SMC_RESP_0, SMC_RESP, 0); @@ -172,9
> +173,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t
> msg)
> ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
>
> if (ret == 0xFE)
> - pr_debug("last message was not supported\n");
> + dev_dbg(adev->dev, "last message was not supported\n");
> else if (ret != 1)
> - pr_info("\n last message was failed ret is %d\n", ret);
> + dev_info(adev->dev,
> + "\nlast message was failed ret is %d\n", ret);
>
> cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
> cgs_write_register(hwmgr->device, mmSMC_MESSAGE_0, msg); @@ -184,9
> +186,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t
> msg)
> ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
>
> if (ret == 0xFE)
> - pr_debug("message %x was not supported\n", msg);
> + dev_dbg(adev->dev, "message %x was not supported\n",
> msg);
> else if (ret != 1)
> - pr_info("\n failed to send message %x ret is %d \n", msg,
> ret);
> + dev_dbg(adev->dev,
> + "failed to send message %x ret is %d \n", msg, ret);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> index 23e5de3c4ec1..8c9bf4940dc1 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> @@ -126,7 +126,7 @@ int smu9_send_msg_to_smc(struct pp_hwmgr *hwmgr,
> uint16_t msg)
>
> ret = smu9_wait_for_response(hwmgr);
> if (ret != 1)
> - pr_err("Failed to send message: 0x%x, ret value: 0x%x\n",
> msg, ret);
> + dev_err(adev->dev, "Failed to send message: 0x%x, ret
> value: 0x%x\n", msg, ret);
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> index 741fbc87467f..9ad26c285ecd 100644
> --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> @@ -115,7 +115,7 @@ static int vega20_send_msg_to_smc(struct pp_hwmgr
> *hwmgr, uint16_t msg)
>
> ret = vega20_wait_for_response(hwmgr);
> if (ret != PPSMC_Result_OK)
> - pr_err("Failed to send message 0x%x, response 0x%x\n",
> msg, ret);
> + dev_err(adev->dev, "Failed to send message 0x%x, response
> 0x%x\n", msg, ret);
>
> return (ret == PPSMC_Result_OK) ? 0 : -EIO; } @@ -143,7 +143,7 @@
> static int vega20_send_msg_to_smc_with_parameter(struct pp_hwmgr
> *hwmgr,
>
> ret = vega20_wait_for_response(hwmgr);
> if (ret != PPSMC_Result_OK)
> - pr_err("Failed to send message 0x%x, response 0x%x\n",
> msg, ret);
> + dev_err(adev->dev, "Failed to send message 0x%x, response
> 0x%x\n", msg, ret);
>
> return (ret == PPSMC_Result_OK) ? 0 : -EIO; }
> --
> 2.17.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs
2022-01-21 7:34 ` Chen, Guchun
@ 2022-01-21 7:36 ` Quan, Evan
0 siblings, 0 replies; 4+ messages in thread
From: Quan, Evan @ 2022-01-21 7:36 UTC (permalink / raw)
To: Chen, Guchun, amd-gfx, Deucher, Alexander, Koenig, Christian,
Pan, Xinhui, Lazar, Lijo
[Public]
Sure, please go ahead.
BR
Evan
> -----Original Message-----
> From: Chen, Guchun <Guchun.Chen@amd.com>
> Sent: Friday, January 21, 2022 3:35 PM
> To: Quan, Evan <Evan.Quan@amd.com>; amd-gfx@lists.freedesktop.org;
> Deucher, Alexander <Alexander.Deucher@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Lazar,
> Lijo <Lijo.Lazar@amd.com>
> Subject: RE: [PATCH] drm/amd/pm: use dev_*** to print output in multiple
> GPUs
>
> [Public]
>
> Thank you for review, Evan. I will submit the patch with modifying the
> commit message a bit to align the indentation. Hope it's fine to you.
>
> Regards,
> Guchun
>
> -----Original Message-----
> From: Quan, Evan <Evan.Quan@amd.com>
> Sent: Friday, January 21, 2022 11:38 AM
> To: Chen, Guchun <Guchun.Chen@amd.com>; amd-
> gfx@lists.freedesktop.org; Deucher, Alexander
> <Alexander.Deucher@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Lazar,
> Lijo <Lijo.Lazar@amd.com>
> Subject: RE: [PATCH] drm/amd/pm: use dev_*** to print output in multiple
> GPUs
>
> [AMD Official Use Only]
>
> Reviewed-by: Evan Quan <evan.quan@amd.com>
>
> > -----Original Message-----
> > From: Chen, Guchun <Guchun.Chen@amd.com>
> > Sent: Friday, January 21, 2022 10:47 AM
> > To: amd-gfx@lists.freedesktop.org; Deucher, Alexander
> > <Alexander.Deucher@amd.com>; Koenig, Christian
> > <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Quan,
> > Evan <Evan.Quan@amd.com>; Lazar, Lijo <Lijo.Lazar@amd.com>
> > Cc: Chen, Guchun <Guchun.Chen@amd.com>
> > Subject: [PATCH] drm/amd/pm: use dev_*** to print output in multiple
> > GPUs
> >
> > In multiple GPU configuration, when failed to send a SMU message, it's
> > hard to figure out which GPU has such problem.
> > So it's not comfortable to user.
> >
> > [40190.142181] amdgpu: [powerplay]
> > last message was failed ret is 65535 [40190.242420]
> > amdgpu: [powerplay]
> > failed to send message 201 ret is 65535 [40190.392763]
> > amdgpu: [powerplay]
> > last message was failed ret is 65535 [40190.492997]
> > amdgpu: [powerplay]
> > failed to send message 200 ret is 65535 [40190.743575]
> > amdgpu: [powerplay]
> > last message was failed ret is 65535 [40190.843812]
> > amdgpu: [powerplay]
> > failed to send message 282 ret is 65535
> >
> > Signed-off-by: Guchun Chen <guchun.chen@amd.com>
> > ---
> > drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c | 4 +++-
> > .../gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c | 4 ++--
> > drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c | 11
> > +++++++----
> > drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c | 2 +-
> > .../gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c | 4 ++--
> > 5 files changed, 15 insertions(+), 10 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> > b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> > index 93a1c7248e26..5ca3c422f7d4 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/ci_smumgr.c
> > @@ -208,6 +208,7 @@ static int ci_read_smc_sram_dword(struct
> pp_hwmgr
> > *hwmgr, uint32_t smc_addr,
> >
> > static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg) {
> > + struct amdgpu_device *adev = hwmgr->adev;
> > int ret;
> >
> > cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0); @@ -218,7
> +219,8
> > @@ static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t
> msg)
> > ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
> >
> > if (ret != 1)
> > - pr_info("\n failed to send message %x ret is %d\n", msg, ret);
> > + dev_info(adev->dev,
> > + "failed to send message %x ret is %d\n", msg,ret);
> >
> > return 0;
> > }
> > diff --git
> a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> > b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> > index 47b34c6ca924..88a5641465dc 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu10_smumgr.c
> > @@ -87,7 +87,7 @@ static int smu10_send_msg_to_smc(struct pp_hwmgr
> > *hwmgr, uint16_t msg)
> > smu10_send_msg_to_smc_without_waiting(hwmgr, msg);
> >
> > if (smu10_wait_for_response(hwmgr) == 0)
> > - printk("Failed to send Message %x.\n", msg);
> > + dev_err(adev->dev, "Failed to send Message %x.\n", msg);
> >
> > return 0;
> > }
> > @@ -108,7 +108,7 @@ static int
> > smu10_send_msg_to_smc_with_parameter(struct pp_hwmgr *hwmgr,
> >
> >
> > if (smu10_wait_for_response(hwmgr) == 0)
> > - printk("Failed to send Message %x.\n", msg);
> > + dev_err(adev->dev, "Failed to send Message %x.\n", msg);
> >
> > return 0;
> > }
> > diff --git
> a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> > b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> > index aae25243eb10..5a010cd38303 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu7_smumgr.c
> > @@ -165,6 +165,7 @@ bool smu7_is_smc_ram_running(struct pp_hwmgr
> > *hwmgr)
> >
> > int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg) {
> > + struct amdgpu_device *adev = hwmgr->adev;
> > int ret;
> >
> > PHM_WAIT_FIELD_UNEQUAL(hwmgr, SMC_RESP_0, SMC_RESP, 0);
> @@ -172,9
> > +173,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr,
> uint16_t
> > msg)
> > ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
> >
> > if (ret == 0xFE)
> > - pr_debug("last message was not supported\n");
> > + dev_dbg(adev->dev, "last message was not supported\n");
> > else if (ret != 1)
> > - pr_info("\n last message was failed ret is %d\n", ret);
> > + dev_info(adev->dev,
> > + "\nlast message was failed ret is %d\n", ret);
> >
> > cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
> > cgs_write_register(hwmgr->device, mmSMC_MESSAGE_0, msg);
> @@ -184,9
> > +186,10 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr,
> uint16_t
> > msg)
> > ret = PHM_READ_FIELD(hwmgr->device, SMC_RESP_0, SMC_RESP);
> >
> > if (ret == 0xFE)
> > - pr_debug("message %x was not supported\n", msg);
> > + dev_dbg(adev->dev, "message %x was not supported\n",
> > msg);
> > else if (ret != 1)
> > - pr_info("\n failed to send message %x ret is %d \n", msg,
> > ret);
> > + dev_dbg(adev->dev,
> > + "failed to send message %x ret is %d \n", msg, ret);
> >
> > return 0;
> > }
> > diff --git
> a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> > b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> > index 23e5de3c4ec1..8c9bf4940dc1 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/smu9_smumgr.c
> > @@ -126,7 +126,7 @@ int smu9_send_msg_to_smc(struct pp_hwmgr
> *hwmgr,
> > uint16_t msg)
> >
> > ret = smu9_wait_for_response(hwmgr);
> > if (ret != 1)
> > - pr_err("Failed to send message: 0x%x, ret value: 0x%x\n",
> > msg, ret);
> > + dev_err(adev->dev, "Failed to send message: 0x%x, ret
> > value: 0x%x\n", msg, ret);
> >
> > return 0;
> > }
> > diff --git
> a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> > b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> > index 741fbc87467f..9ad26c285ecd 100644
> > --- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> > +++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/vega20_smumgr.c
> > @@ -115,7 +115,7 @@ static int vega20_send_msg_to_smc(struct
> pp_hwmgr
> > *hwmgr, uint16_t msg)
> >
> > ret = vega20_wait_for_response(hwmgr);
> > if (ret != PPSMC_Result_OK)
> > - pr_err("Failed to send message 0x%x, response 0x%x\n",
> > msg, ret);
> > + dev_err(adev->dev, "Failed to send message 0x%x, response
> > 0x%x\n", msg, ret);
> >
> > return (ret == PPSMC_Result_OK) ? 0 : -EIO; } @@ -143,7 +143,7 @@
> > static int vega20_send_msg_to_smc_with_parameter(struct pp_hwmgr
> > *hwmgr,
> >
> > ret = vega20_wait_for_response(hwmgr);
> > if (ret != PPSMC_Result_OK)
> > - pr_err("Failed to send message 0x%x, response 0x%x\n",
> > msg, ret);
> > + dev_err(adev->dev, "Failed to send message 0x%x, response
> > 0x%x\n", msg, ret);
> >
> > return (ret == PPSMC_Result_OK) ? 0 : -EIO; }
> > --
> > 2.17.1
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-01-21 7:36 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-21 2:46 [PATCH] drm/amd/pm: use dev_*** to print output in multiple GPUs Guchun Chen
2022-01-21 3:37 ` Quan, Evan
2022-01-21 7:34 ` Chen, Guchun
2022-01-21 7:36 ` Quan, Evan
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.