mutter:wip/3-monitors-on-nvidia

Last commit made on 2018-11-30
Get this branch:
git clone -b wip/3-monitors-on-nvidia https://git.launchpad.net/mutter

Branch merges

Branch information

Name:
wip/3-monitors-on-nvidia
Repository:
lp:mutter

Recent commits

7f4f9b1... by Ray Strode <email address hidden>

wip! native: release dumb fb after flip for EGLStreams

fixme probably need to recreate the dumb fb any time doing
an explicit modeset

82f03c5... by Ray Strode <email address hidden>

wip! renderer/native: start to add stream copy mode

At the moment, mutter only supports using GBM for
doing GPU blits to secondary video cards.

This commit starts to sketch out using eglstreams
for doing the copy.

FIXME: in order to get memcpy fastpath we get
inverted colors and have to fix it up in the shader.

FIXME: need to move some of the globals to be in
a more structured place

Closes https://gitlab.gnome.org/GNOME/mutter/issues/205

8f53867... by Ray Strode <email address hidden>

wip! renderer/native: only flip secondary crtc if using GBM

It's possible that the secondary gpu isn't using GBM for
renderering. if that's the case we shouldn't try to flip using
drm apis.

This commit checks, and only does the flip when expected.

0540e4d... by Ray Strode <email address hidden>

wip! renderer/native: generalize flip_egl_stream

We're going to need to be able to flip secondary egl streams,
so this commit parameterizes the stream and related objects.

A new wrapper function, `flip_primary_egl_stream`, takes over the
previous role of `flip_egl_stream`

fixme no_egl_output_drm_flip_event needs to be handled for secondary
streams

5d8248d... by Ray Strode <email address hidden>

renderer/native: initialize egldevice on secondary cards

If possible initialize the egldevice renderer on secondary
cards.

b61c2f2... by Ray Strode <email address hidden>

wip! renderer/native: separate renderer gpu data initialization from creation

We're going to need to initialize both gbm and egldevice based rendering
on some machines for one renderer data, so this commit splits
initialization out from construction.

3dacd0f... by Ray Strode <email address hidden>

wip! renderer/native: generalize meta_renderer_native_create_surface_egl_device

Eventually we want to use meta_renderer_native_create_surface_egl_device
for secondary displays, but it currently implicitly uses the primary
display and egl context.

This commit changes the function to take a display and a context
as arguments.

336cb36... by Ray Strode <email address hidden>

wip! renderer/native: pass MetaMonitor instead of MetaLogicalMonitor to meta_renderer_native_create_surface_egl_device

bb33dad... by Ray Strode <email address hidden>

wip! renderer-native: use proper surface type for egldevice

88a7b6e... by Ray Strode <email address hidden>

renderer/native: use GBM_FORMAT_ARGB8888 for primary rendering format

At the moment we use GBM_FORMAT_XRGB8888 which unfortunately triggers
slow read pixels code in mesa.

This commit changes it to ARGB8888 instead, which copies with memcpy.