On Tue, 2025-11-25 at 15:24 +0200, Jani Nikula wrote: > Under the hood, intel_wakeref_t is just struct ref_tracker *. Use the > actual underlying type both for clarity (we *are* using intel_wakeref_t > as a pointer though it doesn't look like one) and to help i915, xe and > display coexistence without custom types. > > Signed-off-by: Jani Nikula <[email protected]> > --- > drivers/gpu/drm/i915/display/intel_dp_aux.c | 2 +- > drivers/gpu/drm/i915/display/intel_pps.c | 7 +++---- > drivers/gpu/drm/i915/display/intel_pps.h | 9 ++++----- > 3 files changed, 8 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.c > b/drivers/gpu/drm/i915/display/intel_dp_aux.c > index 809799f63e32..38e03f3efac5 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_aux.c > +++ b/drivers/gpu/drm/i915/display/intel_dp_aux.c > @@ -246,7 +246,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp, > u32 aux_clock_divider; > enum intel_display_power_domain aux_domain; > intel_wakeref_t aux_wakeref; > - intel_wakeref_t pps_wakeref = NULL; > + struct ref_tracker *pps_wakeref = NULL; > int i, ret, recv_bytes; > int try, clock = 0; > u32 status; > diff --git a/drivers/gpu/drm/i915/display/intel_pps.c > b/drivers/gpu/drm/i915/display/intel_pps.c > index 34376255b85c..b217ec7aa758 100644 > --- a/drivers/gpu/drm/i915/display/intel_pps.c > +++ b/drivers/gpu/drm/i915/display/intel_pps.c > @@ -67,10 +67,10 @@ static const char *pps_name(struct intel_dp *intel_dp) > return "PPS <invalid>"; > } > > -intel_wakeref_t intel_pps_lock(struct intel_dp *intel_dp) > +struct ref_tracker *intel_pps_lock(struct intel_dp *intel_dp) > { > struct intel_display *display = to_intel_display(intel_dp); > - intel_wakeref_t wakeref; > + struct ref_tracker *wakeref; > > /* > * See vlv_pps_reset_all() why we need a power domain reference here. > @@ -81,8 +81,7 @@ intel_wakeref_t intel_pps_lock(struct intel_dp *intel_dp) > return wakeref; > } > > -intel_wakeref_t intel_pps_unlock(struct intel_dp *intel_dp, > - intel_wakeref_t wakeref) > +struct ref_tracker *intel_pps_unlock(struct intel_dp *intel_dp, struct > ref_tracker *wakeref) > { > struct intel_display *display = to_intel_display(intel_dp); > > diff --git a/drivers/gpu/drm/i915/display/intel_pps.h > b/drivers/gpu/drm/i915/display/intel_pps.h > index ad5c458ccdaf..f7c96d75be45 100644 > --- a/drivers/gpu/drm/i915/display/intel_pps.h > +++ b/drivers/gpu/drm/i915/display/intel_pps.h > @@ -8,20 +8,19 @@ > > #include <linux/types.h> > > -#include "intel_wakeref.h" > - > enum pipe; > struct intel_connector; > struct intel_crtc_state; > struct intel_display; > struct intel_dp; > struct intel_encoder; > +struct ref_tracker; > > -intel_wakeref_t intel_pps_lock(struct intel_dp *intel_dp); > -intel_wakeref_t intel_pps_unlock(struct intel_dp *intel_dp, intel_wakeref_t > wakeref); > +struct ref_tracker *intel_pps_lock(struct intel_dp *intel_dp); > +struct ref_tracker *intel_pps_unlock(struct intel_dp *intel_dp, struct > ref_tracker *wakeref); > > #define __with_intel_pps_lock(dp, wf) \ > - for (intel_wakeref_t (wf) = intel_pps_lock(dp); (wf); (wf) = > intel_pps_unlock((dp), (wf))) > + for (struct ref_tracker *(wf) = intel_pps_lock(dp); (wf); (wf) = > intel_pps_unlock((dp), (wf))) > > #define with_intel_pps_lock(dp) \ > __with_intel_pps_lock((dp), __UNIQUE_ID(wakeref))
Reviewed-by: Luca Coelho <[email protected]> -- Cheers, Luca.
