Re: [PATCH] platform/x86: amd-pmc: Fix compilation when CONFIG_DEBUGFS is disabled

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

 



Hi,

On 9/28/21 4:21 PM, Hans de Goede wrote:
> The amd_pmc_get_smu_version() and amd_pmc_idlemask_read() functions are
> used in the probe / suspend/resume code, so they are also used when
> CONFIG_DEBUGFS is disabled, move them outside of the #ifdef CONFIG_DEBUGFS
> block.
> 
> Note this purely moves the code to above the #ifdef CONFIG_DEBUGFS,
> the code is completely unchanged.
> 
> Cc: Shyam Sundar S K <Shyam-sundar.S-k@xxxxxxx>
> Cc: Sanket Goswami <Sanket.Goswami@xxxxxxx>
> Reported-by: Nathan Chancellor <nathan@xxxxxxxxxx>
> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>

I've forgotten to add a:

Fixes: f6045de1f532 ("platform/x86: amd-pmc: Export Idlemask values based on the APU")

I've done so now and added this to my pdx86/review-hans branch.

I will also add this to pdx86/fixes and include it in my
next 5.15 fixes pull-req to Linus.

Regards,

Hans


> ---
>  drivers/platform/x86/amd-pmc.c | 86 +++++++++++++++++-----------------
>  1 file changed, 43 insertions(+), 43 deletions(-)
> 
> diff --git a/drivers/platform/x86/amd-pmc.c b/drivers/platform/x86/amd-pmc.c
> index 1303366c31af..f185c43bbaa4 100644
> --- a/drivers/platform/x86/amd-pmc.c
> +++ b/drivers/platform/x86/amd-pmc.c
> @@ -155,6 +155,49 @@ struct smu_metrics {
>  	u64 timecondition_notmet_totaltime[SOC_SUBSYSTEM_IP_MAX];
>  } __packed;
>  
> +static int amd_pmc_get_smu_version(struct amd_pmc_dev *dev)
> +{
> +	int rc;
> +	u32 val;
> +
> +	rc = amd_pmc_send_cmd(dev, 0, &val, SMU_MSG_GETSMUVERSION, 1);
> +	if (rc)
> +		return rc;
> +
> +	dev->major = (val >> 16) & GENMASK(15, 0);
> +	dev->minor = (val >> 8) & GENMASK(7, 0);
> +	dev->rev = (val >> 0) & GENMASK(7, 0);
> +
> +	dev_dbg(dev->dev, "SMU version is %u.%u.%u\n", dev->major, dev->minor, dev->rev);
> +
> +	return 0;
> +}
> +
> +static int amd_pmc_idlemask_read(struct amd_pmc_dev *pdev, struct device *dev,
> +				 struct seq_file *s)
> +{
> +	u32 val;
> +
> +	switch (pdev->cpu_id) {
> +	case AMD_CPU_ID_CZN:
> +		val = amd_pmc_reg_read(pdev, AMD_PMC_SCRATCH_REG_CZN);
> +		break;
> +	case AMD_CPU_ID_YC:
> +		val = amd_pmc_reg_read(pdev, AMD_PMC_SCRATCH_REG_YC);
> +		break;
> +	default:
> +		return -EINVAL;
> +	}
> +
> +	if (dev)
> +		dev_dbg(pdev->dev, "SMU idlemask s0i3: 0x%x\n", val);
> +
> +	if (s)
> +		seq_printf(s, "SMU idlemask : 0x%x\n", val);
> +
> +	return 0;
> +}
> +
>  #ifdef CONFIG_DEBUG_FS
>  static int smu_fw_info_show(struct seq_file *s, void *unused)
>  {
> @@ -210,49 +253,6 @@ static int s0ix_stats_show(struct seq_file *s, void *unused)
>  }
>  DEFINE_SHOW_ATTRIBUTE(s0ix_stats);
>  
> -static int amd_pmc_get_smu_version(struct amd_pmc_dev *dev)
> -{
> -	int rc;
> -	u32 val;
> -
> -	rc = amd_pmc_send_cmd(dev, 0, &val, SMU_MSG_GETSMUVERSION, 1);
> -	if (rc)
> -		return rc;
> -
> -	dev->major = (val >> 16) & GENMASK(15, 0);
> -	dev->minor = (val >> 8) & GENMASK(7, 0);
> -	dev->rev = (val >> 0) & GENMASK(7, 0);
> -
> -	dev_dbg(dev->dev, "SMU version is %u.%u.%u\n", dev->major, dev->minor, dev->rev);
> -
> -	return 0;
> -}
> -
> -static int amd_pmc_idlemask_read(struct amd_pmc_dev *pdev, struct device *dev,
> -				 struct seq_file *s)
> -{
> -	u32 val;
> -
> -	switch (pdev->cpu_id) {
> -	case AMD_CPU_ID_CZN:
> -		val = amd_pmc_reg_read(pdev, AMD_PMC_SCRATCH_REG_CZN);
> -		break;
> -	case AMD_CPU_ID_YC:
> -		val = amd_pmc_reg_read(pdev, AMD_PMC_SCRATCH_REG_YC);
> -		break;
> -	default:
> -		return -EINVAL;
> -	}
> -
> -	if (dev)
> -		dev_dbg(pdev->dev, "SMU idlemask s0i3: 0x%x\n", val);
> -
> -	if (s)
> -		seq_printf(s, "SMU idlemask : 0x%x\n", val);
> -
> -	return 0;
> -}
> -
>  static int amd_pmc_idlemask_show(struct seq_file *s, void *unused)
>  {
>  	struct amd_pmc_dev *dev = s->private;
> 




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

  Powered by Linux