Operating system platforming
Welma is a cross-platform software for embedded Linux devices.
2 min
3 min
5 min
3 min
3 min
2 min
4 min
3 min
5 min
2 min
Platforming is the art of sharing software or hardware building blocks to create a common base.
The goal? Optimize development costs and, above all, maintenance costs.
In the hardware world, this means using a common module across multiple product lines, with different motherboards. This approach capitalizes on a single processor and, by extension, requires a similar logic on the software side: platformize the operating system (OS).
That’s where Welma comes in. Welma is a core platform based on Yocto, designed to share generic functionalities across multiple products. This approach provides a platform vision at the scale of a single product, but also across multiple customers, with a broad generic base.
Why platforming matters?
- Cost optimization: Reduce duplicated efforts and leverage common building blocks to accelerate development.
- Know-how rationalization: Maintain a single technology stack (Yocto + Welma) instead of multiplying specialized skills.
- Simplified maintenance: Share update mechanisms, testing, and migration processes to ensure stability.
- Anticipating product evolution: Prepare an architecture that easily adapts to new product lines or features.
- Dual sourcing: Reduce dependency on a single hardware supplier: add an integration layer for a new SoC without starting from scratch.
Yocto, a robust foundation for platforming
Yocto is designed for modularity and reuse, making it an ideal tool for platforming. Welma fully leverages its concepts:
- Metalayers: Layered organization to isolate generic features from specific adaptations.
- Recipes and BBAPPENDS:
- A recipe defines default behavior.
- BBAPPENDS allow overriding or adding specific parameters without breaking the generic logic.
- Machines:
- Yocto defines “machines” for each hardware.
- Welma builds on these definitions to create minimal adaptations in Meta-Welma-Hardware.
Read more in our article on What is the Yocto project?
Why is this so powerful?
- A single base (meta-welma) for all platforms.
- Targeted overrides to meet specific needs.
- An architecture that anticipates product evolution and sourcing constraints.
How Welma leverages Yocto to propose a modular and scalable platform
Welma is built on an architecture designed for sharing and flexibility. It relies on Yocto’s metalayer concept, which separates generic functionalities from hardware-specific adaptations.
The main layers of Wema include:
1. meta-welma (core generic layer)
This layer is the foundation of the platform. It includes all the cross-functional features essential for most products:
- OTA updates with rollback for resilience.
- Advanced security (secure boot, dm-verity, key management).
- Partition management and update agents to orchestrate maintenance cycles.
meta-welma is hardware-independent, ensuring maximum reuse and simplified maintenance.
See the list of all supported hardware here.
2. meta-welma-hardware (specific adaptations)
This layer complements the core by adding parameters specific to each hardware platform:
- Memory layout and partition definitions.
- Integration of specific drivers and low-level configurations.
- Handling SoC constraints (for example: i.MX8 → flash structure, storage zones, update hooks).
Thanks to this layer separation, integration effort is minimal, and the generic logic remains intact. This allows for minimal specifics, maximum generic, in other words simplified maintenance, fast integration on new hardware, and full support for dual sourcing.
Conclusion
For any manufacturer with a medium- or long-term product vision, the question isn’t “Should we build a platform?” but “How should we structure it?”
Welma offers a path to answer this by delivering:
- A robust generic foundation.
- Flexibility to integrate your specifics via your own metalayers.
- An architecture built to last, backed by years of experience.
Sharing costs, maintenance, and know-how: that’s platforming.

