Linux Device Driver Development
After working for over 28 years SaM Solutions has established itself as a professional partner in providing one-stop high-quality firmware for various smart hardware appliances. Our programmers are experts in writing Linux device drivers. They are equipped with top-of-the-line tools and skills to provide efficient and cost-effective solutions for businesses of any size: from startups to multinational companies.
The market of smart appliances empowered by Linux or Android OS is rapidly growing. However, embedded software is also extremely segmented with nearly every manufacturer aiming to create a unique interface, firmware and set of applications for their hardware solution, be it a satellite receiver, a car multimedia system or a CNC-controlled laser cutter. The diversity of hardware platforms requires equally an diversified approach to creating firmware which will be effective in terms of price and time of the development.
SaM Solutions enables hardware manufacturers to rely on customized firmware for their products and to leverage our 28+ years of experience in Linux device driver development services working on a comprehensive portfolio of projects and a wide range of appliances and platforms:
- Network appliances (NAS, routers, Enterprise and SOHO servers)
- Consumer electronics (e-books, set-top boxes, GPS navigation systems, media boxes)
- Smartphones and tablets
- Industrial equipment
- Experimental and scientific equipment
- Self-service (payment) terminals
While it may be very expensive and hard to hire Linux device driver developers, due to varied specialities in this business, nearshoring is a solution that helped many of our clients. The development processes being very flexible, are easily integrated into the existing projects or serving as a dedicated team for Linux device driver programming services.
FAQ
Generally, it’s enough to have:
- the documentation for the target platform on which the device is installed/soldered;
- the documentation for the device for which the driver needs to be implemented;
- the hardware itself (in order to be able to verify the driver is working);
- BSP (exact version used to build either the kernel/complete firmware with the kernel/bootloader/user-space applications, e.g. exact Yocto version and dependencies if applicable);
- toolchain (exact version);
- Additional tools (if required), e.g., hardware debuggers (SEGGER JLink, AVR-ICE etc).
We build drivers for network appliances, consumer electronics (e-books, set-top boxes, GPS navigation systems, media boxes), smartphones and tablets, industrial equipment, experimental and scientific equipment, self-service terminals.
Yes, we carry out driver testing.
It is important to know the exact version of the Linux kernel, on which the driver/module should be available. Depending on the kernel version, different API calls may be available. It means that what works on one kernel version might require additional effort to compile and run on another version.
REQUEST A QUOTE
Is your request beyond the contact form? Prefer more personal communication? Send us an Email and we will get back to you as soon as possible!
Please, do not hesitate to share any of your ideas or demands with us. Clear-cut project requirements, a sketchy concept of a future software or any other concern, - we will help you address it, just let us know.