Message ID | 20200220120741.6917-4-stanislav.lisovskiy@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Refactor Gen11+ SAGV support | expand |
On Thu, 20 Feb 2020, Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> wrote: > We might be willing to call intel_atomic_get_old_global_obj_state > and intel_atomic_get_new_global_obj_state right away, however > those are not initializing global obj state as > intel_atomic_get_global_obj_state does. > Extracted initializing part to separate function and now using this > also in intel_atomic_get_old_global_obj_state and intel_atomic_get_new_global_obj_state > > v2: - Fixed typo in function call > > Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> > --- > drivers/gpu/drm/i915/display/intel_bw.c | 28 ++++++++++++++++++++++++- > drivers/gpu/drm/i915/display/intel_bw.h | 9 ++++++++ > 2 files changed, 36 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c > index 58b264bc318d..ff57277e8880 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.c > +++ b/drivers/gpu/drm/i915/display/intel_bw.c > @@ -374,7 +374,33 @@ static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv, > return data_rate; > } > > -static struct intel_bw_state * > +struct intel_bw_state * > +intel_atomic_get_old_bw_state(struct intel_atomic_state *state) > +{ > + struct drm_i915_private *dev_priv = to_i915(state->base.dev); > + struct intel_global_state *bw_state; > + > + bw_state = intel_atomic_get_old_global_obj_state(state, &dev_priv->bw_obj); > + if (IS_ERR(bw_state)) > + return ERR_CAST(bw_state); > + > + return to_intel_bw_state(bw_state); > +} > + > +struct intel_bw_state * > +intel_atomic_get_new_bw_state(struct intel_atomic_state *state) > +{ > + struct drm_i915_private *dev_priv = to_i915(state->base.dev); > + struct intel_global_state *bw_state; > + bw_state = intel_atomic_get_new_global_obj_state(state, &dev_priv->bw_obj); > + > + if (IS_ERR(bw_state)) > + return ERR_CAST(bw_state); > + > + return to_intel_bw_state(bw_state); > +} > + > +struct intel_bw_state * > intel_atomic_get_bw_state(struct intel_atomic_state *state) > { > struct drm_i915_private *dev_priv = to_i915(state->base.dev); > diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h > index a8aa7624c5aa..ac004d6f4276 100644 > --- a/drivers/gpu/drm/i915/display/intel_bw.h > +++ b/drivers/gpu/drm/i915/display/intel_bw.h > @@ -24,6 +24,15 @@ struct intel_bw_state { > > #define to_intel_bw_state(x) container_of((x), struct intel_bw_state, base) > > +struct intel_bw_state * > +intel_atomic_get_old_bw_state(struct intel_atomic_state *state); > + > +struct intel_bw_state * > +intel_atomic_get_new_bw_state(struct intel_atomic_state *state); > + > +struct intel_bw_state * > +intel_atomic_get_bw_state(struct intel_atomic_state *state); > + I'm trying to promote a convention that a module foo_bar.[ch] would export functions prefixed foo_bar_. Here, intel_bw_* like below. BR, Jani. > void intel_bw_init_hw(struct drm_i915_private *dev_priv); > int intel_bw_init(struct drm_i915_private *dev_priv); > int intel_bw_atomic_check(struct intel_atomic_state *state);
On Thu, 2020-02-20 at 14:40 +0200, Jani Nikula wrote: > On Thu, 20 Feb 2020, Stanislav Lisovskiy < > stanislav.lisovskiy@intel.com> wrote: > > We might be willing to call intel_atomic_get_old_global_obj_state > > and intel_atomic_get_new_global_obj_state right away, however > > those are not initializing global obj state as > > intel_atomic_get_global_obj_state does. > > Extracted initializing part to separate function and now using this > > also in intel_atomic_get_old_global_obj_state and > > intel_atomic_get_new_global_obj_state > > > > v2: - Fixed typo in function call > > > > Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> > > --- > > drivers/gpu/drm/i915/display/intel_bw.c | 28 > > ++++++++++++++++++++++++- > > drivers/gpu/drm/i915/display/intel_bw.h | 9 ++++++++ > > 2 files changed, 36 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.c > > b/drivers/gpu/drm/i915/display/intel_bw.c > > index 58b264bc318d..ff57277e8880 100644 > > --- a/drivers/gpu/drm/i915/display/intel_bw.c > > +++ b/drivers/gpu/drm/i915/display/intel_bw.c > > @@ -374,7 +374,33 @@ static unsigned int intel_bw_data_rate(struct > > drm_i915_private *dev_priv, > > return data_rate; > > } > > > > -static struct intel_bw_state * > > +struct intel_bw_state * > > +intel_atomic_get_old_bw_state(struct intel_atomic_state *state) > > +{ > > + struct drm_i915_private *dev_priv = to_i915(state->base.dev); > > + struct intel_global_state *bw_state; > > + > > + bw_state = intel_atomic_get_old_global_obj_state(state, > > &dev_priv->bw_obj); > > + if (IS_ERR(bw_state)) > > + return ERR_CAST(bw_state); > > + > > + return to_intel_bw_state(bw_state); > > +} > > + > > +struct intel_bw_state * > > +intel_atomic_get_new_bw_state(struct intel_atomic_state *state) > > +{ > > + struct drm_i915_private *dev_priv = to_i915(state->base.dev); > > + struct intel_global_state *bw_state; > > + bw_state = intel_atomic_get_new_global_obj_state(state, > > &dev_priv->bw_obj); > > + > > + if (IS_ERR(bw_state)) > > + return ERR_CAST(bw_state); > > + > > + return to_intel_bw_state(bw_state); > > +} > > + > > +struct intel_bw_state * > > intel_atomic_get_bw_state(struct intel_atomic_state *state) > > { > > struct drm_i915_private *dev_priv = to_i915(state->base.dev); > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.h > > b/drivers/gpu/drm/i915/display/intel_bw.h > > index a8aa7624c5aa..ac004d6f4276 100644 > > --- a/drivers/gpu/drm/i915/display/intel_bw.h > > +++ b/drivers/gpu/drm/i915/display/intel_bw.h > > @@ -24,6 +24,15 @@ struct intel_bw_state { > > > > #define to_intel_bw_state(x) container_of((x), struct > > intel_bw_state, base) > > > > +struct intel_bw_state * > > +intel_atomic_get_old_bw_state(struct intel_atomic_state *state); > > + > > +struct intel_bw_state * > > +intel_atomic_get_new_bw_state(struct intel_atomic_state *state); > > + > > +struct intel_bw_state * > > +intel_atomic_get_bw_state(struct intel_atomic_state *state); > > + > > I'm trying to promote a convention that a module foo_bar.[ch] would > export functions prefixed foo_bar_. Here, intel_bw_* like below. I'm fine with that. However most of the functions in this file have intel_atomic_* prefix, so if I now follow this convention it won't be consistent with current naming in the file. Anyway if this is now mandatory, will change it. Just will wait now first if CI doesn't blow up with this series, as I haven't rebased it for a while.. Stan > > BR, > Jani. > > > > void intel_bw_init_hw(struct drm_i915_private *dev_priv); > > int intel_bw_init(struct drm_i915_private *dev_priv); > > int intel_bw_atomic_check(struct intel_atomic_state *state); > >
On Thu, 2020-02-20 at 15:11 +0200, stanislav.lisovskiy@intel.com wrote: > On Thu, 2020-02-20 at 14:40 +0200, Jani Nikula wrote: > > On Thu, 20 Feb 2020, Stanislav Lisovskiy < > > stanislav.lisovskiy@intel.com> wrote: > > > We might be willing to call intel_atomic_get_old_global_obj_state > > > and intel_atomic_get_new_global_obj_state right away, however > > > those are not initializing global obj state as > > > intel_atomic_get_global_obj_state does. > > > Extracted initializing part to separate function and now using > > > this > > > also in intel_atomic_get_old_global_obj_state and > > > intel_atomic_get_new_global_obj_state > > > > > > v2: - Fixed typo in function call > > > > > > Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com > > > > > > > --- > > > drivers/gpu/drm/i915/display/intel_bw.c | 28 > > > ++++++++++++++++++++++++- > > > drivers/gpu/drm/i915/display/intel_bw.h | 9 ++++++++ > > > 2 files changed, 36 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.c > > > b/drivers/gpu/drm/i915/display/intel_bw.c > > > index 58b264bc318d..ff57277e8880 100644 > > > --- a/drivers/gpu/drm/i915/display/intel_bw.c > > > +++ b/drivers/gpu/drm/i915/display/intel_bw.c > > > @@ -374,7 +374,33 @@ static unsigned int > > > intel_bw_data_rate(struct > > > drm_i915_private *dev_priv, > > > return data_rate; > > > } > > > > > > -static struct intel_bw_state * > > > +struct intel_bw_state * > > > +intel_atomic_get_old_bw_state(struct intel_atomic_state *state) > > > +{ > > > + struct drm_i915_private *dev_priv = to_i915(state->base.dev); > > > + struct intel_global_state *bw_state; > > > + > > > + bw_state = intel_atomic_get_old_global_obj_state(state, > > > &dev_priv->bw_obj); > > > + if (IS_ERR(bw_state)) > > > + return ERR_CAST(bw_state); > > > + > > > + return to_intel_bw_state(bw_state); > > > +} > > > + > > > +struct intel_bw_state * > > > +intel_atomic_get_new_bw_state(struct intel_atomic_state *state) > > > +{ > > > + struct drm_i915_private *dev_priv = to_i915(state->base.dev); > > > + struct intel_global_state *bw_state; > > > + bw_state = intel_atomic_get_new_global_obj_state(state, > > > &dev_priv->bw_obj); > > > + > > > + if (IS_ERR(bw_state)) > > > + return ERR_CAST(bw_state); > > > + > > > + return to_intel_bw_state(bw_state); > > > +} > > > + > > > +struct intel_bw_state * > > > intel_atomic_get_bw_state(struct intel_atomic_state *state) > > > { > > > struct drm_i915_private *dev_priv = to_i915(state->base.dev); > > > diff --git a/drivers/gpu/drm/i915/display/intel_bw.h > > > b/drivers/gpu/drm/i915/display/intel_bw.h > > > index a8aa7624c5aa..ac004d6f4276 100644 > > > --- a/drivers/gpu/drm/i915/display/intel_bw.h > > > +++ b/drivers/gpu/drm/i915/display/intel_bw.h > > > @@ -24,6 +24,15 @@ struct intel_bw_state { > > > > > > #define to_intel_bw_state(x) container_of((x), struct > > > intel_bw_state, base) > > > > > > +struct intel_bw_state * > > > +intel_atomic_get_old_bw_state(struct intel_atomic_state *state); > > > + > > > +struct intel_bw_state * > > > +intel_atomic_get_new_bw_state(struct intel_atomic_state *state); > > > + > > > +struct intel_bw_state * > > > +intel_atomic_get_bw_state(struct intel_atomic_state *state); > > > + > > > > I'm trying to promote a convention that a module foo_bar.[ch] would > > export functions prefixed foo_bar_. Here, intel_bw_* like below. > > I'm fine with that. However most of the functions in this file have > intel_atomic_* prefix, so if I now follow this convention it won't be > consistent with current naming in the file. Actually, I was wrong. Was looking into intel_global_state.c instead of intel_bw.c. Yes, that totally makes sense. Stan > > Anyway if this is now mandatory, will change it. Just will wait now > first if CI doesn't blow up with this series, as I haven't rebased it > for a while.. > > Stan > > > > > BR, > > Jani. > > > > > > > void intel_bw_init_hw(struct drm_i915_private *dev_priv); > > > int intel_bw_init(struct drm_i915_private *dev_priv); > > > int intel_bw_atomic_check(struct intel_atomic_state *state); > > > >
diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c index 58b264bc318d..ff57277e8880 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.c +++ b/drivers/gpu/drm/i915/display/intel_bw.c @@ -374,7 +374,33 @@ static unsigned int intel_bw_data_rate(struct drm_i915_private *dev_priv, return data_rate; } -static struct intel_bw_state * +struct intel_bw_state * +intel_atomic_get_old_bw_state(struct intel_atomic_state *state) +{ + struct drm_i915_private *dev_priv = to_i915(state->base.dev); + struct intel_global_state *bw_state; + + bw_state = intel_atomic_get_old_global_obj_state(state, &dev_priv->bw_obj); + if (IS_ERR(bw_state)) + return ERR_CAST(bw_state); + + return to_intel_bw_state(bw_state); +} + +struct intel_bw_state * +intel_atomic_get_new_bw_state(struct intel_atomic_state *state) +{ + struct drm_i915_private *dev_priv = to_i915(state->base.dev); + struct intel_global_state *bw_state; + bw_state = intel_atomic_get_new_global_obj_state(state, &dev_priv->bw_obj); + + if (IS_ERR(bw_state)) + return ERR_CAST(bw_state); + + return to_intel_bw_state(bw_state); +} + +struct intel_bw_state * intel_atomic_get_bw_state(struct intel_atomic_state *state) { struct drm_i915_private *dev_priv = to_i915(state->base.dev); diff --git a/drivers/gpu/drm/i915/display/intel_bw.h b/drivers/gpu/drm/i915/display/intel_bw.h index a8aa7624c5aa..ac004d6f4276 100644 --- a/drivers/gpu/drm/i915/display/intel_bw.h +++ b/drivers/gpu/drm/i915/display/intel_bw.h @@ -24,6 +24,15 @@ struct intel_bw_state { #define to_intel_bw_state(x) container_of((x), struct intel_bw_state, base) +struct intel_bw_state * +intel_atomic_get_old_bw_state(struct intel_atomic_state *state); + +struct intel_bw_state * +intel_atomic_get_new_bw_state(struct intel_atomic_state *state); + +struct intel_bw_state * +intel_atomic_get_bw_state(struct intel_atomic_state *state); + void intel_bw_init_hw(struct drm_i915_private *dev_priv); int intel_bw_init(struct drm_i915_private *dev_priv); int intel_bw_atomic_check(struct intel_atomic_state *state);
We might be willing to call intel_atomic_get_old_global_obj_state and intel_atomic_get_new_global_obj_state right away, however those are not initializing global obj state as intel_atomic_get_global_obj_state does. Extracted initializing part to separate function and now using this also in intel_atomic_get_old_global_obj_state and intel_atomic_get_new_global_obj_state v2: - Fixed typo in function call Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com> --- drivers/gpu/drm/i915/display/intel_bw.c | 28 ++++++++++++++++++++++++- drivers/gpu/drm/i915/display/intel_bw.h | 9 ++++++++ 2 files changed, 36 insertions(+), 1 deletion(-)