Tasks

Contents

Introduction

This page contains various tasks that you can and should pick up if you have some spare time, and want to contribute something to the wiki. The more the merrier. As a common courtesy it is encouraged to put your signature next to the task to inform others that you will be working on it. This will both ensure that people know what tasks haven't been picked up yet, and who to contact in case they want to help you out.

In order to maintain a proper quality of the wiki, it is encouraged to write articles within your own namespace. That way they can be reviewed thoroughly, before being put in the global namespace.

linux-exynos.org

At the moment, there is little overview of what drivers have been upstreamed, are currently being upstreamed and haven't been upstreamed yet. It would be convenient to have such a list for each hardware component, as many of these are being shared between the many devices, or for each device, as some hardware components may only be present in a select few devices.

Some of our devices may already have upstream u-boot support. However, these is no documentation on how to build it for these devices yet. As such, it would help if guides could be written for these particular devices (e.g. the Samsung Chromebook XE303C12).

Many devices have solder points available that offer access to a serial interface. A guide on locating these, and possibly attaching a serial cable, would be more than welcome.

Unfortunately, there a few people who actively work on support for Arndale. Therefore, it would be interesting to see a status report for these boards.

Even though the ODROID U2 and the ODROID U3 are well-documented. Other products coming from ODROID are less so. As a result, it would be nice to have a status report for these boards at minimum. Even more beneficial would be additional documentation for the more uncommon boards.

In general, it would be convenient to have a status report for each device, or set of devices. Just to know where we are standing today.

For the Chromebooks, we are still missing a guide on how to set up a development SD card for those. This can be fixed by writing a guide and providing some pre-built images.

As many people aren't running a multitude of ARM devices, setting up a cross-compiler is necessary for them. For these people it would thus be useful to have a guide on how to set up a cross-compiler. Although, this will likely vary per distribution (e.g. Gentoo simply provides the crossdev script for this). Alternatively, we could provide a link to the guide on linux-sunxi.org.

At the very moment, linux-exynos.org is very dull. Considering that there are very few pictures. If you have five minutes, a photo camera and a device of which there is no picture on linux-exynos.org yet. Then please, do consider uploading a photo of it.

Upstream Linux kernel

As there are no status reports for the various devices yet. It would be wise to start working on these first. That way, we can determine what tasks concerning the Linux kernel are still open.

Samsung has worked a lot on the DRM API for Samsung Exynos. However, this API seems to be far from stable. As an example: the Exynos DRM API as available in 3.4 and 3.8 seem to be completely useless as they cannot deal with external displays and kernel mode setting (KMS). It would be interesting to know if these issues persist in later versions of the Linux kernel, and what is causing these issues exactly.

Userland

Again, it is uncertain as to what should happen for the userland exactly without some status reports. Despite the fact that these are lacking, here are some ideas that should get us started:

The Samsung Exynos offers a dedicated hardware unit for video encoding and decoding, which is called Multi-Format Codec (MFC). Some people have worked on getting this unit to work. As a starter, it would be nice to get an idea of where we are now regarding the MFC. Furthermore, there should be a register guide, guides on getting software to work, and possibly a project to get some kind of driver that can be used by most FOSS projects (e.g. VDPAU, GStreamer, etc.)

In addition to the aforementioned unit, the Samsung Exynos also offers a dedicated hardware unit for hardware 2D acceleration, which is called Fully Integrated Mobile Graphics 2D (FIMG2D or G2D). At the moment, there is no DDX driver as of yet using this hardware unit.

What would be even more beneficial than 2D hardware acceleration is proper support for KMS in a DDX driver. However, this is closely related to the issues with the DRM API that seem to exist up to today.