Linux kernel development

Writing Linux kernel code: device drivers, board support code, fixing bugs…

There are several things we could do for you: CALAO usb9263 board

  • 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 are very familiar with contributing to the mainline Linux kernel, in particular to add support for new SoCs (System On a Chip) and for new boards. See all 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.
  • Being community contributors ourselves, 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 wink smiley.

Back to our main development page.