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

Vivi, Rodrigo rodrigo.vivi at intel.com
Wed Nov 30 13:37:42 UTC 2022


On Wed, 2022-11-30 at 11:47 +0000, Tvrtko Ursulin wrote:
> 
> 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.

oh, indeed!
So, we should probably go with Paul's proposal:
https://lists.freedesktop.org/archives/intel-gfx/2022-November/311569.html
> 
> $ 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.


Ouch! Everything else here comes from the pci's pm_runtime.
Probably our bad decision was to add rc6 to it.
But we do need to stick to that.


> 
> 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