We provide IT Staff Augmentation Services!

Sr. Embedded Linux Engineer Resume

0/5 (Submit Your Rating)

Germantown, MD

SUMMARY

  • Software professional with 10+ years of industry experience in Design and Development of embedded Linux development for PPC / Intel / ARM processor based Single Board Computers & SOC’s
  • Expertise in porting Linux kernel source and developing Board Support Package (BSP) for various platforms including ARM AM335x cpu architectures, Free Scale PowerPC MPC 7448A, e500 and X86 with IvyBridge,SandyBridge and Haswell architectures.
  • Expertise in Board bring - up and troubleshooting the hardware registers using JTAG debugger’s along with software debugging of both u-boot & kernel
  • Worked on GPL code for mainline kernel submission of Embedded Timers, Watchdog, PCI to VME bridge drivers
  • Effectively utilized the low-level device protocol’s such as I2C, SPI and UART for variety of sensor’s, memory and console interfaces, using standard Linux Framework
  • Worked with Real-time kernels including Vxworks, RTLinux-Pro, RT-Linux, Lynx OS
  • Experience with integrating the WL1271-TiWi-BLE chip support into the embedded target along with developing Serial Port Profile framework to interact with BlueZ Stack
  • Experience with Bus Analyzers and Packet sniffers such as WireShark and SnoopyPro to analyze USB and Bluetooth communications
  • Designed and developed virtualization in Linux by developing and running multiple instances of Linux operating systems on different cores simultaneously and communicate with Hypervisor software layer
  • Expertise in Linux User space programming includes PThread managed with POSIX Inter process communication interfaces and synchronization mechanisms
  • Experience with hardware schematic’s and waveform analyzers to solve hardware challenges
  • Designed and Developed C++ Framework and Interfaces to access hardware by abstracting the hardware and provide code reusability with Design patterns
  • Expertise with Hardware debugger such as LauterbachTrace32, OpenOCD compatible Jtag debuggers along with XDS100v2 on-chip debugger
  • Experience in Linux user debugging using DDD, GDB, and application automation using systems events which includes UEvent, Udev and DBus objects
  • Efficient utilization of Code Composer Studio and Eclipse IDE to Compile, Integrate, and Deploy over the Embedded Target Hardware

TECHNICAL SKILLS

Programming Languages: Embedded C & C++

Processors: ARM AM335x, PPC-7448A,e500 & Intel x86 64, IXP425

Embedded RTOS: Wind River Linux (RTOS), RTLinuxPro & Lynx-5.0

Operating Systems: Linux kernel (2.2 / 2.4 / 2.6 / 3. x)

Hardware Protocols: ISA, PCI, PCI-e, I2C, SMBus, SPI, USB, Bluetooth

Networking Protocols: TCP/IP, UDP & RTSP

Hypervisors: Wind River Hypervisor & XEN Hypervisor (Bare metal)

Debuggers: Arium,GDB, KGDB & Wind River ICE, OpenOCD

Tools: Perl Shell Scripting, AWK, SED, Gprof, Valgrind,Makefile

Graphics Framework: Qt 4.x

PROFESSIONAL EXPERIENCE

Confidential, Germantown, MD

Sr. Embedded Linux Engineer

Responsibilities:

  • Board bring-up of custom designed hardware, with AM3359 processor, along with TMS320C6414 DSP processor & customized FPGA, bring up involves pin muxing and on-board peripheral initialization.
  • Designed & Developed driver for integrating AM3359 Core with DSP (TI6416) 1GHz single core using 16-bit HPI (Host Port Interface)
  • Developed USB Gadget driver, exposing the composite (Dual) functionality, utilizing one interface as communication channel for streaming commands and other exposes mass storage functionality to expose the on-board MMC memory to Host ( Linux/Windows).
  • Designed and Developed FPGA & HPI device drivers which provides interface for controlling (Power Management),devices under FPGA, such as controlling RF board and also Enable/Disable Wi-Fi and Bluetooth modules
  • Utilized the Quartus-II Altera tool to verify and validate the signals generated by the DSP Controller’s HPI matches the timings of ARM AM335x
  • Developed Bluetooth Framework for which includes providing device support for Bluetooth modules such as Ath3k,Btusb,RFCOMM,HCI and also involves developing Serial Port Profile to transmit the RF data to android based tablet
  • Expertise with LauterbachTrace32 debugger along with XDS100v2 on-chip debugger
  • Debugging Experience of USB gadget devices through proprietary tools such as Ellisys USB Explorer 280 debugger
  • Expertise in analyzing Bluetooth transactions using IDE tools such as (WireShark) to analyze the Data and Command packets from low-level HCI and LMP layers

