HamburgerMenu
hirist

Embedded Device Driver

SEMI LEAF
Bangalore
5 - 15 Years

Posted on: 24/11/2025

Job Description

Job Title : Linux PCI Device Lead

Experience : 8 to 10+ years

Key Responsibilities :

Architect and Lead PCI Subsystem Development :

- Drive design, development, and maintenance of PCI and PCIe subsystems and drivers in the Linux kernel.

- Ensure seamless enumeration, configuration, power management, and hotplug support for PCI devices.

Device Enablement and Bring-up :

- Lead platform bring-up activities involving PCI/PCIe devices (e.g., network, storage, GPU, NVMe).

- Validate and debug device-tree or ACPI configurations for PCI host bridges and endpoints.

Kernel and Firmware Interaction:

- Collaborate with firmware/bootloader teams for correct BAR, MSI/MSI-X, and IOMMU configurations.

- Work closely with architecture teams to support secure boot and DMA protection for PCI devices.

Performance and Power Optimization :

- Analyze PCI bandwidth, latency, and power bottlenecks.

- Implement ASPM, LTR, and other low-power states in compliance with PCIe specs.

Debugging and Issue Resolution :

- Use Linux tools (lspci, setpci, tracepoints, ftrace, perf, etc.) and oscilloscopes/analyzers for low-level debugging.

- Root-cause platform PCI failures and compatibility issues across hardware and kernel versions.

Upstream and Compliance :

- Contribute patches upstream to the Linux kernel PCI subsystem.

- Ensure compliance with PCI-SIG and Linux kernel community best practices.

Cross-Team Collaboration :

- Interface with SoC, BIOS/UEFI, board, and validation teams to ensure robust PCIe device support across platforms.

Required Expertise :

- Deep understanding of Linux kernel internals, especially drivers/pci and subsystems like hotplug, MSI, IOMMU, DMA API.

- Hands-on experience with PCIe Gen3/Gen4/Gen5 devices and related PHY bring-up issues.

- Familiarity with ARM64 and x86 architectures, DT/ACPI handling for PCI devices.

- Proficient in C programming, Linux kernel debugging (GDB, crash dumps), and tools like dmesg, lspci, pcie_check.

- Expertise in power management (runtime, suspend/resume flows) for PCI devices.

- Experience with Secure Boot, TrustZone, and virtualization passthrough (VFIO/SR-IOV) for PCIe devices is a strong plus.

- Experience using Yocto, Buildroot, or other embedded Linux build systems.

info-icon

Did you find something suspicious?