[Intel-gfx] [PATCH] drm/i915: Remove CONFIG_PM dependency from RC6.

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Wed Nov 30 11:47:44 UTC 2022


On 30/11/2022 02:29, Rodrigo Vivi wrote:
> RC6 is a sleep state that doesn't depend on the cpu sleep,
> or any of the APM or ACPI or anything related to the
> CONFIG_PM.
> 
> A long time ago we have removed the module parameter
> that allows the RC6 disablement. We want that feature enabled
> everywhere. However, for some reason this CONFIG_PM was long
> forgotten behind.
> 
> If we end up needing knobs to disable RC6 we should create
> individual ones, rather than relying on this master one.

Digging in history shows 5ab3633d6907 ("drm/i915: make rc6 in sysfs 
functions conditional") and then it appears the issue could still be 
present, since we still use power_group_name which is NULL when !CONFIG_PM.

$ ls -l /sys/class/drm/card0/power/
total 0
-rw-r--r-- 1 root root 4096 Nov 30 11:45 async
-rw-r--r-- 1 root root 4096 Nov 30 11:45 autosuspend_delay_ms
-rw-r--r-- 1 root root 4096 Nov 30 11:45 control
-r--r--r-- 1 root root 4096 Nov 30 11:45 rc6_enable
-r--r--r-- 1 root root 4096 Nov 30 11:45 rc6_residency_ms
-r--r--r-- 1 root root 4096 Nov 30 11:45 runtime_active_kids
-r--r--r-- 1 root root 4096 Nov 30 11:45 runtime_active_time
-r--r--r-- 1 root root 4096 Nov 30 11:45 runtime_enabled
-r--r--r-- 1 root root 4096 Nov 30 11:45 runtime_status
-r--r--r-- 1 root root 4096 Nov 30 11:45 runtime_suspended_time
-r--r--r-- 1 root root 4096 Nov 30 11:45 runtime_usage

Other than rc6 entries I guess come from somewhere else but I haven't 
looked from where exactly.

Regards,

Tvrtko

> Cc: Paul Cercueil <paul at crapouillou.net>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
> ---
>   drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c | 6 ------
>   1 file changed, 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> index cf71305ad586..77327ede18ad 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.c
> @@ -164,7 +164,6 @@ sysfs_gt_attribute_r_func(struct kobject *kobj, struct attribute *attr,
>   								 NULL);			\
>   	INTEL_GT_ATTR_RO(_name)
>   
> -#ifdef CONFIG_PM
>   static u32 get_residency(struct intel_gt *gt, enum intel_rc6_res_type id)
>   {
>   	intel_wakeref_t wakeref;
> @@ -329,11 +328,6 @@ static void intel_sysfs_rc6_init(struct intel_gt *gt, struct kobject *kobj)
>   				 gt->info.id, ERR_PTR(ret));
>   	}
>   }
> -#else
> -static void intel_sysfs_rc6_init(struct intel_gt *gt, struct kobject *kobj)
> -{
> -}
> -#endif /* CONFIG_PM */
>   
>   static u32 __act_freq_mhz_show(struct intel_gt *gt)
>   {


More information about the Intel-gfx mailing list