[PATCH v2 1/2] drm/cma-helper: Add multi buffer support for cma fbdev

Tobias Jakobi tjakobi at math.uni-bielefeld.de
Fri Feb 17 12:49:03 UTC 2017


Hello Maxime,

Maxime Ripard wrote:
> Hi,
> 
> On Thu, Feb 16, 2017 at 01:28:24PM +0100, Tobias Jakobi wrote:
>> Hello,
>>
>> I'm not sure if I'm missing something here, but I don't see how this is
>> supposed to work.
>>
>> This just multiplies the height of the drm_mode_fb_cmd2 object with the
>> number of buffers. Let's say I have width=1024, height=768, then now I
>> have a framebuffer which has height=2304 (in the num_buffers=3 case). At
>> some point this FB is set as the primary plane, giving us a 1024x2304
>> mode. I don't think that this is intended.
>>
>> In my opinion this multi-buffer thing should touch drm_mode_fb_cmd2 at
>> all. The underlying BO should be larger, but not the FB itself. If this
>> is supposed to work, then the fbdev helpers should create as many FBs as
>> there are buffers, and then offset each of these FB into the BO.
> 
> This only increases the virtual resolution, not the visible one.
hmm, OK, I guess I need to test this again then. The last time I checked
such an approach was on vanilla-4.7.y IIRC. And there it failed miserably.


>> What I'm also not seeing is code that handles the fbdev's virtual
>> resolutions. After all num_buffers should only increase those. Same for
>> the panning ioctl().
> 
> This is already implemented through drm_fb_helper_pan_display.
Thanks, I'll take a look!

With best wishes,
Tobias


> 
> Maxime
> 



More information about the dri-devel mailing list