On Tue, May 10, 2016 at 12:29:23AM +0300, Jyri Sarha wrote:
On 05/09/16 17:42, Daniel Vetter wrote:
It's not clear to me if a (primary) plane is required with atomic universal planes and modesetting or not... I guess it is, when thinking of how e.g. a framebuffer is configured to be shown on a screen when using the atomic modesetting uapi.
You need a primary plane, but atomic doesn't require that it's enabled. Which this simple display controller probably wont like, so seems like this implementation of a primary plane is a bit too simple. You also need
So I do what I can, by checking in crtc check that the plane is part of the new state. What more should I do?g
a real plane for the cursor, if you want to support that with atomic.
Well, there is no such thing in LCDC.
But if it is required, it makes me wonder, are there other HWs out there without any planes? The dummy plane implementation you added is not complex, but is it something that should be implemented with DRM helper funcs?
There's a drm_simple_display_pipe floating around which seems perfectly suited to tilcdc. It's meant for the case where you have 1 plane, 1 crtc and 1 encoder maybe linking to different connectors. And it takes care of all the small bits for you, with a grand total of 5 callbacks, all of them optional.
Might indeed be useful to rebase tilcdc on top of that, should be possible to nuke piles of code.
Looks interesting. Does it look like it is getting ready to be merged soon?
Should be landind soon, yes. Probably not for 4.7, that's closed now, but I can still pick it up into drm-misc right away when it's ready. Open review comments are all just small things, you could pick the latest version to start prototyping a conversion and there shouldn't be any surprises when you rebase onto the merged version. -Daniel