If a second display is plugged into a Pixel the second display doesn't show anything.
Display management code finds the new display and sets a default configuration. The display backlight turns on at this point and the WS sets up a FrameGenerator for the display. I think everything here works correctly.
Running off device a second display works, so we know CompositorFrames are being submitted properly to the second display. It seems like the issue is at a lower level in Ozone DRM.
On device uses DisplayOutputSurfaceOzone instead of DisplayOutputSurface, so DisplayOutputSurfaceOzone is a good starting point in tracking down what is actually going wrong. I wonder if external displays need a different framebuffer format?
Comment 1 by sky@chromium.org
, Mar 27 2017