On Thu, May 15, 2014 at 8:23 PM, akash goel <akash.go...@gmail.com> wrote:
> Reviewed the patch & it looks good. > Just to confirm, this patch tries to address the case of a tiny window of > transition, i.e. from the 1st field (last half line) to 2nd field (first > half line). > > Reviewed-by: "Akash Goel <akash.go...@gmail.com>" > > > Reviewed the patch and looks fine. You can add my r-b tag: Reviewed-by: "Sourab Gupta <sourabgu...@gmail.com>" On Tue, Apr 29, 2014 at 4:05 PM, <ville.syrj...@linux.intel.com> wrote: > >> From: Ville Syrjälä <ville.syrj...@linux.intel.com> >> >> In interlaced modes, the pixel counter counts all pixels, >> so one field will have htotal more pixels. In order to avoid >> the reported position from jumping backwards when the pixel >> counter is beyond the length of the shorter field, just >> clamp the position the length of the shorter field. This >> matches how the scanline counter based position works since >> the scanline counter doesn't count the two half lines. >> >> Signed-off-by: Ville Syrjälä <ville.syrj...@linux.intel.com> >> --- >> drivers/gpu/drm/i915/i915_irq.c | 12 ++++++++++++ >> 1 file changed, 12 insertions(+) >> >> diff --git a/drivers/gpu/drm/i915/i915_irq.c >> b/drivers/gpu/drm/i915/i915_irq.c >> index 7e0d577..64cd888 100644 >> --- a/drivers/gpu/drm/i915/i915_irq.c >> +++ b/drivers/gpu/drm/i915/i915_irq.c >> @@ -844,6 +844,18 @@ static int i915_get_crtc_scanoutpos(struct >> drm_device *dev, int pipe, >> vtotal *= htotal; >> >> /* >> + * In interlaced modes, the pixel counter counts all >> pixels, >> + * so one field will have htotal more pixels. In order to >> avoid >> + * the reported position from jumping backwards when the >> pixel >> + * counter is beyond the length of the shorter field, just >> + * clamp the position the length of the shorter field. >> This >> + * matches how the scanline counter based position works >> since >> + * the scanline counter doesn't count the two half lines. >> + */ >> + if (position >= vtotal) >> + position = vtotal - 1; >> + >> + /* >> * Start of vblank interrupt is triggered at start of >> hsync, >> * just prior to the first active line of vblank. However >> we >> * consider lines to start at the leading edge of >> horizontal >> -- >> 1.8.3.2 >> >> _______________________________________________ >> Intel-gfx mailing list >> Intel-gfx@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/intel-gfx >> > > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx > >
_______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx