[Intel-gfx] [PATCH 2/2] drm/i915: Add 90/270 rotation for NV12 format.
Ville Syrjälä
ville.syrjala at linux.intel.com
Wed May 20 05:27:35 PDT 2015
On Mon, May 18, 2015 at 07:19:19PM +0000, Runyan, Arthur J wrote:
> The statement is correct - " the X offset must always be even for YUV422+NV12, and the Y offset must be even when rotated 90/270 degrees."
Hmm. Can you elaborate a bit? I'm curious where this limitation comes
from.
>
> >From: Konduru, Chandra
> >> From: Runyan, Arthur J
> >>
> >> I'll take a look.
> >
> >Art, Any update to close on this?
> >
> >[snip]
> >
> >> > > > @@ -13144,6 +13149,10 @@ intel_check_primary_plane(struct
> >> > > > drm_plane
> >> > > *plane,
> >> > > > if (fb && format_is_yuv(fb->pixel_format)) {
> >> > > > src->x1 &= ~0x10000;
> >> > > > src->x2 &= ~0x10000;
> >> > > > + if (intel_rotation_90_or_270(state->base.rotation)) {
> >> > > > + src->y1 &= ~0x10000;
> >> > > > + src->y2 &= ~0x10000;
> >> > > > + }
> >> > >
> >> > > This feels fishy. Why do we need to make the Y coordinates even? The
> >> > > reson for making the X coordinates even is to make them macropixel
> >> > > aligned, but there are no macropixels in the Y direction so this
> >> > > doesn't make much sense to me.
> >> >
> >> > Hi Ville,
> >> > Per skl spec, it is expecting even lines aligned with 90/270 rotation
> >> > not only for NV12 but also for 422 formats. Perhaps we might have
> >> > missed when 90/270 enabled for packed YUV formats.
> >>
> >> The src coordinates are always in the fb orientation, so macropixels appear in
> >> the src.x direction only. And when we do 90/270 rotation the hardware Y offset
> >> comes from src.x coordinates.
> >>
> >> The spec does seem a bit confused though; It claims the X offset must always be
> >> even for YUV422+NV12, and the Y offset must be even when rotated 90/270
> >> degrees. I suspect the X offset text just didn't get updated when 90/270 rotation
> >> was added.
> >>
> >> Art, can you confirm?
> >>
> >> --
> >> Ville Syrjälä
> >> Intel OTC
--
Ville Syrjälä
Intel OTC
More information about the Intel-gfx
mailing list