From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: Emil Velikov <emil.l.velikov@gmail.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
intel-gfx@lists.freedesktop.org, Sam Ravnborg <sam@ravnborg.org>,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v2 13/17] drm/i915: Stop using mode->private_flags
Date: Tue, 7 Apr 2020 18:20:50 +0300 [thread overview]
Message-ID: <20200407152050.GC6112@intel.com> (raw)
In-Reply-To: <20200407073847.GB3456981@phenom.ffwll.local>
On Tue, Apr 07, 2020 at 09:38:47AM +0200, Daniel Vetter wrote:
> On Fri, Apr 03, 2020 at 11:40:04PM +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > Replace the use of mode->private_flags with a truly private bitmaks
> > in our own crtc state. We also need a copy in the crtc itself so the
> > vblank code can get at it. We already have scanline_offset in there
> > for a similar reason, as well as the vblank->hwmode which is assigned
> > via drm_calc_timestamping_constants(). Fortunately we now have a
> > nice place for doing the crtc_state->crtc copy in
> > intel_crtc_update_active_timings() which gets called both for
> > modesets and init/resume readout.
> >
> > The one slightly iffy spot is the INHERITED flag which we want to
> > preserve until userspace/fb_helper does the first proper commit after
> > actually calling .detecti() on the connectors. Otherwise we don't have
> > the full sink capabilities (audio,infoframes,etc.) when .compute_config()
> > gets called and thus we will fail to enable those features when the
> > first userspace commit happens. The only internal commit we do prior to
> > that should be from intel_initial_commit() and there we can simply
> > preserve the INHERITED flag from the readout.
> >
> > CC: Sam Ravnborg <sam@ravnborg.org>
> > Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> > Cc: Emil Velikov <emil.l.velikov@gmail.com>
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/display/icl_dsi.c | 13 ++++------
> > drivers/gpu/drm/i915/display/intel_atomic.c | 1 +
> > drivers/gpu/drm/i915/display/intel_display.c | 24 +++++++++++++------
> > .../drm/i915/display/intel_display_types.h | 9 ++++++-
> > drivers/gpu/drm/i915/display/intel_tv.c | 4 ++--
> > drivers/gpu/drm/i915/display/vlv_dsi.c | 6 ++---
> > drivers/gpu/drm/i915/i915_irq.c | 4 ++--
> > 7 files changed, 37 insertions(+), 24 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c b/drivers/gpu/drm/i915/display/icl_dsi.c
> > index 99a25c0bb08f..4d6788ef2e5e 100644
> > --- a/drivers/gpu/drm/i915/display/icl_dsi.c
> > +++ b/drivers/gpu/drm/i915/display/icl_dsi.c
> > @@ -1469,8 +1469,7 @@ static void gen11_dsi_get_config(struct intel_encoder *encoder,
> > pipe_config->pipe_bpp = bdw_get_pipemisc_bpp(crtc);
> >
> > if (gen11_dsi_is_periodic_cmd_mode(intel_dsi))
> > - pipe_config->hw.adjusted_mode.private_flags |=
> > - I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE;
> > + pipe_config->mode_flags |= I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE;
> > }
> >
> > static int gen11_dsi_dsc_compute_config(struct intel_encoder *encoder,
> > @@ -1555,10 +1554,6 @@ static int gen11_dsi_compute_config(struct intel_encoder *encoder,
> >
> > pipe_config->port_clock = afe_clk(encoder, pipe_config) / 5;
> >
> > - /* We would not operate in periodic command mode */
> > - pipe_config->hw.adjusted_mode.private_flags &=
> > - ~I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE;
> > -
>
> Since you delete this here, but not above (and then you could also detel
> gen11_dsi_is_periodic_cmd_mode I think): It's dead code, maybe prep patch
> to just garbage collect I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE?
I think this flag is still WIP. It was added very recently so I'm
assuming there is some plan for it (not that I like adding half
baked dead stuff like this). So we may want to wait a bit to see
where it's going. The reason I deleted this specific statement is
that we zero the crtc state before .compute_config() so this one
would remain dead code even if the flag starts to get used for
something.
>
> I think the proper replacement is the mode flag stuff below, this is just
> interim stuff that fell through the review.
>
> With that prep patch to get rid of these 2 hunks above:
>
> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>
> Also surplus Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> on the patch
> to delete I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE in case I miss the new
> version.
>
--
Ville Syrjälä
Intel
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>,
intel-gfx@lists.freedesktop.org, Sam Ravnborg <sam@ravnborg.org>,
dri-devel@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v2 13/17] drm/i915: Stop using mode->private_flags
Date: Tue, 7 Apr 2020 18:20:50 +0300 [thread overview]
Message-ID: <20200407152050.GC6112@intel.com> (raw)
In-Reply-To: <20200407073847.GB3456981@phenom.ffwll.local>
On Tue, Apr 07, 2020 at 09:38:47AM +0200, Daniel Vetter wrote:
> On Fri, Apr 03, 2020 at 11:40:04PM +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > Replace the use of mode->private_flags with a truly private bitmaks
> > in our own crtc state. We also need a copy in the crtc itself so the
> > vblank code can get at it. We already have scanline_offset in there
> > for a similar reason, as well as the vblank->hwmode which is assigned
> > via drm_calc_timestamping_constants(). Fortunately we now have a
> > nice place for doing the crtc_state->crtc copy in
> > intel_crtc_update_active_timings() which gets called both for
> > modesets and init/resume readout.
> >
> > The one slightly iffy spot is the INHERITED flag which we want to
> > preserve until userspace/fb_helper does the first proper commit after
> > actually calling .detecti() on the connectors. Otherwise we don't have
> > the full sink capabilities (audio,infoframes,etc.) when .compute_config()
> > gets called and thus we will fail to enable those features when the
> > first userspace commit happens. The only internal commit we do prior to
> > that should be from intel_initial_commit() and there we can simply
> > preserve the INHERITED flag from the readout.
> >
> > CC: Sam Ravnborg <sam@ravnborg.org>
> > Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> > Cc: Emil Velikov <emil.l.velikov@gmail.com>
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/display/icl_dsi.c | 13 ++++------
> > drivers/gpu/drm/i915/display/intel_atomic.c | 1 +
> > drivers/gpu/drm/i915/display/intel_display.c | 24 +++++++++++++------
> > .../drm/i915/display/intel_display_types.h | 9 ++++++-
> > drivers/gpu/drm/i915/display/intel_tv.c | 4 ++--
> > drivers/gpu/drm/i915/display/vlv_dsi.c | 6 ++---
> > drivers/gpu/drm/i915/i915_irq.c | 4 ++--
> > 7 files changed, 37 insertions(+), 24 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c b/drivers/gpu/drm/i915/display/icl_dsi.c
> > index 99a25c0bb08f..4d6788ef2e5e 100644
> > --- a/drivers/gpu/drm/i915/display/icl_dsi.c
> > +++ b/drivers/gpu/drm/i915/display/icl_dsi.c
> > @@ -1469,8 +1469,7 @@ static void gen11_dsi_get_config(struct intel_encoder *encoder,
> > pipe_config->pipe_bpp = bdw_get_pipemisc_bpp(crtc);
> >
> > if (gen11_dsi_is_periodic_cmd_mode(intel_dsi))
> > - pipe_config->hw.adjusted_mode.private_flags |=
> > - I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE;
> > + pipe_config->mode_flags |= I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE;
> > }
> >
> > static int gen11_dsi_dsc_compute_config(struct intel_encoder *encoder,
> > @@ -1555,10 +1554,6 @@ static int gen11_dsi_compute_config(struct intel_encoder *encoder,
> >
> > pipe_config->port_clock = afe_clk(encoder, pipe_config) / 5;
> >
> > - /* We would not operate in periodic command mode */
> > - pipe_config->hw.adjusted_mode.private_flags &=
> > - ~I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE;
> > -
>
> Since you delete this here, but not above (and then you could also detel
> gen11_dsi_is_periodic_cmd_mode I think): It's dead code, maybe prep patch
> to just garbage collect I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE?
I think this flag is still WIP. It was added very recently so I'm
assuming there is some plan for it (not that I like adding half
baked dead stuff like this). So we may want to wait a bit to see
where it's going. The reason I deleted this specific statement is
that we zero the crtc state before .compute_config() so this one
would remain dead code even if the flag starts to get used for
something.
>
> I think the proper replacement is the mode flag stuff below, this is just
> interim stuff that fell through the review.
>
> With that prep patch to get rid of these 2 hunks above:
>
> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>
> Also surplus Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> on the patch
> to delete I915_MODE_FLAG_DSI_PERIODIC_CMD_MODE in case I miss the new
> version.
>
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2020-04-07 15:20 UTC|newest]
Thread overview: 113+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-03 20:39 [PATCH v2 00/17] drm: Put drm_display_mode on diet Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-03 20:39 ` [PATCH v2 01/17] drm: Nuke mode->hsync Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:30 ` Sam Ravnborg
2020-04-07 18:30 ` [Intel-gfx] " Sam Ravnborg
2020-04-03 20:39 ` [PATCH v2 02/17] drm/i915: Introduce some local intel_dp variables Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-03 20:39 ` [PATCH v2 03/17] drm: Nuke mode->vrefresh Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-03 20:39 ` Ville Syrjala
2020-04-03 20:39 ` Ville Syrjala
2020-04-03 20:58 ` Laurent Pinchart
2020-04-03 20:58 ` [Intel-gfx] " Laurent Pinchart
2020-04-03 20:58 ` Laurent Pinchart
2020-04-03 20:58 ` Laurent Pinchart
2020-04-04 2:01 ` abhinavk
2020-04-04 2:01 ` [Intel-gfx] " abhinavk
2020-04-04 2:01 ` abhinavk
2020-04-04 2:01 ` abhinavk
2020-04-06 8:32 ` Jani Nikula
2020-04-06 8:32 ` [Intel-gfx] " Jani Nikula
2020-04-06 8:32 ` Jani Nikula
2020-04-06 8:32 ` Jani Nikula
2020-04-07 1:23 ` abhinavk
2020-04-07 1:23 ` [Intel-gfx] " abhinavk
2020-04-07 1:23 ` abhinavk
2020-04-07 1:23 ` abhinavk
2020-04-03 20:39 ` [PATCH v2 04/17] drm/msm/dpu: Stop copying around mode->private_flags Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-03 20:39 ` Ville Syrjala
2020-04-03 20:39 ` [PATCH v2 05/17] drm: Shrink {width,height}_mm to u16 Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:37 ` Sam Ravnborg
2020-04-07 18:37 ` [Intel-gfx] [PATCH v2 05/17] drm: Shrink {width, height}_mm " Sam Ravnborg
2020-04-03 20:39 ` [PATCH v2 06/17] drm: Shrink mode->type to u8 Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:38 ` Sam Ravnborg
2020-04-07 18:38 ` [Intel-gfx] " Sam Ravnborg
2020-04-03 20:39 ` [PATCH v2 07/17] drm: Make mode->flags u32 Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:38 ` Sam Ravnborg
2020-04-07 18:38 ` [Intel-gfx] " Sam Ravnborg
2020-04-03 20:39 ` [PATCH v2 08/17] drm: Shrink drm_display_mode timings Ville Syrjala
2020-04-03 20:39 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:43 ` Sam Ravnborg
2020-04-07 18:43 ` [Intel-gfx] " Sam Ravnborg
2020-04-03 20:40 ` [PATCH v2 09/17] drm: Flatten drm_mode_vrefresh() Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:46 ` Sam Ravnborg
2020-04-07 18:46 ` [Intel-gfx] " Sam Ravnborg
2020-04-03 20:40 ` [PATCH v2 10/17] drm: Shrink mode->private_flags Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-07 18:52 ` Sam Ravnborg
2020-04-07 18:52 ` [Intel-gfx] " Sam Ravnborg
2020-04-07 19:10 ` Ville Syrjälä
2020-04-07 19:10 ` [Intel-gfx] " Ville Syrjälä
2020-04-03 20:40 ` [PATCH v2 11/17] drm: pahole struct drm_display_mode Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-06 0:24 ` kbuild test robot
2020-04-03 20:40 ` [PATCH v2 12/17] drm/mcde: Use mode->clock instead of reverse calculating it from the vrefresh Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-07 7:27 ` Daniel Vetter
2020-04-07 7:27 ` [Intel-gfx] " Daniel Vetter
2020-04-07 18:53 ` Sam Ravnborg
2020-04-07 18:53 ` [Intel-gfx] " Sam Ravnborg
2020-04-12 0:42 ` Linus Walleij
2020-04-12 0:42 ` [Intel-gfx] " Linus Walleij
2020-04-03 20:40 ` [PATCH v2 13/17] drm/i915: Stop using mode->private_flags Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-07 7:38 ` Daniel Vetter
2020-04-07 7:38 ` [Intel-gfx] " Daniel Vetter
2020-04-07 15:20 ` Ville Syrjälä [this message]
2020-04-07 15:20 ` Ville Syrjälä
2020-04-08 9:34 ` Jani Nikula
2020-04-08 9:34 ` Jani Nikula
2020-04-03 20:40 ` [PATCH v2 14/17] drm/i915: Replace I915_MODE_FLAG_INHERITED with a boolean Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-07 7:42 ` Daniel Vetter
2020-04-07 7:42 ` [Intel-gfx] " Daniel Vetter
2020-04-03 20:40 ` [PATCH v2 15/17] drm/gma500: Stop using mode->private_flags Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-07 7:46 ` Daniel Vetter
2020-04-07 7:46 ` [Intel-gfx] " Daniel Vetter
2020-04-07 18:56 ` Sam Ravnborg
2020-04-07 18:56 ` [Intel-gfx] " Sam Ravnborg
2020-04-07 19:08 ` Ville Syrjälä
2020-04-07 19:08 ` [Intel-gfx] " Ville Syrjälä
2020-04-07 19:35 ` Sam Ravnborg
2020-04-07 19:35 ` [Intel-gfx] " Sam Ravnborg
2020-04-09 19:49 ` Ville Syrjälä
2020-04-09 19:49 ` [Intel-gfx] " Ville Syrjälä
2020-04-09 19:54 ` Ville Syrjälä
2020-04-09 19:54 ` [Intel-gfx] " Ville Syrjälä
2020-04-09 20:47 ` Sam Ravnborg
2020-04-09 20:47 ` [Intel-gfx] " Sam Ravnborg
2020-04-14 15:11 ` Ville Syrjälä
2020-04-14 15:11 ` [Intel-gfx] " Ville Syrjälä
2020-04-03 20:40 ` [PATCH v2 16/17] drm: Nuke mode->private_flags Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-04 1:40 ` abhinavk
2020-04-04 1:40 ` [Intel-gfx] " abhinavk
2020-04-06 9:11 ` Jani Nikula
2020-04-06 9:11 ` [Intel-gfx] " Jani Nikula
2020-04-07 1:26 ` abhinavk
2020-04-07 1:26 ` [Intel-gfx] " abhinavk
2020-04-07 18:58 ` Sam Ravnborg
2020-04-07 18:58 ` [Intel-gfx] " Sam Ravnborg
2020-04-03 20:40 ` [PATCH v2 17/17] drm: Replace mode->export_head with a boolean Ville Syrjala
2020-04-03 20:40 ` [Intel-gfx] " Ville Syrjala
2020-04-03 22:04 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm: Put drm_display_mode on diet (rev2) Patchwork
2020-04-03 22:29 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2020-04-24 17:32 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for drm: Put drm_display_mode on diet (rev3) 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=20200407152050.GC6112@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=daniel.vetter@ffwll.ch \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=emil.l.velikov@gmail.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=sam@ravnborg.org \
/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.