On Mon, Dec 12, 2011 at 8:39 PM, Inki Dae inki.dae@samsung.com wrote:
Hi, Rob. below is my answer.
-----Original Message----- From: Rob Clark [mailto:robdclark@gmail.com] Sent: Tuesday, December 13, 2011 9:48 AM To: Joonyoung Shim Cc: Inki Dae; kyungmin.park@samsung.com; sw0312.kim@samsung.com; dri- devel@lists.freedesktop.org Subject: Re: [PATCH 5/5] drm/exynos: Add plane support with fimd
On Mon, Dec 12, 2011 at 6:41 PM, Joonyoung Shim jy0922.shim@samsung.com wrote:
On 12/13/2011 06:59 AM, Rob Clark wrote:
On Fri, Dec 9, 2011 at 4:59 AM, Inki Daeinki.dae@samsung.com wrote:
From: Joonyoung Shimjy0922.shim@samsung.com
The exynos fimd supports 5 window overlays. Only one window overlay of fimd is used by the crtc, so we need plane feature to use the rest window overlays.
This creates one ioctl exynos specific - DRM_EXYNOS_PLANE_SET_ZPOS, it is the ioctl to decide for user to assign which window overlay.
btw, I think I will end up with a similar ioctl.. so thought I'd double check for consistency, is zorder interpreted from back to front or front to back? Ie. higher numeric value in front or behind of lower numeric value? Are negative values permitted?
The zpos of exynos plane is just the index of overlay of exynos fimd or exynos hdmi. 0 zpos means first overlay and 1 zpos means second overlay. It isn't the priority value but higher zpos will have higher priority generally.
I'm not sure that I quite understand that.. does that mean zpos=1 will be in front of zpos=0 (which would be in front of crtc, aka zpos=-1). Do you have a way to put overlays *behind* crtc layer (which presumably would be in some mode with an alpha channel?)
(IIRC, samsung has some public TRM type document.. if this is covered there, feel free to answer by just pointing me at the section I should read)
I know that omap, at least omap3(Display Controller of the Display Subsystem), has two modes. one is normal mode and another is alpha mode. and they also have different overlay priority but Samsung exynos has fixed priority to hardware overlays. so higher overlay always is in front of lower overlay. in case of plane module for Samsung SoC, if zpos is -1 then crtc has default overlay designated by machine code. so whether some overlay is in front of crtc or not would be decided by default overlay.
ahh, ok.. I was hoping it was as easy as omap4 where we can just set arbitrary z-order (0-4) for any of the layers (crtc or overlay). So maybe not a way to completely abstract this in the same way for userspace (but the case is the same in omap3 where it is either normal or alpha mode.. and I hadn't really decided yet how to handle the difference between omap generations for this sort of API yet).
I guess userspace ddx driver (or wayland compositor, etc) would still need to know a bit about what is under the hood.. sigh..
BR, -R
Thank you, Inki Dae.
BR, -R
A negative value -1 is defined to special value. A exynos crtc should use one overlay and -1 zpos means the overlay that crtc uses.
Thanks.
BR, -R
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel