Difference between revisions of "Tasks"

From Linux Exynos
Jump to: navigation, search
(Created page with "= Tasks = This page is an initial stab at listing the many open tasks. The title, placement and contents of this page are also open for change. == Documentation & Wiki tasks...")
 
(updated tasks, descriptions, and a bit of a common guideline.)
 
Line 1: Line 1:
= Tasks =
+
== Introduction ==
  
This page is an initial stab at listing the many open tasks. The title, placement and contents of this page are also open for change.
+
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.
  
== Documentation & Wiki tasks ==
+
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 ==
  
* Provide an overview of what drivers went mainline in which version, and what is planned. (For all devices)
+
* 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.
* Like the above page, provide an overview of open kernel/driver tasks that people can pick up
+
* 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 <tt>crossdev</tt> 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.
  
* Building mainline-uboot for various devices: (Snow, Spring, Peach-Pi, Peach-Pit)
+
== Upstream Linux kernel ==
* How to add a serial to Snow, Peach-Pi, Peach-Pit, Spring
+
 
* Status regarding Arndale boards (There are not many people actively working on support for Arndale, at least in our IRC channel)
+
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.
* Status regarding ODROID boards (mostly the U2 and U3 are documented, iirc)
+
 
* Collecting various information from the wiki and creating proper guides
+
* 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.
* How to set up a development SD card for Snow/Peach-Pi/Peach-Pit.
+
 
* How to set up a cross compiler (Or: link to the sunxi wiki)
+
== Userland ==
* Per device status overview.
+
 
* Pictures of devices, other information
+
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 [[MFC|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 [[G2D|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.

Latest revision as of 01:37, 26 February 2015

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.