[PATCH v4 2/5] drm/doc: document the type plane property
Simon Ser
contact at emersion.fr
Fri Jan 15 11:05:52 UTC 2021
On Tuesday, December 22nd, 2020 at 2:59 PM, Daniel Vetter <daniel at ffwll.ch> wrote:
> > + * type:
> > + * Immutable property describing the type of the plane.
> > + *
> > + * For user-space which has enabled the &DRM_CLIENT_CAP_UNIVERSAL_PLANES
>
> s/UNIVERSAL_PLANES/ATOMIC/ here?
>
> With just universal planes you don't have atomic test-only. But I guess it
> also works as-is, I'm just not entirely clear what you want to state here.
Right. This paragraph was written when I wasn't aware about ATOMIC implicitly
enabling UNIVERSAL_PLANES. Fixed in v5.
> > + * capability, the plane type is just a hint and is mostly superseded by
> > + * atomic test-only commits. The type hint can still be used to come up
> > + * more easily with a plane configuration accepted by the driver. Note that
> > + * &DRM_CLIENT_CAP_UNIVERSAL_PLANES is implicitly enabled by
> > + * &DRM_CLIENT_CAP_ATOMIC.
> > + *
> > + * The value of this property can be one of the following:
> > + *
> > + * "Primary":
> > + * To light up a CRTC, attaching a primary plane is the most likely to
> > + * work if it covers the whole CRTC and doesn't have scaling or
> > + * cropping set up.
> > + *
> > + * Drivers may support more features for the primary plane, user-space
> > + * can find out with test-only atomic commits.
> > + *
> > + * Primary planes are implicitly used by the kernel in the legacy
> > + * IOCTLs &DRM_IOCTL_MODE_SETCRTC and &DRM_IOCTL_MODE_PAGE_FLIP.
> > + * Therefore user-space must not mix explicit usage of any primary
> > + * plane (e.g. through an atomic commit) with these legacy IOCTLs.
>
> Empty line here for reading comfort in plain text? Same below.
>
> Since you mention formats below, I also wonder whether we should state
> here that xrgb8888 is generally supported, worst case through software
> emulation. That's defacto the uapi we have to adhere to.
I wonder. If a new driver decides not to support XRGB8888, that wouldn't be a
kernel regression because it's about new hardware. Do we want to formally lock
future drivers into XRGB8888 support? Or do we want to open the door for a
driver to break this assumption, even if most user-space won't work on the new
hardware?
I guess all of this is mostly theoretical at this point.
More information about the dri-devel
mailing list