[PATCH 18/18] drm/i915: Suck snps/cx0 PLL states into dpll_hw_state
Jani Nikula
jani.nikula at linux.intel.com
Mon Apr 15 14:26:11 UTC 2024
On Fri, 12 Apr 2024, Ville Syrjala <ville.syrjala at linux.intel.com> wrote:
> diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.h b/drivers/gpu/drm/i915/display/intel_dpll_mgr.h
> index d0ec6196d398..f09e513ce05b 100644
> --- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.h
> +++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.h
> @@ -229,6 +229,43 @@ struct icl_dpll_hw_state {
> u32 mg_pll_tdc_coldst_bias_mask;
> };
>
> +struct intel_mpllb_state {
> + u32 clock; /* in KHz */
> + u32 ref_control;
> + u32 mpllb_cp;
> + u32 mpllb_div;
> + u32 mpllb_div2;
> + u32 mpllb_fracn1;
> + u32 mpllb_fracn2;
> + u32 mpllb_sscen;
> + u32 mpllb_sscstep;
> +};
> +
> +struct intel_c10pll_state {
> + u32 clock; /* in KHz */
> + u8 tx;
> + u8 cmn;
> + u8 pll[20];
> +};
> +
> +struct intel_c20pll_state {
> + u32 clock; /* in kHz */
> + u16 tx[3];
> + u16 cmn[4];
> + union {
> + u16 mplla[10];
> + u16 mpllb[11];
> + };
> +};
> +
> +struct intel_cx0pll_state {
> + union {
> + struct intel_c10pll_state c10;
> + struct intel_c20pll_state c20;
> + };
> + bool ssc_enabled;
> +};
IMO struct intel_cx0pll_state should be dropped in follow-up, with
ssc_enabled moved to both intel_c10pll_state and intel_c20pll_state...
> +
> struct intel_dpll_hw_state {
> union {
> struct i9xx_dpll_hw_state i9xx;
> @@ -236,6 +273,8 @@ struct intel_dpll_hw_state {
> struct skl_dpll_hw_state skl;
> struct bxt_dpll_hw_state bxt;
> struct icl_dpll_hw_state icl;
> + struct intel_mpllb_state mpllb;
> + struct intel_cx0pll_state cx0pll;
...and both added here i.e. the union at a step higher.
BR,
Jani.
> };
> };
>
--
Jani Nikula, Intel
More information about the Intel-gfx
mailing list