From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Jani Nikula <jani.nikula@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: DP compliance failure due to dithering for 18bpp video pattern
Date: Wed, 11 Jan 2017 17:35:20 +0200 [thread overview]
Message-ID: <20170111153520.GL31595@intel.com> (raw)
In-Reply-To: <87o9zd7hwj.fsf@intel.com>
On Wed, Jan 11, 2017 at 05:09:16PM +0200, Jani Nikula wrote:
> On Tue, 10 Jan 2017, Manasi Navare <manasi.d.navare@intel.com> wrote:
> > Hi All,
> >
> > We are seeing CRC check failures in some of the 18bpp video pattern
> > DP Compliance tests causing the tests to fail. On further investigation, it is
> > rootcaused to dithering that the i915 driver enables in case of 18bpp pipe
> > configuration that messes up the CRC and causes the test to fail.
>
> The CTS spec actually accounts for CRC failures caused by dithering and
> color space conversions. See section 3.2.1. However, it would be
> preferrable to be able to automate this.
>
> > Some of the approaches that can solve this problem are:
> > 1. Add a new method in intel_dp.c to request the compliance test state.
> > Call this new method in intel_display.c to not enable dithering during a
> > compliance test. Issue with this is it makes the general portion of the driver
> > compliance aware.
> >
> > 2. Move the dithering enable to compute_config methods in all encoder source
> > files. Issue: Lot of duplicate code and DP is the only encoder that uses 18bpc.
> >
> > 3. Disable dithering at all times in the driver. However this can cause image
> > quality issue with 8bpc plane and 6 bit pipe.
> >
> > Any suggestions on which approach can be implemented in order to pass
> > compliance?
>
> I can't find any mention in the specs that we couldn't enable/disable
> dithering on the fly. It's PIPE_MISC for BDW+ and PIPE_CONF for the
> rest. So I'm wondering about doing...
>
> 4. Disable dithering at intel_dp_sink_crc_start() and enable it again
> (according to config->dither) at intel_dp_sink_crc_stop(). It's
> similar to the hsw_disable_ips() and hsw_enable_ips() calls, but
> would have to cover more platforms.
>
> Ville, thoughts on changing dithering on the fly?
Should be fine I think.
BTW see
https://lists.freedesktop.org/archives/intel-gfx/2016-December/115186.html
if you intend to add more crc workaround type of things. There I'm
changing the IPS w/a to force a full modeset because it was the easiest
way to do things, and the current thing is just broken.
--
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:[~2017-01-11 15:35 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-10 1:43 DP compliance failure due to dithering for 18bpp video pattern Manasi Navare
2017-01-11 15:09 ` Jani Nikula
2017-01-11 15:35 ` Ville Syrjälä [this message]
2017-01-12 10:32 ` Jani Nikula
2017-01-12 23:30 ` Manasi Navare
2017-01-12 23:41 ` Rodrigo Vivi
2017-01-12 23:53 ` Manasi Navare
2017-01-13 7:11 ` Jani Nikula
2017-01-17 6:42 ` Manasi Navare
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=20170111153520.GL31595@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@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.