<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Use nuclear page flip / atomic mode setting"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=83888">83888</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>wayland-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Use nuclear page flip / atomic mode setting
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>ppaalanen@gmail.com
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>weston
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Wayland
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Implement support for universal planes and atomic mode setting / nuclear page
flip in Weston's DRM backend. This would finally make hardware overlays work
properly, and they could be enabled by default.

There is some work already done:
<a href="http://cgit.collabora.com/git/user/pq/weston.git/log/?h=next">http://cgit.collabora.com/git/user/pq/weston.git/log/?h=next</a>
contains lots of patches from the branching point up to the tip on implementing
and fixing the support.

Outdated work is at:
<a href="http://cgit.collabora.com/git/user/pq/weston.git/log/?h=nuclear-on-1.5">http://cgit.collabora.com/git/user/pq/weston.git/log/?h=nuclear-on-1.5</a>

The first thing is to extract all relevant patches from 'next', squash as
appropriate, and rebase on Weston master.

Then the usage of the DRM atomic API needs to be rewritten: we need to use the
test flag during assign_planes() to check what the kernel driver can handle, so
that when the kernel says no, we automatically fall back to GL compositing
rather than just fail to display.

Note, that this feature depends on the atomic commit API which is not in any
libdrm release yet, and likely not yet in master either. I think we could still
upstream this and put it behind a configure switch, so that kernel developers
working on atomic/nuclear will have a complex and real test case at hand.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>