22
1 © 2014 Samsung Electronics Co. Open Source Group Samsung Research America (Silicon Valley) Christopher Michael Open Source Innovation Group Samsung Research America Silicon Valley [email protected] EFL/Enlightenment Wayland Status Report

[E-Dev-Day 2014][12/16] EFL/Enlightenment Wayland Status Report & Demo

Embed Size (px)

Citation preview

1 © 2014 Samsung Electronics Co. Open Source Group – Samsung Research America (Silicon Valley)

Christopher Michael Open Source Innovation Group

Samsung Research America Silicon Valley

[email protected]

EFL/Enlightenment Wayland

Status Report

2 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

Abstract

We will briefly cover the current state of the EFLport to Wayland, along with current progress of porting Enlightenment to run Wayland-only.

3 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

Goals

o EFL o Lower Level Interfaces o Evas Wayland Engines o Ecore_Evas Wayland Engines

o Enlightenment o X11 with Wayland Client Support o Wayland Only o Wayland Only with X11 Client Support

4 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Direct Rendering Manager o Virtual Terminals o Input Devices o Output Devices

Lower Level Interfaces

5 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Implemented in Ecore_Drm library o Utilizes libdrm for hardware interfacing o Utilizes Eeze library for device management o Utilizes Eldbus library for bus management o Currently missing output hotplug support

Direct Rendering Manager

6 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Implemented via systemd o Supports hotkey switching o Listens for signals from kernel

o SIGUSR1 for release of VT o SIGUSR2 for acquire of VT

Virtual Terminals

7 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Implemented utilizing Eeze & Eldbus libraries o Eeze handles udev device discovery o Eldbus handles dbus interaction

o Support for libinput in progress o Some distributions have older version o No clear upgrade path

Input Devices

8 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Shared Memory Engine o Double & Triple Buffering, Transparency, Rotation o Client-Side Decorations

o Wayland EGL engine o Double & Triple Buffering, Transparency, Rotation o Buffer Ageing, Partial Swaps o Client-Side Decorations

Evas Wayland Engines

9 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o DRM Engine o Double & Triple Buffering, Transparency, Rotation o Software-based rendering (Frame buffer objects) o Hardware accelerated rendering (EGL)

o GBM-based Buffer Management o TODO: Support others (TBM, TTM, etc)

o Client-Side Decorations

Evas Wayland Engines (cont)

10 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Implemented support for Evas Engines o SHM, EGL, DRM

o Abstracts out display system (X11, Wayland) o More abstractions needed

o Fully Supports wl_shell and xdg_shell (1.6) o Minimize, Maximize, Fullscreen

o Provides internal client-side frame decorations if none are supplied

Ecore_Evas Engines

11 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o X11 with Wayland Client Support o Wayland Only o Wayland Only with X11 Client Support

Enlightenment

12 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Wayland clients fully supported o Supports wl_shell and xdg_shell (1.6)

o Minimize, Maximize, Fullscreen o Missing proper border icon support o No support for systray o No support for ICCCM/NetWM in wayland clients o Wayland clients missing cursor name support

o Rendering issue when resizing wayland clients

X11 with Wayland Clients

13 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Wayland clients fully supported o Supports wl_shell and xdg_shell (1.6)

o Minimize, Maximize, Fullscreen o Missing border icon & systray support o Clients missing cursor name support o No support for ICCCM/NetWM in wayland clients

o Rendering issue when resizing wayland clients

Wayland Only

14 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Xwayland support being worked on o Implemented as out-of-tree module

o Due to xcb dependency

o Module listens for incoming connections o Executes Xwayland server on demand

o Creates fake root window o Creates X11 backing window for clients o Not ready for release (issues remain)

Wayland Only with X11 Clients

15 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Alternative Virtual Terminal support o Support for non systemd boxes ?

o Multiple Output Configuration Support o Hot-plugging via udev ? (alternatives)

o Compositor single Ecore_Evas issue ? o Cannot use same ecore_evas on different output if

non-matching resolution in DRM

Discussion Topics 1/3

16 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Lacking features in shell protocols for desktop o No uniconify support o No systray support o No border icon support o No advertising of cursor name o No ICCCM/NetWM support

Discussion Topics 2/3

17 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Current compositor resizing issue o Clients render garbage during resize

o Xwayland Support o Out-of-tree module required due to xcb o Several patches required for core Xwayland

o Due to main loop and wl_display loop o Currently segfaults when launching apps

Discussion Topics 3/3

18 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o EFL Wayland Fully Functional o Support for DRM, VTs, Input, Output o Supports Xdg_Shell and Wl_Shell

o Enlightenment Wayland-Only usable o Requires more testing & polish

o More Information: o https://phab.enlightenment.org/w/wayland/

Take Away

19 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Evas Drm: o Christopher Michael (Samsung)

o Evas Wayland: o Christopher Michael (Samsung) o Rafael Antognolli (Intel) o Stefan Schmidt (Samsung)

o Ecore_Wayland: o Christopher Michael (Samsung) o Srivardhan Hebbar (Samsung) o Vivek Ellur (Samsung) o Rafael Antognolli (Intel) o Eduardo Lima (Intel)

Credits

20 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

o Ecore_Drm: o Christopher Michael (Samsung) o Stefan Schmidt (Samsung) o Vivek Ellur (Samsung) o Gwanglim Lee (Samsung) o MinJeong Kim (Samsung) o Moritz Bitsch

o Enlightenment (Wayland): o Christopher Michael (Samsung) o Michael Blumenkrantz (Samsung) o Seunghun Lee (Samsung) o Gwanglim Lee (Samsung) o MinJeong Kim (Samsung) o Vivek Ellur (Samsung)

Credits (cont.)

Thank you.

21 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

22 Open Source Group – Samsung Research America (Silicon Valley) © 2014 Samsung Electronics Co.

The Open Source Innovation Group is hiring for various OSS technologies including kernel, web, graphics, media, cloud. For more information, please contact:

o Guy Martin: [email protected] o Ibrahim Haddad: [email protected]

We Are Hiring