1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Wayland's Weston Brought To The Raspberry Pi

Wayland

Published on 07 November 2012 04:46 PM EST
Written by Michael Larabel in Wayland
1 Comment

Pekka Paalanen has published initial patches that allow Wayland's Weston reference compositor to run from the popular low-cost Raspberry Pi ARM computer.

Pekka's patches for Weston allow for a configurable Weston back-end at build time, contains a small fix to the OpenGL ES 2.0 support, and introduces a Raspberry Pi back-end for the compositor. The "RPI" back-end is around 2,000 lines of new code for Weston.

With the open-source Raspberry Pi graphics driver being lackluster, the Wayland/DRM back-end isn't applicable here so a Raspberry Pi specific back-end was written for Weston. Here's Pekka's description for how this new back-end functions:
This backend uses the DispmanX API to initialise the display, and create an EGLSurface, so that GLESv2 rendering is shown on the "framebuffer". No X server is involved. All compositing happens through GLESv2.

The created EGLSurface is specifically configured as buffer content preserving, otherwise Weston wouuld show only the latest damage and everything else was black. This may be sub-optimal, since we are not alternating between two buffers, like the DRM backend is, and content preserving may imply a fullscreen copy on each frame.

Page flips are not properly hooked up yet. The display update will block, and we use a timer to call weston_output_finish_frame(), just like the x11 backend does.

This backend handles the VT and tty just like the DRM backend does. While VT switching works in theory, the display output seems to be frozen while switched away from Weston. You can still switch back.

Seats and connectors cannot be explicitly specified, and multiple seats are not expected.

Udev is used to find the input devices. Input devices are opened directly, weston-launch is not supported at this time. You may need to confirm that your pi user has access to input device nodes.

The Raspberry Pi backend is built by default. It can be build-tested without the Raspberry Pi headers and libraries, because we provide stubs in rpi-bcm-stubs.h, but such resulting binary is non-functional. If using stubs, the backend is built but not installed.

VT and tty handling, and udev related code are pretty much copied from the DRM backend, hence the copyrights. The rpi-bcm-stubs.h code is copied from the headers on Raspberry Pi, including their copyright notice, and modified.
These Weston patches are currently floating on the Wayland-devel list.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. AMD Launches New FX CPUs, Cuts Prices On Existing Processors
  2. Preview: AMD's FX-9590 Eight-Core At Up To 5.0GHz On Linux
  3. Intel Launches The Core i7 5960X, Mighty Powerful Haswell-E CPUs
  4. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
Latest Linux Articles
  1. Ondemand vs. Performance CPU Governing For AMD FX CPUs On Linux 3.17
  2. How Intel Graphics On Linux Compare To Open-Source AMD/NVIDIA Drivers
  3. The Fastest NVIDIA GPUs For Open-Source Nouveau With Steam Linux Gaming
  4. Testing For The Latest Linux Kernel Power Regression
Latest Linux News
  1. Marek Lands Radeon Gallium3D HyperZ Improvements
  2. Mozilla Firefox 32 Surfaces With HTML5, Developer Changes
  3. Nouveau X.Org Driver Released With DRI3+Present, Maxwell, GLAMOR
  4. Microsoft & AMD Release C++ AMP Compiler With Linux Support
  5. AMD, Wine & Valve Dominated August For Linux Users
  6. Linux 3.17-rc3 Kernel Released Back On Schedule
  7. Lennart Poettering Talks Up His New Linux Vision That Involves Btrfs
  8. Mesa 10.3 RC2 Arrives Via Its New Release Manager
  9. Ubuntu 14.10's Lack Of X.Org Server 1.16 Gets Blamed On AMD
  10. MSI Motherboard BIOS Updating Remains A Pain For Linux Users
Latest Forum Discussions
  1. Lennart Poettering Talks Up His New Linux Vision That Involves Btrfs
  2. AMD graphics doesn't work with AMD Catalyst drivers
  3. Best Radeon for a Power Mac G5?
  4. The dangers of Linux kernel development
  5. Updated and Optimized Ubuntu Free Graphics Drivers
  6. AMD Releases UVD Video Decode Support For R600 GPUs
  7. SSD seems slow
  8. Is laptop with Intel CPU and AMD dGPU worth buying considering especially AMD Enduro?