CompanyRemote

IMX Linux Communication Driver

Project-Based

Description

I need a kernel-space device driver written for a communication module that sits on an NXP i.MX-based custom board. The target platform runs a 4.x Linux kernel, so the code has to cleanly integrate with that series’ APIs, Kconfig and Device Tree conventions.

Scope • Develop a loadable kernel module that exposes the module’s TX/RX paths, interrupts and power-management hooks to user space. • Provide a DTS snippet or overlay that binds the driver to the correct bus, IRQ lines and clock sources on the i.MX SOC. • Supply a minimal user-space test utility (plain C is fine) that opens the character device, sends data and confirms loop-back or echo from the hardware.

Acceptance criteria • Driver inserts and removes without warnings on a vanilla 4.x kernel. • /dev node or net device appears with correct permissions and supports standard read/write/ioctl as documented. • All implemented sysfs entries follow kernel coding style and return valid data. • Source compiles with ‘make ARCH=arm CROSS_COMPILE=…’ and passes checkpatch.pl with no fatal issues.

Deliverables

  1. Full source tree (driver, DTS overlay, Makefiles, test app).
  2. Build and installation guide that covers both Yocto and direct kernel build workflows.
  3. Brief markdown explaining register map assumptions and future porting notes for 5.x kernels.

If questions come up about bus timing or pin-mux, I have schematics and scope captures ready to share. Budget: INR 1500–12500 Skills: C Programming, Linux, Software Architecture, C++ Programming, Debugging, Software Development, Embedded Systems, Yocto

Skills

Software DevelopmentEmbedded SystemsC++LinuxcplusplusC ProgrammingDebuggingEchoYoctocppSoftware ArchitectureC++ Programming

Want AI to find more roles like this?

Upload your CV once. Get matched to relevant assignments automatically.

Try personalized matching