Re: [PATCH] platform/x86/amd: pmc: Dump idle mask during "check" stage instead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 9/29/22 23:50, Mario Limonciello wrote:
> The idle mask is dumped during the "prepare" and "restore" stage
> right now, which helps to demonstrate issues only related to the
> first s2idle entry.
> 
> If the system has entered s2idle once, but was woken up never
> breaking the s2idle loop but also never went back to sleep we
> might still have another issue to deal with however.
> 
> Move the dynamic debugging message here so that we'll catch it on
> each iteration.
> 
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=216516
> Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx>

Thank you for your patch, I've applied this patch to my review-hans 
branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Note it will show up in my review-hans branch once I've pushed my
local branch there, which might take a while.

Once I've run some tests on this branch the patches there will be
added to the platform-drivers-x86/for-next branch and eventually
will be included in the pdx86 pull-request to Linus for the next
merge-window.

Regards,

Hans


> ---
>  drivers/platform/x86/amd/pmc.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/platform/x86/amd/pmc.c b/drivers/platform/x86/amd/pmc.c
> index 047e47449ff93..ce859b300712b 100644
> --- a/drivers/platform/x86/amd/pmc.c
> +++ b/drivers/platform/x86/amd/pmc.c
> @@ -719,8 +719,6 @@ static void amd_pmc_s2idle_prepare(void)
>  		}
>  	}
>  
> -	/* Dump the IdleMask before we send hint to SMU */
> -	amd_pmc_idlemask_read(pdev, pdev->dev, NULL);
>  	msg = amd_pmc_get_os_hint(pdev);
>  	rc = amd_pmc_send_cmd(pdev, arg, NULL, msg, 0);
>  	if (rc) {
> @@ -738,6 +736,9 @@ static void amd_pmc_s2idle_check(void)
>  	struct amd_pmc_dev *pdev = &pmc;
>  	int rc;
>  
> +	/* Dump the IdleMask before we add to the STB */
> +	amd_pmc_idlemask_read(pdev, pdev->dev, NULL);
> +
>  	rc = amd_pmc_write_stb(pdev, AMD_PMC_STB_S2IDLE_CHECK);
>  	if (rc)
>  		dev_err(pdev->dev, "error writing to STB: %d\n", rc);
> @@ -757,9 +758,6 @@ static void amd_pmc_s2idle_restore(void)
>  	/* Let SMU know that we are looking for stats */
>  	amd_pmc_send_cmd(pdev, 0, NULL, SMU_MSG_LOG_DUMP_DATA, 0);
>  
> -	/* Dump the IdleMask to see the blockers */
> -	amd_pmc_idlemask_read(pdev, pdev->dev, NULL);
> -
>  	rc = amd_pmc_write_stb(pdev, AMD_PMC_STB_S2IDLE_RESTORE);
>  	if (rc)
>  		dev_err(pdev->dev, "error writing to STB: %d\n", rc);




[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux