[Mesa-dev] [Nouveau] [RFC] tegra: Initial support

Alexandre Courbot gnurou at gmail.com
Fri Nov 28 00:52:26 PST 2014


On Fri, Nov 28, 2014 at 5:48 PM, Thierry Reding
<thierry.reding at gmail.com> wrote:
> On Fri, Nov 28, 2014 at 02:14:24PM +0900, Alexandre Courbot wrote:
>> On 11/28/2014 01:39 AM, Thierry Reding wrote:
>> >Tegra K1 and later use a GPU that can be driven by the Nouveau driver.
>> >But the GPU is a pure render node and has no display engine, hence the
>> >scanout needs to happen on the Tegra display hardware. The GPU and the
>> >display engine each have a separate DRM device node exposed by the
>> >kernel.
>> >
>> >To make the setup appear as a single device, this driver instantiates
>> >a Nouveau screen with each instance of a Tegra screen and forwards GPU
>> >requests to the Nouveau screen. For purposes of scanout it will import
>> >buffers created on the GPU into the display driver. Handles that
>> >userspace requests are those of the display driver so that they can be
>> >used to create framebuffers.
>> >
>> >This has been tested with some GBM test programs, as well as kmscube and
>> >weston. All of those run without modifications, but I'm sure there is a
>> >lot that can be improved.
>>
>> Tested with kmscube and Weston and I can confirm this works. However, EGL
>> clients inside Weston have their window filled with garbage (they seem to
>> run fine otherwise). Do you also experience this?
>
> To be honest, that wasn't part of my set of test cases. I had assumed
> that since Weston could composite buffers into a final scan out buffer
> everything else would just work as well. Do you have any particular
> demos that aren't working?

Anything using EGL under Wayland - the simplest case would be
weston-simple-egl. glmark2 also displays a broken window, but then
crashes shortly after. With weston-simpe-egl I get the framerate
feedback and can see the GPU performance counters moving as expected,
indicating that the app is rendering correctly but that Weston gets
the wrong buffer to display.


More information about the mesa-dev mailing list