Merging the code we development into mainline sources, at no extra cost
This applies when you ask us to develop device drivers or even entire BSPs for your hardware (bootloader, kernel, drivers) for your hardware. After making the final release to you, we can work on having the new code accepted in the official Linux kernel and U-boot sources, without any extra charge for you.
As explained in our mainlining page, achieving this brings multiple benefits to your company and to your customers.
Once the code we created for you is released in the mainline versions, its maintenance is taken care of by the development community, including by ourselves. We will still do our best to stay involved, and help maintaining our code.
Of course, we only do this mainlining work if you allow us to do so. The final decision is yours.
Requirements
Conditions to benefit from this offer:
- You need to order kernel or BSP development from us. This could also apply to other Free Software components (ask us).
- We need your approval to show the code to the development community, as early as needed, even before the code is ready to be released. This allows us to get early peer reviews, and make design decisions that will be allow the code to be accepted in the mainline sources.
- We need your approval to produce code with the same license as in mainline sources (GPL v2 for the Linux kernel and U-boot).
- We need to keep your hardware samples a little more time, until mainlining work is over (at most 6 to 12 months).
Questions and Answers
Q: How can you do all this mainlining work with no additional cost?
A: Being part of it, we already know the community very well, and by following technical discussions, we know how to create code that will be accepted by upstream developers. Thanks to early peer reviews, we can also make the right design decisions from the start and later minimize the changes to get our code accepted. By working from inside the community, we therefore reduce our development costs in a very significant way.
Q: Why do you propose to do this?
A: First, because we would do it anyway if allowed by our customer and if we still have the hardware. Having hardware supported by the official Linux kernel sources is in everyone’s best interest (except perhaps for your competitors). Second, because having one’s code reviewed and eventually accepted by the best programmers in the universe is the ultimate source of pride
.
Q: To which projects does this mainlining offer apply?
A: It applies to projects we know well enough to be sure we can manage to get code accepted: the Linux kernel, U-boot, buildroot, and BusyBox. For other projects, we will also do our best to merge our changes upstream, for everyone’s best interest. However, we may not guarantee that this will be successful, as it also depends on the good will and availability of the corresponding maintainers.
Q: How long can this work take?
A: It can take up to a few months and a few releases before all the features are accepted in the upstream sources. With the Linux kernel, for example, if we miss the merge window for the next version, we have to wait for the next merge window 2 to 3 months afterwards to get another chance.
Q: Can you work with devices with NDA protected documentation?
A: This is not a problem for us. We can sign Non Disclosure Agreements, provided these NDAs don’t forbid to develop Free and Open Source software based on the confidential documents.
Back to our main development page.
Version française
Quarterly newsletter
Follow new articles