Confidential, Santa Clara, CA

Embedded Linux Developer

Responsibilities:

  • Board Bring-up of cortex-A variant Am3358 which includes customizing the u-boot and Linux kernel both for high and low power modes.
  • Designed and Developed the Framework in C++ to validate the Setup-Box license thereby restricting the unauthorized media content.
  • Working with on-board 16 bit NAND which is flash by loading the firmware image to NAND through SPI bus, later booted the FPGA from programmed firmware.
  • Developed user Intrusive Graphical Interface using QT Framework to communicate with the hardware devices using observer and interrupt patterns
  • Cross compiled Linux File system from the scratch with minimal DietLibc and Linux kernel along with experience in utilizing the bit-bake recipes
  • Debugged kernel boot-up issues on various modules by coordinating with the Hardware and Codec engineers
  • Documentation with Doxygen which illustrates the class Hierarchy including functionality

Confidential, Huntsville, AL

Embedded Linux BSP developer

Responsibilities:

  • Designed and Developed Virtualization in Linux, through with each core becomes capable of executing independent Linux image
  • Worked on proprietary Wind River Hypervisor to provide virtualization along with open source XEN hypervisor
  • Board Bring-up of PowerPC MPC7448, E600 based processor boards using u-boot loader
  • Built Linux target by cross compiling kernel and file system components for custom based e600 and MPC7448 based PowerPC platforms
  • Developed and integrated Power On Self-Test under u-boot to execute the diagnostic tests and store the results to NAND Flash
  • Design & Development of BSP for SBCs based on ARM and PPC architectures under Linux Kernel versions 2.2/2.4/2.6/3. x, Wind River RT-Core(Real Time) & Lynx OS 5.0
  • Designed and Developed Embedded Hypervisor & Linux BSP and guest device drivers
  • Design and development of Device Drivers and User APIs for On-Board peripherals over I2C/SPI and its associated memory devices, developed drivers for USB, PCI, PCI-VME Bridge, DMA controller, Reflective Memory, Timers, Watchdog, GPIO & NVRAM devices under Linux OS
  • Developed Device Tree for existing BSPs and new devices to support various flavors of PowerPC boards with a unified Kernel image
  • Improved Product testing process by automating test framework using Shell/Perl

Confidential

Assistant Systems Engineer

Responsibilities:

  • Developed drivers and Bus framework for VME and CPCI based back plane bus
  • Designed and Developed the test suite with various tests to analyze the CPU performance and on-board peripherals including logging up the results
  • Worked with Bus Analyzer and packet sniffers to monitor the VME bus using proprietary based Curtiss-Wright VMETRO analyzer to analyze and optimize the hardware flow
  • Designed a Reflective Memory based network, for communicating with various devices within the network path, also designed and tested the placement of bus repeaters to avoid packet loss during the communication
  • Generated Code with Rational Rhapsody tools along with code flow analysis diagrams
  • Effectively communicated with different teams/modules to finalize the interfaces using the Proprietary SCRAMnet bus and thereby estimating the load balancing

Confidential

Software Engineer

Responsibilities:

  • Developed a Linux kernel module to communicate with SCRAMnet through PCI / ISAPNP or RS232 interfaces available to the CPU
  • Implemented the SCRAMnet protocol over the Curtiss Wright chip under Linux kernel versions 2.2/2.4/2.6
  • Designed and developed QT based GUI to control the Digital Input and Output (DIP/DOP) and Digital to Analog Converter (DAC) functionality of the Test Jig Simulator by directly talking to the device from user level by mapping the device memory in the earlier stage
  • Developed test code in user context to validate the hardware and SCRAMnet protocol implementation and presented the report in GUI using QTW classes
  • Implemented the RFC 2326 RTSP protocol and integrated with RTP

We'd love your feedback!