Writing Linux kernel code: device drivers, board support code, fixing bugs…
There are several things we could do for you: 
- Write board initialization code, to make Linux boot on your hardware.
- Write Linux device drivers, whatever their type (PCI, USB, Ethernet, audio, video, MTD, CAN…).
- Port a feature to your hardware. For example, we could port the realtime preemption patches and high resolution timers work well on your board.
- Mainline the Linux kernel code that you’re using, i.e. making the official kernel sources support your hardware.
- Implement power management support, both in software and taking advantage of hardware capabilities
- Reduce boot time, by optimizing existing drivers and system initcalls.
- Hunting for bugs in your kernel code (timing / latency issues, race conditions, out of order execution…), or investigating the ones you report, and then fixing them.
Reasons for choosing us for this job:
- We already contribute to the Linux kernel, in particular through the Linux Tiny project to reduce the size of the kernel for dedicated systems. See our contributions.
- We will write kernel code in a way that it can be accepted (merged) in the official sources, in particular by asking the kernel and architecture development community to review our code.
- We know the kernel development community very well. We know who / where to ask for specific questions, and we are familiar with implementing solutions that the community will accept.
- By working with the community, we can get valuable feedback and suggestions early in the development process, avoiding major mistakes, and reducing our overall development costs.
- Working on the kernel is what we are most interested in
.
Back to our main development page.
