[PATCH 07/15] drm/omap: Use per-plane rotation property
Ville Syrjälä
ville.syrjala at linux.intel.com
Thu Aug 11 13:33:32 UTC 2016
On Thu, Aug 11, 2016 at 02:32:44PM +0300, Tomi Valkeinen wrote:
> Hi,
>
> On 22/07/16 16:43, ville.syrjala at linux.intel.com wrote:
> > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> >
> > The global mode_config.rotation_property is going away, switch over to
> > per-plane rotation_property.
> >
> > Not sure I got the annoying crtc rotation_property handling right.
> > Might work, or migth not.
>
> I think something is funny with this patch or the series. I fetched your
> branch, and with your series, it looks like the primary planes lose all
> their props. modetest says:
>
> could not get plane 26 properties: Invalid argument
> could not get plane 30 properties: Invalid argument
Hmm. Weird. Is it really the get props ioctl that fails?
The first EINVAL I can spot there is
if (!obj->properties) {
ret = -EINVAL;
goto out_unref;
}
which definitely makes no sense since this is assigned
as plane->base.properties = &plane->properties. So can't be that unless
we manage to clear the pointer somehow after the init.
The only other direct EINVAL I see there is if
drm_object_property_get_value(obj->properties->properties[i])
fails to find the passed prop in the properties array. Which clearly
can't happen since we got it from the array in the first place. Also,
clearly that code is rather inefficient, perhaps someone should rewrite
it a bit.
Can't quite see how this could fail for the plane in other ways. But I
might be blind.
>
> and
>
> Planes:
> id crtc fb CRTC x,y x,y gamma size possible
> crtcs
> 26 28 55 0,0 0,0 0 0x00000001
> formats: RG16 RX12 XR12 RA12 AR12 XR15 AR15 RG24 RX24 XR24 RA24 AR24
> no properties found
> 30 0 0 0,0 0,0 0 0x00000002
> formats: RG16 RX12 XR12 RA12 AR12 XR15 AR15 RG24 RX24 XR24 RA24 AR24
> NV12 YUYV UYVY
> no properties found
>
> I didn't look closer yet.
>
> Tomi
>
--
Ville Syrjälä
Intel OTC
More information about the dri-devel
mailing list