From: Jani Nikula <jani.nikula@linux.intel.com>
To: Ville Syrjala <ville.syrjala@linux.intel.com>,
intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 10/13] drm/i915: Polish pre-skl primary plane registers
Date: Mon, 20 May 2024 16:12:53 +0300 [thread overview]
Message-ID: <87msoksk2y.fsf@intel.com> (raw)
In-Reply-To: <20240516135622.3498-11-ville.syrjala@linux.intel.com>
On Thu, 16 May 2024, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Group the pre-skl primary plane register definitions
> sensible, and toss in a few comments to indicate which
> platforms have what.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> ---
> .../gpu/drm/i915/display/i9xx_plane_regs.h | 46 ++++++++++++-------
> 1 file changed, 29 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/i9xx_plane_regs.h b/drivers/gpu/drm/i915/display/i9xx_plane_regs.h
> index 0bf2cd42bce7..929b26faf31e 100644
> --- a/drivers/gpu/drm/i915/display/i9xx_plane_regs.h
> +++ b/drivers/gpu/drm/i915/display/i9xx_plane_regs.h
> @@ -9,7 +9,10 @@
> #include "intel_display_reg_defs.h"
>
> #define _DSPAADDR_VLV 0x7017C /* vlv/chv */
> +#define DSPADDR_VLV(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAADDR_VLV)
> +
> #define _DSPACNTR 0x70180
> +#define DSPCNTR(plane) _MMIO_PIPE2(dev_priv, plane, _DSPACNTR)
> #define DISP_ENABLE REG_BIT(31)
> #define DISP_PIPE_GAMMA_ENABLE REG_BIT(30)
> #define DISP_FORMAT_MASK REG_GENMASK(29, 26)
> @@ -39,60 +42,69 @@
> #define DISP_TILED REG_BIT(10)
> #define DISP_ASYNC_FLIP REG_BIT(9) /* g4x+ */
> #define DISP_MIRROR REG_BIT(8) /* CHV pipe B */
> +
> #define _DSPAADDR 0x70184
> +#define DSPADDR(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAADDR)
> +
> +#define _DSPALINOFF 0x70184
> +#define DSPLINOFF(plane) _MMIO_PIPE2(dev_priv, plane, _DSPALINOFF)
> +
> #define _DSPASTRIDE 0x70188
> +#define DSPSTRIDE(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASTRIDE)
> +
> #define _DSPAPOS 0x7018C /* reserved */
> +#define DSPPOS(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAPOS)
> #define DISP_POS_Y_MASK REG_GENMASK(31, 16)
> #define DISP_POS_Y(y) REG_FIELD_PREP(DISP_POS_Y_MASK, (y))
> #define DISP_POS_X_MASK REG_GENMASK(15, 0)
> #define DISP_POS_X(x) REG_FIELD_PREP(DISP_POS_X_MASK, (x))
> +
> #define _DSPASIZE 0x70190
> +#define DSPSIZE(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASIZE)
> #define DISP_HEIGHT_MASK REG_GENMASK(31, 16)
> #define DISP_HEIGHT(h) REG_FIELD_PREP(DISP_HEIGHT_MASK, (h))
> #define DISP_WIDTH_MASK REG_GENMASK(15, 0)
> #define DISP_WIDTH(w) REG_FIELD_PREP(DISP_WIDTH_MASK, (w))
> +
> #define _DSPASURF 0x7019C /* 965+ only */
> +#define DSPSURF(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASURF)
> #define DISP_ADDR_MASK REG_GENMASK(31, 12)
> +
> #define _DSPATILEOFF 0x701A4 /* 965+ only */
> +#define DSPTILEOFF(plane) _MMIO_PIPE2(dev_priv, plane, _DSPATILEOFF)
> #define DISP_OFFSET_Y_MASK REG_GENMASK(31, 16)
> #define DISP_OFFSET_Y(y) REG_FIELD_PREP(DISP_OFFSET_Y_MASK, (y))
> #define DISP_OFFSET_X_MASK REG_GENMASK(15, 0)
> #define DISP_OFFSET_X(x) REG_FIELD_PREP(DISP_OFFSET_X_MASK, (x))
> +
> #define _DSPAOFFSET 0x701A4 /* HSW */
> +#define DSPOFFSET(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAOFFSET)
> +
> #define _DSPASURFLIVE 0x701AC
> +#define DSPSURFLIVE(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASURFLIVE)
> +
> #define _DSPAGAMC 0x701E0
> -
> -#define DSPADDR_VLV(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAADDR_VLV)
> -#define DSPCNTR(plane) _MMIO_PIPE2(dev_priv, plane, _DSPACNTR)
> -#define DSPADDR(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAADDR)
> -#define DSPSTRIDE(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASTRIDE)
> -#define DSPPOS(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAPOS)
> -#define DSPSIZE(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASIZE)
> -#define DSPSURF(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASURF)
> -#define DSPTILEOFF(plane) _MMIO_PIPE2(dev_priv, plane, _DSPATILEOFF)
> -#define DSPLINOFF(plane) DSPADDR(plane)
> -#define DSPOFFSET(plane) _MMIO_PIPE2(dev_priv, plane, _DSPAOFFSET)
> -#define DSPSURFLIVE(plane) _MMIO_PIPE2(dev_priv, plane, _DSPASURFLIVE)
> -#define DSPGAMC(plane, i) _MMIO_PIPE2(dev_priv, plane, _DSPAGAMC + (5 - (i)) * 4) /* plane C only, 6 x u0.8 */
> +#define DSPGAMC(plane, i) _MMIO_PIPE2(dev_priv, plane, _DSPAGAMC + (5 - (i)) * 4) /* plane C only, 6 x u0.8 */
>
> /* CHV pipe B primary plane */
> #define _PRIMPOS_A 0x60a08
> +#define PRIMPOS(plane) _MMIO_TRANS2(dev_priv, plane, _PRIMPOS_A)
> #define PRIM_POS_Y_MASK REG_GENMASK(31, 16)
> #define PRIM_POS_Y(y) REG_FIELD_PREP(PRIM_POS_Y_MASK, (y))
> #define PRIM_POS_X_MASK REG_GENMASK(15, 0)
> #define PRIM_POS_X(x) REG_FIELD_PREP(PRIM_POS_X_MASK, (x))
> +
> #define _PRIMSIZE_A 0x60a0c
> +#define PRIMSIZE(plane) _MMIO_TRANS2(dev_priv, plane, _PRIMSIZE_A)
> #define PRIM_HEIGHT_MASK REG_GENMASK(31, 16)
> #define PRIM_HEIGHT(h) REG_FIELD_PREP(PRIM_HEIGHT_MASK, (h))
> #define PRIM_WIDTH_MASK REG_GENMASK(15, 0)
> #define PRIM_WIDTH(w) REG_FIELD_PREP(PRIM_WIDTH_MASK, (w))
> +
> #define _PRIMCNSTALPHA_A 0x60a10
> +#define PRIMCNSTALPHA(plane) _MMIO_TRANS2(dev_priv, plane, _PRIMCNSTALPHA_A)
> #define PRIM_CONST_ALPHA_ENABLE REG_BIT(31)
> #define PRIM_CONST_ALPHA_MASK REG_GENMASK(7, 0)
> #define PRIM_CONST_ALPHA(alpha) REG_FIELD_PREP(PRIM_CONST_ALPHA_MASK, (alpha))
>
> -#define PRIMPOS(plane) _MMIO_TRANS2(dev_priv, plane, _PRIMPOS_A)
> -#define PRIMSIZE(plane) _MMIO_TRANS2(dev_priv, plane, _PRIMSIZE_A)
> -#define PRIMCNSTALPHA(plane) _MMIO_TRANS2(dev_priv, plane, _PRIMCNSTALPHA_A)
> -
> #endif /* __I9XX_PLANE_REGS_H__ */
--
Jani Nikula, Intel
next prev parent reply other threads:[~2024-05-20 13:13 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-16 13:56 [PATCH 00/13] drm/i915: Plane register cleanups Ville Syrjala
2024-05-16 13:56 ` [PATCH 01/13] drm/i915: Add skl+ plane name aliases to enum plane_id Ville Syrjala
2024-05-17 15:33 ` Jani Nikula
2024-05-17 15:55 ` Ville Syrjälä
2024-05-17 17:12 ` [PATCH v2 " Ville Syrjala
2024-05-20 8:56 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 02/13] drm/i915: Clean up the cursor register defines Ville Syrjala
2024-05-20 9:10 ` Jani Nikula
2024-05-20 16:23 ` Ville Syrjälä
2024-05-20 16:34 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 03/13] drm/i915: Add separate define for SEL_FETCH_CUR_CTL() Ville Syrjala
2024-05-20 9:27 ` Jani Nikula
2024-05-20 17:08 ` Ville Syrjälä
2024-05-20 17:14 ` [PATCH v2 " Ville Syrjala
2024-05-16 13:56 ` [PATCH 04/13] drm/i915: Simplify PIPESRC_ERLY_TPT definition Ville Syrjala
2024-05-20 9:35 ` Jani Nikula
2024-05-20 9:37 ` Jani Nikula
2024-05-20 9:56 ` Hogander, Jouni
2024-05-16 13:56 ` [PATCH 05/13] drm/i915: Rename selective fetch plane registers Ville Syrjala
2024-05-20 9:39 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 06/13] drm/i915: Define SEL_FETCH_PLANE registers via PICK_EVEN_2RANGES() Ville Syrjala
2024-05-23 9:15 ` Jani Nikula
2024-05-23 12:06 ` Ville Syrjälä
2024-05-16 13:56 ` [PATCH 07/13] drm/i915: Add separate defines for cursor WM/DDB register bits Ville Syrjala
2024-05-20 13:24 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 08/13] drm/i915: Move PIPEGCMAX to intel_color_regs.h Ville Syrjala
2024-05-20 13:07 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 09/13] drm/i915: Extract i9xx_plane_regs.h Ville Syrjala
2024-05-20 13:09 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 10/13] drm/i915: Polish pre-skl primary plane registers Ville Syrjala
2024-05-20 13:12 ` Jani Nikula [this message]
2024-05-16 13:56 ` [PATCH 11/13] drm/i915: Document a few pre-skl primary plane platform dependencies Ville Syrjala
2024-05-20 13:16 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 12/13] drm/i915: Polish sprite plane register definitions Ville Syrjala
2024-05-20 13:17 ` Jani Nikula
2024-05-20 13:18 ` Jani Nikula
2024-05-16 13:56 ` [PATCH 13/13] drm/i915: Document which platforms use which sprite registers Ville Syrjala
2024-05-20 13:18 ` Jani Nikula
2024-05-16 14:36 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Plane register cleanups Patchwork
2024-05-16 14:36 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-05-16 18:21 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-05-17 18:07 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Plane register cleanups (rev2) Patchwork
2024-05-17 18:08 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-05-17 18:26 ` ✓ Fi.CI.BAT: success " Patchwork
2024-05-18 5:46 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-05-20 18:08 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Plane register cleanups (rev3) Patchwork
2024-05-20 18:08 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-05-20 18:20 ` ✓ Fi.CI.BAT: success " Patchwork
2024-05-21 5:29 ` ✗ Fi.CI.IGT: failure " 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=87msoksk2y.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.