Skip to content
This repository was archived by the owner on Jun 16, 2022. It is now read-only.
This repository was archived by the owner on Jun 16, 2022. It is now read-only.

gbm backend doesn't display anything #18

@fjhenigman

Description

@fjhenigman

Unlike all the other backends, gbm is off-screen only. I've got drm/kms display working on this branch, though it's WIP:
https://github.com/fjhenigman/waffle/tree/gbmdisplay
At the moment it's controlled by environment variable because it was convenient and I was undecided on how to do it right. I thought of a few ways:

  1. different platforms, e.g. WAFFLE_PLATFORM_GBM and WAFFLE_PLATFORM_GBM_ONSCREEN
  2. new context flags, e.g. WAFFLE_CONTEXT_OFFSCREEN - might be relevant to other platforms
  3. show on screen if waffle_window_show() is called, otherwise do not
  4. add argument(s) to waffle_display_connect() or waffle_window_create() or waffle_window_show()
  5. new function(s)
    1-3 have the advantage of not changing the waffle api, though 3 is only an on/off option, it wouldn't allow specifying copy vs. flip for example. As for option 1 we might not want to clutter the platform namespace with a lot of things like WAFFLE_PLATFORM_GBM_OFFSCREEN, WAFFLE_PLATFORM_GBM_FLIP, WAFFLE_PLATFORM_GBM_COPY...
    Option 2 is avoids that, and is nicely open-ended, but display details maybe don't belong with context?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions