Dynamic embedded programmer with over 15 years of experience in device drivers for Linux and RTOS. Expertise in firmware development and embedded products, including board bring-up.
· Brought up the IMX477 camera sensor on a custom board with dual CSI interfaces.
· Added memory copy functionality to the SiMa memory library with support for multi-threaded operations.
· Added I2C communication path from ISP to sensor via the V4L2 layer.
· Made CSI data lanes configurable in the MIPI CSI pipeline to support multiple camera configurations.
· Updated FPS settings for IMX477 RAW12 formats to ensure compatibility between SOM and DVT boards.
· Verified I2C-based RTC (rv3028) hardware integration on the custom board and ensured Linux driver functionality.
· Conducted functional testing to ensure accurate timekeeping and I2C communication, reducing system clock errors across reboots.
· Developed a standalone SDMA test driver to evaluate memory transfer paths: DDR to DDR, DDR to OCM, and OCM to DDR. Added device tree nodes for SDMA0 and SDMA1.
· Measured and analyzed data throughput and latency metrics for two SDMA engines present in the custom SoC.
Programming languages: C and Shell scripting
Processor expertise: OMAP3530, OMAP4460, AM3358
ARM architectures: Cortex-M3, ARM9, AM335X, Cortex-A8
Development tools: Linux device drivers and BSP support
Debugging tools: JTAG, GDB, Ftrace, logic analyzer
Build systems: Yocto, Buildroot, Make and CMake
Version control: Git and SVN
Project management: JIRA and Confluence