From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: "Maiti, Nabendu Bikash" <nabendu.bikash.maiti@intel.com>
Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 0/7] drm/i915: Add pipe scaler for Gen9 in atomic path
Date: Mon, 3 Oct 2016 14:27:13 +0300 [thread overview]
Message-ID: <20161003112713.GT4329@intel.com> (raw)
In-Reply-To: <6576f043-6066-193a-a815-89868d1110d3@intel.com>
On Wed, Sep 21, 2016 at 07:47:37PM +0530, Maiti, Nabendu Bikash wrote:
> Hi,
>
>
> On 9/20/2016 1:55 PM, Ville Syrjälä wrote:
> > On Tue, Aug 30, 2016 at 10:30:54AM +0530, Nabendu Maiti wrote:
> >> Following patch series add pipe scaler functionality in atomic path.The pipe
> >> scaler can be changed dynamically without modeset.Apart from default panel
> >> fitter supported scaling modes -CENTER/ASPECT/FULLSCREEN custom scaling mode
> >> mode is added as there is no such restriction on GEn9 pipe scaler.
> >
> > Some quick observations:
> > - missing any interaction with drm core, so all generic fb size checks
> > and whatnot will not work out, I think
> Pipe scaler is not dependent on fp I think. We have fb size checks are
> done in plane check.
You need to explain how this all interacts with the legacy pipe/plane
size == mode hdisplay/vdisplay stuff.
>
> > - the way it's done goes against what I've suggested in the past. My
> > idea has been to add a "fixed mode" property to connectors instead,
> > which I think would minimize the impact on the core, and it would
> > follow closely the way eDP/LVDS/DSI already works today.
> yes using fixed mode we can do also but I wanted to be part of crtc
> property instead of connector property. As fixed mode is basically
> intended for fixed mode panels.But we may use pipe scaler for fixed mode
> and dynamic mode panels.
That doesn't say much. The fixed mode apporach, I think, might be easier
to incorporate in a way that keeps the legacy apporach working. Adding a
totally different way to configure the pipe src size will mean more weird
interactions between the properties.
Also it culd be supported with non-atomic userspace reasonably easily.
We'll need some sort of userspace for this anyway, otherwise it's just
untested/unused code.
>
> > - There's no need to restrict the feature to gen9+ only. It should work
> > out just fine for at least all pch platforms. gmch platforms would be
> > more challenging
> This code I designed to use gen9+, and properties like crtc destination
> size and offsets also exposed.There is no restrictions on modes (eg.
> pillerbox/letterbox) and down scaling ratios as previous platforms.
> Currently scaling mode is part of connector property and implemented as
> legacy property. I created new scaling mode as atomic property. I think
> gen9+ onward platforms may have proper atomic pipe scaling properties
> and user space may use it fully dynamically without modeset.
None of that tells me why it's gen9+ only. IIRC the panel fitter
configuration been very flexible ever since ILK, so the only real
difference should be which registers to write.
>
> > - the pfiter_recalculate thing looks pretty wrong atomic wise
> Sorry, I couldn't get it. Are you referring pipe scaler registers are
> not written together with other registers? pfiter_calculate only
> calculate and stores the data for later commit. Please provide more
> details on it.
It's going through encoder->crtc links and whanot. That's not going
to fly.
> >
> >>
> >>
> >>
> >> Nabendu Maiti (7):
> >> drm/i915: Add pipe scaler pipe source drm property
> >> drm/i915: Add pipe_src size property calculations in atomic path.
> >> drm/i915: Panel fitting calculation for GEN9
> >> drm/i915: Adding atomic fitting mode property for GEN9
> >> drm/i915: Add pipe scaler co-ordinate and size property for Gen9
> >> drm/i915: Update pipe-scaler according to destination size
> >> drm/i915: Pipescaler destination size limit check on Gen9
> >>
> >> drivers/gpu/drm/drm_atomic.c | 35 ++++++++++
> >> drivers/gpu/drm/drm_crtc.c | 56 +++++++++++++++
> >> drivers/gpu/drm/i915/intel_display.c | 128 +++++++++++++++++++++++++++++++++--
> >> drivers/gpu/drm/i915/intel_drv.h | 3 +
> >> drivers/gpu/drm/i915/intel_panel.c | 34 +++++++++-
> >> include/drm/drm_crtc.h | 14 ++++
> >> include/uapi/drm/drm_mode.h | 1 +
> >> 7 files changed, 263 insertions(+), 8 deletions(-)
> >>
> >> --
> >> 1.9.1
> >>
> >> _______________________________________________
> >> Intel-gfx mailing list
> >> Intel-gfx@lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> >
>
> --
> Regards,
> Nabendu
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2016-10-03 11:27 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-30 5:00 [PATCH 0/7] drm/i915: Add pipe scaler for Gen9 in atomic path Nabendu Maiti
2016-08-30 5:00 ` [PATCH 1/7] drm/i915: Add pipe scaler pipe source drm property Nabendu Maiti
2016-08-30 5:00 ` [PATCH 2/7] drm/i915: Add pipe_src size property calculations in atomic path Nabendu Maiti
2016-08-30 5:00 ` [PATCH 3/7] drm/i915: Panel fitting calculation for GEN9 Nabendu Maiti
2016-08-30 5:00 ` [PATCH 4/7] drm/i915: Adding atomic fitting mode property " Nabendu Maiti
2016-08-30 5:00 ` [PATCH 5/7] drm/i915: Add pipe scaler co-ordinate and size property for Gen9 Nabendu Maiti
2016-08-30 5:01 ` [PATCH 6/7] drm/i915: Update pipe-scaler according to destination size Nabendu Maiti
2016-08-30 5:01 ` [PATCH 7/7] drm/i915: Pipescaler destination size limit check on Gen9 Nabendu Maiti
2016-08-30 5:20 ` ✓ Fi.CI.BAT: success for drm/i915: Add pipe scaler for Gen9 in atomic path Patchwork
2016-09-20 8:25 ` [PATCH 0/7] " Ville Syrjälä
2016-09-21 14:17 ` Maiti, Nabendu Bikash
2016-10-03 11:27 ` Ville Syrjälä [this message]
2016-10-28 12:06 ` Nabendu Maiti
2016-10-28 12:35 ` Nabendu Maiti
2016-11-03 9:23 ` Maiti, Nabendu Bikash
2016-12-26 8:39 ` Maiti, Nabendu Bikash
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=20161003112713.GT4329@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=daniel.vetter@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=nabendu.bikash.maiti@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.