Driver — Device Driver Development

Linux kernel drivers that work the first time. Device driver development for any peripheral, any bus, any hardware architecture.

Kernel · Embedded Linux & Device Driver Division

Peripheral Support That Belongs in the Kernel

Driver is Razetime's Linux device driver practice. We write kernel drivers for hardware teams who need their peripherals to work correctly, efficiently, and maintainably in a Linux environment — whether that is a sensor talking over I2C, a custom FPGA IP block on AXI, or a PCIe endpoint for a high-performance data acquisition system.

COMMUNICATION PERIPHERAL DRIVERS

Linux kernel drivers for I2C, SPI, UART, CAN bus, RS-485, and USB (device and host) peripherals. Character device, network device, and industrial I/O (IIO) subsystem implementations.

HIGH-SPEED INTERFACE DRIVERS

PCIe endpoint and root complex drivers, USB3 SuperSpeed device drivers, Ethernet PHY and MAC drivers, and MIPI CSI-2/DSI display and camera interface drivers.

SENSOR & ACTUATOR DRIVERS

IIO subsystem drivers for MEMS sensors, ADCs, DACs, temperature sensors, inertial measurement units, and environmental monitoring devices. Trigger and buffer support for high-frequency sampling applications.

CUSTOM HARDWARE IP DRIVERS

Linux kernel drivers for custom FPGA IP blocks, ASIC peripherals, and proprietary hardware accelerators. UIO and VFIO drivers for userspace access. DMA engine integration for high-throughput data paths.

DISPLAY & GPU DRIVERS

DRM/KMS drivers for custom display hardware, framebuffer drivers for embedded displays, and GPU driver bring-up for Arm Mali, Imagination PowerVR, and Vivante GC-series graphics hardware.

DRIVER TESTING & UPSTREAM SUBMISSION

Systematic driver testing using kernel test frameworks, static analysis, and hardware-in-the-loop validation. Upstream submission support for drivers intended for the mainline Linux kernel.

Tell us about your peripheral

Share the datasheet, the bus type, the target kernel version, and what you need the driver to do. We will scope the work and identify any hardware-side requirements before we start writing code.

Book a Meeting →