Mecha Systems

A fully upstream Linux stack for a modular handheld

Mecha Comet is a modular Linux handheld. We work on its software soul, from bootloader and kernel up to the OS images, and move it off vendor forks onto mainline.

Client
Mecha Systems
Product
Comet
Role
Hardware enablement and integration
Mainline kernel

We worked with Mecha’s engineering team to move their software development to the mainline kernel and U-Boot.

Operating system images

We moved the OS images to Fedora, built with mkosi based image packaging.

  • Linux kernel
  • U-Boot
  • i.MX8MP
  • i.MX95
  • Fedora
  • mkosi
  • UEFI

The challenge

The Comet started life on NXP’s downstream kernel and U-Boot fork. Over time the downstream kernel became a limitation, as the system software needed newer kernel features and a newer graphics stack.

The goal: a fully upstream stack from the bootloader to the kernel, so the device keeps getting better long after launch.

What we did

  1. 01Moved the Kerneland U-Boot trees from NXP’s downstream fork to mainline from day 0.
  2. 02Packaged the mainline kernel the same way Fedora packages its kernel.
  3. 03Built mkosi based operating system images with Fedora as the base distribution.
  4. 04Added a UEFI boot flow in U-Boot, so other operating systems boot out of the box.
  5. 05Tested and fixed issues with Linux distributions (NixOS, Debian and more) and user interfaces such as KDE Plasma Mobile and Phosh on Mecha Comet devices.

In pictures

Mecha Systems
Comet booting mainline Linux with Fedora Linux 44
Mecha Systems
Plasma Mobile on the Comet prototype device

Upstream

Read more

Next case studyKDE Plasma and KDE Linux
KDE

Ready to sign up?

Tell us about the machine, the stack, and where it's stuck.

Start the conversation