This is a Subproject of the GTA04 and Openmoko Beagle Hybrid
It provides fully functional Linux kernels for the Openmoko Beagle Hybrid and the GTA04 as well as for devices which are currently being developed (e.g. Neo900, Pyra-Handheld).
- ARM (armel + armhf) supports OMAP3/4/5, iMX.6 and RasPi
- ARM-LPAE (armel + armhf) version is useful for OMAP5 only!
- ARM64 (arm64) is for PinePhone (and future 64 bit ARM devices)
- MIPS (mipsel) is for JZ4730 (Mipsbook) and JZ4780 (CI20)
Please refer to http://git.goldelico.com/letux-kernel-featurelist.php about the status of support for each feature/device.
|rc (latest/alpha):||6.3-rc3||changes||2023-03-20||arm arm64 CI20(mips) x86 L400(mips) arm+lpae mips replicant-arm||For alpha test: develop and test new features|
|mainline (beta):||6.2.7||changes||2023-03-20||arm arm64 CI20(mips) x86 L400(mips) arm+lpae mips replicant-arm|
|mainline (beta):||6.1.20||changes||2023-03-20||arm arm64 CI20(mips) x86 L400(mips) arm+lpae mips replicant-arm|
|longterm (beta):||5.15.103||changes||2023-03-20||arm arm64 CI20(mips) x86 L400(mips) arm+lpae mips replicant-arm|
|stable master:||5.10.175||changes||2023-03-20||arm arm64 CI20(mips) x86 L400(mips) arm+lpae mips replicant-arm|
|longterm (old):||5.4.237||changes||2023-03-20||arm CI20(mips) L400(mips) arm+lpae mips replicant-arm||
multi-platform, mature enough for daily use
supports Pyra (except Display Rotation), Letux Cortex 15, OpenPandora, GTA04, Letux Cortex 8, BeagleBoard, BeagleBone, PocketBeagle, PandaBoard, OMAP5EVM, Udoo neo, RasPi 3B+
|longterm (old):||4.19.278||changes||2023-03-20||arm CI20(mips) L400(mips) arm+lpae mips replicant-arm||
multi-platform, mature for daily use
supports Pyra, Letux Cortex 15, OpenPandora, GTA04, Letux Cortex 8, BeagleBoard, BeagleBone, PocketBeagle, PandaBoard, OMAP5EVM, Udoo neo, RasPi 3B+
|longterm (old):||4.14.310||changes||2023-03-20||arm CI20(mips) L400(mips) arm+lpae mips replicant-arm UdooNeo||
device tree based, multi-platform, mature for daily use (now including telephony)
supports Pyra (except screen rotation), OpenPandora, GTA04, Letux Cortex 8, BeagleBoard, BeagleBone, PocketBeagle, PandaBoard, OMAP5EVM
fully device tree
|GTA04||includes patches so that we can build kernels for Replicant (GTA04 and source code only)|
|longerm [EOL]:||3.12.37||GTA04||GTA04 (except A5) feature complete (incl. camera), but lacks some power management|
|longerm [EOL]:||3.12-replicant||GTA04||GTA04 (except A5) kernel modified/configured differently to better support Replicant|
|longerm [EOL]:||3.7-neil-plus||GTA04||GTA04 (except A5): good power management, lacks some features (e.g. camera)|
|longerm [EOL]:||2.6.30-rc4||jz4730||Letux 400 and other Mini-Books|
The Mainline-Plus Kernel concept (tracking linus/master = mainline)
See the branches which are based on the mainline linus/master kernel.
Basically there is a "stable" master branch and rolling release candidate branches and feature development ("work in progress") branches. Feature branches are patch set sitting on top of "letux-base". The "latest" branch is a copy of the latest "stable master" branch.
Every time Linus publishes a new release candidate (typically once per week on average), we update the letux-base branch and rebase all our new features. For example, the "letux-base" can currently be v4.19-rc2. One week later, we will have v4.19-rc3.
Then we merge all feature branches on top of letux-base and this creates e.g. letux-4.19-rc3. Note, that there is no linear history from letux-4.19-rc2 to letux-4.19-rc3 because there are rebases involved.
We also maintain long-term and stable kernels as defined by <www.kernel.org>. Every now and then, we merge in the latest stable release from kernel.org and sometimes backport important changes from the rolling release candidates.
supported devices (through different device tree files)
- BeagleBoard C, BeagleBoard XM
- BeagleBoard (C/XM) with Openmoko Beagle Hybrid expansion board
- GTA04A3, GTA04A4, GTA04A5 (Letux 2804)
- GTA04b2 (Letux 3704)
- GTA04b3 (Letux 7004)
- planned: GTA04b7 (Neo900)
- PandaBoard ES
- OMAP5432EVM + Pyra development boards
- Letux Cortex 8 (similar to PocketBeagle)
- Letux Cortex 15 (Pyra CPU-Board stand-alone)
- Letux Cortex 15 EVAL (Evaluation Board for Letux Cortex 15)
- Pyra Phone (planned)
- Udoo Neo
- Letux 400 (mostly untested)
- RaspBerry Pi 3B+
Please note that U-Boot is responsible for loading the correct device tree file.
For a list of features supported on each device, please see http://git.goldelico.com/letux-kernel-featurelist.php.
- follows the latest kernel releases and includes security patches
- based on the latest http://www.kernel.org (release candidates)
- add the latest Linux features
- have a rolling letux-base
- aim at full support of the hardware by drivers that are not (yet) in mainline ("plus")
- provide drivers for as many hardware features as possible in a clean way
- can be used in daily life
- our patches are pushed to go upstream so that the 'plus' part gets smaller and smaller step by step
- have older long-term kernels (maybe missing some features)
Features / Maturity
The branches tracking linus/master currently don't support well (please refer to [issues][Issues]):
- WiFi power management
- 3D Accelerator (PVR/SGX)
it works on the BeagleBoard XM with OpenMoko-BeagleHybrid display expander and on a BeagleBoard C w/o.
it appears that everything works (incl. audio)
not working: AESS based audio, 3D Accelerator (PVR/SGX)
Please download, test and patch the kernel tree. Please submit patches against the latest version (e.g. 4.5-rc2) and mail them to the letux-kernel mailing list. Thank you!
If you have problems with git, please refer to Contribute.
Please report all kernel issues through the "Issues" tab on this project.
There is a public mailing list dedicated to the Letux-Kernel: http://lists.goldelico.com/mailman/listinfo.cgi/letux-kernel
We actively work on the kernel and upstreaming patches, but this needs some funding for the developers. If you want to donate, you are welcome!
Building the kernel:
git clone http://git.goldelico.com/letux-kernel.git cd letux-kernel git checkout latest make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- letux_defconfig uImage LOADADDR=0x80008000 dtbs INSTALL_MOD_PATH=/tmp/kernel-modules-$$ modules modules_install cp arch/arm/boot/uImage modules arch/arm/boot/dts/omap*.dtb /mount/sdcard/boot/
You can also use git://git.goldelico.com/letux-kernel.git but this is a little less reliable on weak connections.
There is also letux_lpae_defconfig which enables LPAE and disables OMAP3+4 support.
Please refer to the GTA04 Rootfs for installation instructions of a complete distribution (bootloader, kernel, rootfs, LXDE GUI).
Controlling Hardware Features from User Space
You want to control the hardware features from user space. How this is done can be seen in the Documentation and Devices-Overview .