From: Jani Nikula <jani.nikula@linux.intel.com>
To: Ville Syrjala <ville.syrjala@linux.intel.com>,
intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH 4/9] drm/i915: Clean up PIPECONF bit defines
Date: Wed, 26 Jan 2022 16:31:00 +0200 [thread overview]
Message-ID: <87lez2zhzv.fsf@intel.com> (raw)
In-Reply-To: <20211112193813.8224-5-ville.syrjala@linux.intel.com>
On Fri, 12 Nov 2021, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Use REG_BIT() & co. for PIPECONF bits, and adjust the
> naming of various bits to be more consistent.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/icl_dsi.c | 4 +-
> drivers/gpu/drm/i915/display/intel_display.c | 60 +++++-----
> .../gpu/drm/i915/display/intel_pch_display.c | 7 +-
> drivers/gpu/drm/i915/gvt/display.c | 4 +-
> drivers/gpu/drm/i915/gvt/handlers.c | 4 +-
> drivers/gpu/drm/i915/i915_reg.h | 108 +++++++++---------
> 6 files changed, 89 insertions(+), 98 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c b/drivers/gpu/drm/i915/display/icl_dsi.c
> index c05fb861f10c..0f6587bef106 100644
> --- a/drivers/gpu/drm/i915/display/icl_dsi.c
> +++ b/drivers/gpu/drm/i915/display/icl_dsi.c
> @@ -1048,7 +1048,7 @@ static void gen11_dsi_enable_transcoder(struct intel_encoder *encoder)
>
> /* wait for transcoder to be enabled */
> if (intel_de_wait_for_set(dev_priv, PIPECONF(dsi_trans),
> - I965_PIPECONF_ACTIVE, 10))
> + PIPECONF_STATE_ENABLE, 10))
> drm_err(&dev_priv->drm,
> "DSI transcoder not enabled\n");
> }
> @@ -1317,7 +1317,7 @@ static void gen11_dsi_disable_transcoder(struct intel_encoder *encoder)
>
> /* wait for transcoder to be disabled */
> if (intel_de_wait_for_clear(dev_priv, PIPECONF(dsi_trans),
> - I965_PIPECONF_ACTIVE, 50))
> + PIPECONF_STATE_ENABLE, 50))
> drm_err(&dev_priv->drm,
> "DSI trancoder not disabled\n");
> }
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index e293241450b1..4e29032b29d6 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -386,13 +386,11 @@ intel_wait_for_pipe_off(const struct intel_crtc_state *old_crtc_state)
>
> if (DISPLAY_VER(dev_priv) >= 4) {
> enum transcoder cpu_transcoder = old_crtc_state->cpu_transcoder;
> - i915_reg_t reg = PIPECONF(cpu_transcoder);
>
> /* Wait for the Pipe State to go off */
> - if (intel_de_wait_for_clear(dev_priv, reg,
> - I965_PIPECONF_ACTIVE, 100))
> - drm_WARN(&dev_priv->drm, 1,
> - "pipe_off wait timed out\n");
> + if (intel_de_wait_for_clear(dev_priv, PIPECONF(cpu_transcoder),
> + PIPECONF_STATE_ENABLE, 100))
> + drm_WARN(&dev_priv->drm, 1, "pipe_off wait timed out\n");
> } else {
> intel_wait_for_pipe_scanline_stopped(crtc);
> }
> @@ -3338,13 +3336,13 @@ static void i9xx_set_pipeconf(const struct intel_crtc_state *crtc_state)
>
> switch (crtc_state->pipe_bpp) {
> case 18:
> - pipeconf |= PIPECONF_6BPC;
> + pipeconf |= PIPECONF_BPC_6;
> break;
> case 24:
> - pipeconf |= PIPECONF_8BPC;
> + pipeconf |= PIPECONF_BPC_8;
> break;
> case 30:
> - pipeconf |= PIPECONF_10BPC;
> + pipeconf |= PIPECONF_BPC_10;
> break;
> default:
> /* Case prevented by intel_choose_pipe_bpp_dither. */
> @@ -3359,7 +3357,7 @@ static void i9xx_set_pipeconf(const struct intel_crtc_state *crtc_state)
> else
> pipeconf |= PIPECONF_INTERLACE_W_SYNC_SHIFT;
> } else {
> - pipeconf |= PIPECONF_PROGRESSIVE;
> + pipeconf |= PIPECONF_INTERLACE_PROGRESSIVE;
> }
>
> if ((IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) &&
> @@ -3537,16 +3535,17 @@ static bool i9xx_get_pipe_config(struct intel_crtc *crtc,
> if (IS_G4X(dev_priv) || IS_VALLEYVIEW(dev_priv) ||
> IS_CHERRYVIEW(dev_priv)) {
> switch (tmp & PIPECONF_BPC_MASK) {
> - case PIPECONF_6BPC:
> + case PIPECONF_BPC_6:
> pipe_config->pipe_bpp = 18;
> break;
> - case PIPECONF_8BPC:
> + case PIPECONF_BPC_8:
> pipe_config->pipe_bpp = 24;
> break;
> - case PIPECONF_10BPC:
> + case PIPECONF_BPC_10:
> pipe_config->pipe_bpp = 30;
> break;
> default:
> + MISSING_CASE(tmp);
> break;
> }
> }
> @@ -3555,8 +3554,7 @@ static bool i9xx_get_pipe_config(struct intel_crtc *crtc,
> (tmp & PIPECONF_COLOR_RANGE_SELECT))
> pipe_config->limited_color_range = true;
>
> - pipe_config->gamma_mode = (tmp & PIPECONF_GAMMA_MODE_MASK_I9XX) >>
> - PIPECONF_GAMMA_MODE_SHIFT;
> + pipe_config->gamma_mode = REG_FIELD_GET(PIPECONF_GAMMA_MODE_MASK_I9XX, tmp);
>
> if (IS_CHERRYVIEW(dev_priv))
> pipe_config->cgm_mode = intel_de_read(dev_priv,
> @@ -3643,16 +3641,16 @@ static void ilk_set_pipeconf(const struct intel_crtc_state *crtc_state)
>
> switch (crtc_state->pipe_bpp) {
> case 18:
> - val |= PIPECONF_6BPC;
> + val |= PIPECONF_BPC_6;
> break;
> case 24:
> - val |= PIPECONF_8BPC;
> + val |= PIPECONF_BPC_8;
> break;
> case 30:
> - val |= PIPECONF_10BPC;
> + val |= PIPECONF_BPC_10;
> break;
> case 36:
> - val |= PIPECONF_12BPC;
> + val |= PIPECONF_BPC_12;
> break;
> default:
> /* Case prevented by intel_choose_pipe_bpp_dither. */
> @@ -3660,12 +3658,12 @@ static void ilk_set_pipeconf(const struct intel_crtc_state *crtc_state)
> }
>
> if (crtc_state->dither)
> - val |= (PIPECONF_DITHER_EN | PIPECONF_DITHER_TYPE_SP);
> + val |= PIPECONF_DITHER_EN | PIPECONF_DITHER_TYPE_SP;
>
> if (crtc_state->hw.adjusted_mode.flags & DRM_MODE_FLAG_INTERLACE)
> - val |= PIPECONF_INTERLACED_ILK;
> + val |= PIPECONF_INTERLACE_IF_ID_ILK;
> else
> - val |= PIPECONF_PROGRESSIVE;
> + val |= PIPECONF_INTERLACE_PF_PD_ILK;
>
> /*
> * This would end up with an odd purple hue over
> @@ -3697,12 +3695,12 @@ static void hsw_set_transconf(const struct intel_crtc_state *crtc_state)
> u32 val = 0;
>
> if (IS_HASWELL(dev_priv) && crtc_state->dither)
> - val |= (PIPECONF_DITHER_EN | PIPECONF_DITHER_TYPE_SP);
> + val |= PIPECONF_DITHER_EN | PIPECONF_DITHER_TYPE_SP;
>
> if (crtc_state->hw.adjusted_mode.flags & DRM_MODE_FLAG_INTERLACE)
> - val |= PIPECONF_INTERLACED_ILK;
> + val |= PIPECONF_INTERLACE_IF_ID_ILK;
> else
> - val |= PIPECONF_PROGRESSIVE;
> + val |= PIPECONF_INTERLACE_PF_PD_ILK;
>
> if (IS_HASWELL(dev_priv) &&
> crtc_state->output_format != INTEL_OUTPUT_FORMAT_RGB)
> @@ -3996,16 +3994,16 @@ static bool ilk_get_pipe_config(struct intel_crtc *crtc,
> goto out;
>
> switch (tmp & PIPECONF_BPC_MASK) {
> - case PIPECONF_6BPC:
> + case PIPECONF_BPC_6:
> pipe_config->pipe_bpp = 18;
> break;
> - case PIPECONF_8BPC:
> + case PIPECONF_BPC_8:
> pipe_config->pipe_bpp = 24;
> break;
> - case PIPECONF_10BPC:
> + case PIPECONF_BPC_10:
> pipe_config->pipe_bpp = 30;
> break;
> - case PIPECONF_12BPC:
> + case PIPECONF_BPC_12:
> pipe_config->pipe_bpp = 36;
> break;
> default:
> @@ -4025,8 +4023,7 @@ static bool ilk_get_pipe_config(struct intel_crtc *crtc,
> break;
> }
>
> - pipe_config->gamma_mode = (tmp & PIPECONF_GAMMA_MODE_MASK_ILK) >>
> - PIPECONF_GAMMA_MODE_SHIFT;
> + pipe_config->gamma_mode = REG_FIELD_GET(PIPECONF_GAMMA_MODE_MASK_ILK, tmp);
>
> pipe_config->csc_mode = intel_de_read(dev_priv,
> PIPE_CSC_MODE(crtc->pipe));
> @@ -9990,8 +9987,7 @@ void i830_enable_pipe(struct drm_i915_private *dev_priv, enum pipe pipe)
> udelay(150); /* wait for warmup */
> }
>
> - intel_de_write(dev_priv, PIPECONF(pipe),
> - PIPECONF_ENABLE | PIPECONF_PROGRESSIVE);
> + intel_de_write(dev_priv, PIPECONF(pipe), PIPECONF_ENABLE);
> intel_de_posting_read(dev_priv, PIPECONF(pipe));
>
> intel_wait_for_pipe_scanline_moving(crtc);
> diff --git a/drivers/gpu/drm/i915/display/intel_pch_display.c b/drivers/gpu/drm/i915/display/intel_pch_display.c
> index a55c4bfacd0d..81ab761251ae 100644
> --- a/drivers/gpu/drm/i915/display/intel_pch_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_pch_display.c
> @@ -157,13 +157,13 @@ static void ilk_enable_pch_transcoder(const struct intel_crtc_state *crtc_state)
> */
> val &= ~PIPECONF_BPC_MASK;
> if (intel_crtc_has_type(crtc_state, INTEL_OUTPUT_HDMI))
> - val |= PIPECONF_8BPC;
> + val |= PIPECONF_BPC_8;
> else
> val |= pipeconf_val & PIPECONF_BPC_MASK;
> }
>
> val &= ~TRANS_INTERLACE_MASK;
> - if ((pipeconf_val & PIPECONF_INTERLACE_MASK) == PIPECONF_INTERLACED_ILK) {
> + if ((pipeconf_val & PIPECONF_INTERLACE_MASK_ILK) == PIPECONF_INTERLACE_IF_ID_ILK) {
> if (HAS_PCH_IBX(dev_priv) &&
> intel_crtc_has_type(crtc_state, INTEL_OUTPUT_SDVO))
> val |= TRANS_LEGACY_INTERLACED_ILK;
> @@ -422,8 +422,7 @@ static void lpt_enable_pch_transcoder(struct drm_i915_private *dev_priv,
> val = TRANS_ENABLE;
> pipeconf_val = intel_de_read(dev_priv, PIPECONF(cpu_transcoder));
>
> - if ((pipeconf_val & PIPECONF_INTERLACE_MASK_HSW) ==
> - PIPECONF_INTERLACED_ILK)
> + if ((pipeconf_val & PIPECONF_INTERLACE_MASK_HSW) == PIPECONF_INTERLACE_IF_ID_ILK)
> val |= TRANS_INTERLACED;
> else
> val |= TRANS_PROGRESSIVE;
> diff --git a/drivers/gpu/drm/i915/gvt/display.c b/drivers/gpu/drm/i915/gvt/display.c
> index 034c060f89d4..b3f47b9944d6 100644
> --- a/drivers/gpu/drm/i915/gvt/display.c
> +++ b/drivers/gpu/drm/i915/gvt/display.c
> @@ -184,7 +184,7 @@ static void emulate_monitor_status_change(struct intel_vgpu *vgpu)
>
> for_each_pipe(dev_priv, pipe) {
> vgpu_vreg_t(vgpu, PIPECONF(pipe)) &=
> - ~(PIPECONF_ENABLE | I965_PIPECONF_ACTIVE);
> + ~(PIPECONF_ENABLE | PIPECONF_STATE_ENABLE);
> vgpu_vreg_t(vgpu, DSPCNTR(pipe)) &= ~DISPLAY_PLANE_ENABLE;
> vgpu_vreg_t(vgpu, SPRCTL(pipe)) &= ~SPRITE_ENABLE;
> vgpu_vreg_t(vgpu, CURCNTR(pipe)) &= ~MCURSOR_MODE;
> @@ -245,7 +245,7 @@ static void emulate_monitor_status_change(struct intel_vgpu *vgpu)
> * setup_virtual_dp_monitor.
> */
> vgpu_vreg_t(vgpu, PIPECONF(PIPE_A)) |= PIPECONF_ENABLE;
> - vgpu_vreg_t(vgpu, PIPECONF(PIPE_A)) |= I965_PIPECONF_ACTIVE;
> + vgpu_vreg_t(vgpu, PIPECONF(PIPE_A)) |= PIPECONF_STATE_ENABLE;
>
> /*
> * Golden M/N are calculated based on:
> diff --git a/drivers/gpu/drm/i915/gvt/handlers.c b/drivers/gpu/drm/i915/gvt/handlers.c
> index cde0a477fb49..a224158303b6 100644
> --- a/drivers/gpu/drm/i915/gvt/handlers.c
> +++ b/drivers/gpu/drm/i915/gvt/handlers.c
> @@ -701,11 +701,11 @@ static int pipeconf_mmio_write(struct intel_vgpu *vgpu, unsigned int offset,
> data = vgpu_vreg(vgpu, offset);
>
> if (data & PIPECONF_ENABLE) {
> - vgpu_vreg(vgpu, offset) |= I965_PIPECONF_ACTIVE;
> + vgpu_vreg(vgpu, offset) |= PIPECONF_STATE_ENABLE;
> vgpu_update_refresh_rate(vgpu);
> vgpu_update_vblank_emulation(vgpu, true);
> } else {
> - vgpu_vreg(vgpu, offset) &= ~I965_PIPECONF_ACTIVE;
> + vgpu_vreg(vgpu, offset) &= ~PIPECONF_STATE_ENABLE;
> vgpu_update_vblank_emulation(vgpu, false);
> }
> return 0;
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 8b227dabb10c..d2d5b2fa2a4a 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -6168,62 +6168,58 @@ enum {
> #define PIPEDSL_CURR_FIELD REG_BIT(31) /* ctg+ */
> #define PIPEDSL_LINE_MASK REG_GENMASK(19, 0)
> #define _PIPEACONF 0x70008
> -#define PIPECONF_ENABLE (1 << 31)
> -#define PIPECONF_DISABLE 0
> -#define PIPECONF_DOUBLE_WIDE (1 << 30)
> -#define I965_PIPECONF_ACTIVE (1 << 30)
> -#define PIPECONF_DSI_PLL_LOCKED (1 << 29) /* vlv & pipe A only */
> -#define PIPECONF_FRAME_START_DELAY_MASK (3 << 27) /* pre-hsw */
> -#define PIPECONF_FRAME_START_DELAY(x) ((x) << 27) /* pre-hsw: 0-3 */
> -#define PIPECONF_SINGLE_WIDE 0
> -#define PIPECONF_PIPE_UNLOCKED 0
> -#define PIPECONF_PIPE_LOCKED (1 << 25)
> -#define PIPECONF_FORCE_BORDER (1 << 25)
> -#define PIPECONF_GAMMA_MODE_MASK_I9XX (1 << 24) /* gmch */
> -#define PIPECONF_GAMMA_MODE_MASK_ILK (3 << 24) /* ilk-ivb */
> -#define PIPECONF_GAMMA_MODE_8BIT (0 << 24) /* gmch,ilk-ivb */
> -#define PIPECONF_GAMMA_MODE_10BIT (1 << 24) /* gmch,ilk-ivb */
> -#define PIPECONF_GAMMA_MODE_12BIT (2 << 24) /* ilk-ivb */
> -#define PIPECONF_GAMMA_MODE_SPLIT (3 << 24) /* ivb */
> -#define PIPECONF_GAMMA_MODE(x) ((x) << 24) /* pass in GAMMA_MODE_MODE_* */
> -#define PIPECONF_GAMMA_MODE_SHIFT 24
> -#define PIPECONF_INTERLACE_MASK (7 << 21)
> -#define PIPECONF_INTERLACE_MASK_HSW (3 << 21)
> -/* Note that pre-gen3 does not support interlaced display directly. Panel
> - * fitting must be disabled on pre-ilk for interlaced. */
> -#define PIPECONF_PROGRESSIVE (0 << 21)
> -#define PIPECONF_INTERLACE_W_SYNC_SHIFT_PANEL (4 << 21) /* gen4 only */
> -#define PIPECONF_INTERLACE_W_SYNC_SHIFT (5 << 21) /* gen4 only */
> -#define PIPECONF_INTERLACE_W_FIELD_INDICATION (6 << 21)
> -#define PIPECONF_INTERLACE_FIELD_0_ONLY (7 << 21) /* gen3 only */
> -/* Ironlake and later have a complete new set of values for interlaced. PFIT
> - * means panel fitter required, PF means progressive fetch, DBL means power
> - * saving pixel doubling. */
> -#define PIPECONF_PFIT_PF_INTERLACED_ILK (1 << 21)
> -#define PIPECONF_INTERLACED_ILK (3 << 21)
> -#define PIPECONF_INTERLACED_DBL_ILK (4 << 21) /* ilk/snb only */
> -#define PIPECONF_PFIT_PF_INTERLACED_DBL_ILK (5 << 21) /* ilk/snb only */
> -#define PIPECONF_INTERLACE_MODE_MASK (7 << 21)
> -#define PIPECONF_EDP_RR_MODE_SWITCH (1 << 20)
> -#define PIPECONF_CXSR_DOWNCLOCK (1 << 16)
> -#define PIPECONF_EDP_RR_MODE_SWITCH_VLV (1 << 14)
> -#define PIPECONF_COLOR_RANGE_SELECT (1 << 13)
> -#define PIPECONF_OUTPUT_COLORSPACE_MASK (3 << 11) /* ilk-ivb */
> -#define PIPECONF_OUTPUT_COLORSPACE_RGB (0 << 11) /* ilk-ivb */
> -#define PIPECONF_OUTPUT_COLORSPACE_YUV601 (1 << 11) /* ilk-ivb */
> -#define PIPECONF_OUTPUT_COLORSPACE_YUV709 (2 << 11) /* ilk-ivb */
> -#define PIPECONF_OUTPUT_COLORSPACE_YUV_HSW (1 << 11) /* hsw only */
> -#define PIPECONF_BPC_MASK (0x7 << 5)
> -#define PIPECONF_8BPC (0 << 5)
> -#define PIPECONF_10BPC (1 << 5)
> -#define PIPECONF_6BPC (2 << 5)
> -#define PIPECONF_12BPC (3 << 5)
> -#define PIPECONF_DITHER_EN (1 << 4)
> -#define PIPECONF_DITHER_TYPE_MASK (0x0000000c)
> -#define PIPECONF_DITHER_TYPE_SP (0 << 2)
> -#define PIPECONF_DITHER_TYPE_ST1 (1 << 2)
> -#define PIPECONF_DITHER_TYPE_ST2 (2 << 2)
> -#define PIPECONF_DITHER_TYPE_TEMP (3 << 2)
> +#define PIPECONF_ENABLE REG_BIT(31)
> +#define PIPECONF_DOUBLE_WIDE REG_BIT(30) /* pre-i965 */
> +#define PIPECONF_STATE_ENABLE REG_BIT(30) /* i965+ */
> +#define PIPECONF_DSI_PLL_LOCKED REG_BIT(29) /* vlv & pipe A only */
> +#define PIPECONF_FRAME_START_DELAY_MASK REG_GENMASK(28, 27) /* pre-hsw */
> +#define PIPECONF_FRAME_START_DELAY(x) REG_FIELD_PREP(PIPECONF_FRAME_START_DELAY_MASK, (x)) /* pre-hsw: 0-3 */
> +#define PIPECONF_PIPE_LOCKED REG_BIT(25)
> +#define PIPECONF_FORCE_BORDER REG_BIT(25)
> +#define PIPECONF_GAMMA_MODE_MASK_I9XX REG_BIT(24) /* gmch */
> +#define PIPECONF_GAMMA_MODE_MASK_ILK REG_GENMASK(25, 24) /* ilk-ivb */
> +#define PIPECONF_GAMMA_MODE_8BIT REG_FIELD_PREP(PIPECONF_GAMMA_MODE_MASK, 0)
> +#define PIPECONF_GAMMA_MODE_10BIT REG_FIELD_PREP(PIPECONF_GAMMA_MODE_MASK, 1)
> +#define PIPECONF_GAMMA_MODE_12BIT REG_FIELD_PREP(PIPECONF_GAMMA_MODE_MASK_ILK, 2) /* ilk-ivb */
> +#define PIPECONF_GAMMA_MODE_SPLIT REG_FIELD_PREP(PIPECONF_GAMMA_MODE_MASK_ILK, 3) /* ivb */
> +#define PIPECONF_GAMMA_MODE(x) REG_FIELD_PREP(PIPECONF_GAMMA_MODE_MASK_ILK, (x)) /* pass in GAMMA_MODE_MODE_* */
> +#define PIPECONF_INTERLACE_MASK REG_GENMASK(23, 21) /* gen3+ */
> +#define PIPECONF_INTERLACE_PROGRESSIVE REG_FIELD_PREP(PIPECONF_INTERLACE_MASK, 0)
> +#define PIPECONF_INTERLACE_W_SYNC_SHIFT_PANEL REG_FIELD_PREP(PIPECONF_INTERLACE_MASK, 4) /* gen4 only */
> +#define PIPECONF_INTERLACE_W_SYNC_SHIFT REG_FIELD_PREP(PIPECONF_INTERLACE_MASK, 5) /* gen4 only */
> +#define PIPECONF_INTERLACE_W_FIELD_INDICATION REG_FIELD_PREP(PIPECONF_INTERLACE_MASK, 6)
> +#define PIPECONF_INTERLACE_FIELD_0_ONLY REG_FIELD_PREP(PIPECONF_INTERLACE_MASK, 7) /* gen3 only */
> +/*
> + * ilk+: PF/D=progressive fetch/display, IF/D=interlaced fetch/display,
> + * DBL=power saving pixel doubling, PF-ID* requires panel fitter
> + */
> +#define PIPECONF_INTERLACE_MASK_ILK REG_GENMASK(23, 21) /* ilk+ */
> +#define PIPECONF_INTERLACE_MASK_HSW REG_GENMASK(22, 21) /* hsw+ */
> +#define PIPECONF_INTERLACE_PF_PD_ILK REG_FIELD_PREP(PIPECONF_INTERLACE_MASK_ILK, 0)
> +#define PIPECONF_INTERLACE_PF_ID_ILK REG_FIELD_PREP(PIPECONF_INTERLACE_MASK_ILK, 1)
> +#define PIPECONF_INTERLACE_IF_ID_ILK REG_FIELD_PREP(PIPECONF_INTERLACE_MASK_ILK, 3)
> +#define PIPECONF_INTERLACE_IF_ID_DBL_ILK REG_FIELD_PREP(PIPECONF_INTERLACE_MASK_ILK, 4) /* ilk/snb only */
> +#define PIPECONF_INTERLACE_PF_ID_DBL_ILK REG_FIELD_PREP(PIPECONF_INTERLACE_MASK_ILK, 5) /* ilk/snb only */
> +#define PIPECONF_EDP_RR_MODE_SWITCH REG_BIT(20)
> +#define PIPECONF_CXSR_DOWNCLOCK REG_BIT(16)
> +#define PIPECONF_EDP_RR_MODE_SWITCH_VLV REG_BIT(14)
> +#define PIPECONF_COLOR_RANGE_SELECT REG_BIT(13)
> +#define PIPECONF_OUTPUT_COLORSPACE_MASK REG_GENMASK(12, 11) /* ilk-ivb */
> +#define PIPECONF_OUTPUT_COLORSPACE_RGB REG_FIELD_PREP(PIPECONF_OUTPUT_COLORSPACE_MASK, 0) /* ilk-ivb */
> +#define PIPECONF_OUTPUT_COLORSPACE_YUV601 REG_FIELD_PREP(PIPECONF_OUTPUT_COLORSPACE_MASK, 1) /* ilk-ivb */
> +#define PIPECONF_OUTPUT_COLORSPACE_YUV709 REG_FIELD_PREP(PIPECONF_OUTPUT_COLORSPACE_MASK, 2) /* ilk-ivb */
> +#define PIPECONF_OUTPUT_COLORSPACE_YUV_HSW REG_BIT(11) /* hsw only */
> +#define PIPECONF_BPC_MASK REG_GENMASK(7, 5) /* ctg-ivb */
> +#define PIPECONF_BPC_8 REG_FIELD_PREP(PIPECONF_BPC_MASK, 0)
> +#define PIPECONF_BPC_10 REG_FIELD_PREP(PIPECONF_BPC_MASK, 1)
> +#define PIPECONF_BPC_6 REG_FIELD_PREP(PIPECONF_BPC_MASK, 2)
> +#define PIPECONF_BPC_12 REG_FIELD_PREP(PIPECONF_BPC_MASK, 3)
> +#define PIPECONF_DITHER_EN REG_BIT(4)
> +#define PIPECONF_DITHER_TYPE_MASK REG_GENMASK(3, 2)
> +#define PIPECONF_DITHER_TYPE_SP REG_FIELD_PREP(PIPECONF_DITHER_TYPE_MASK, 0)
> +#define PIPECONF_DITHER_TYPE_ST1 REG_FIELD_PREP(PIPECONF_DITHER_TYPE_MASK, 1)
> +#define PIPECONF_DITHER_TYPE_ST2 REG_FIELD_PREP(PIPECONF_DITHER_TYPE_MASK, 2)
> +#define PIPECONF_DITHER_TYPE_TEMP REG_FIELD_PREP(PIPECONF_DITHER_TYPE_MASK, 3)
> #define _PIPEASTAT 0x70024
> #define PIPE_FIFO_UNDERRUN_STATUS (1UL << 31)
> #define SPRITE1_FLIP_DONE_INT_EN_VLV (1UL << 30)
--
Jani Nikula, Intel Open Source Graphics Center
next prev parent reply other threads:[~2022-01-26 14:31 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-12 19:38 [Intel-gfx] [PATCH 0/9] drm/i915: Register define cleanups Ville Syrjala
2021-11-12 19:38 ` [Intel-gfx] [PATCH 1/9] drm/i915: Bump DSL linemask to 20 bits Ville Syrjala
2021-11-15 19:05 ` Rodrigo Vivi
2021-11-19 10:30 ` Ville Syrjälä
2022-01-26 14:34 ` Jani Nikula
2021-11-12 19:38 ` [Intel-gfx] [PATCH 2/9] drm/i915: Clean up PIPEMISC register defines Ville Syrjala
2021-11-15 19:12 ` Rodrigo Vivi
2021-11-19 10:24 ` Ville Syrjälä
2021-11-24 10:18 ` Jani Nikula
2022-01-26 14:36 ` Jani Nikula
2021-11-12 19:38 ` [Intel-gfx] [PATCH 3/9] drm/i915: Clean up SKL_BOTTOM_COLOR defines Ville Syrjala
2022-01-26 14:21 ` Jani Nikula
2021-11-12 19:38 ` [Intel-gfx] [PATCH 4/9] drm/i915: Clean up PIPECONF bit defines Ville Syrjala
2022-01-26 14:31 ` Jani Nikula [this message]
2021-11-12 19:38 ` [Intel-gfx] [PATCH 5/9] drm/i915: Clean up PCH_TRANSCONF/TRANS_DP_CTL " Ville Syrjala
2022-01-26 14:40 ` Jani Nikula
2021-11-12 19:38 ` [Intel-gfx] [PATCH 6/9] drm/i915: Clean up PIPESRC defines Ville Syrjala
2022-01-26 14:42 ` Jani Nikula
2022-01-26 21:39 ` Ville Syrjälä
2021-11-12 19:38 ` [Intel-gfx] [PATCH 7/9] drm/i915: Clean up CRC register defines Ville Syrjala
2021-11-15 19:07 ` Rodrigo Vivi
2021-11-12 19:38 ` [Intel-gfx] [PATCH 8/9] drm/i915: Clean up DPINVGTT/VLV_DPFLIPSTAT bits Ville Syrjala
2021-11-15 19:05 ` Rodrigo Vivi
2021-11-12 19:38 ` [Intel-gfx] [PATCH 9/9] drm/i915: Clean up FPGA_DBG/CLAIM_ER bits Ville Syrjala
2021-11-15 19:05 ` Rodrigo Vivi
2021-11-12 20:40 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Register define cleanups Patchwork
2021-11-12 20:46 ` [Intel-gfx] ✗ Fi.CI.DOCS: " Patchwork
2021-11-12 21:12 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-11-12 23:41 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87lez2zhzv.fsf@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=ville.syrjala@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.