Ravi

140
reputation
6

First and foremost, I love writing code. I have an immense passion to explore the system architecture behind an embedded device. This passion propelled me to pursue a training on embedded system where I explored the real magic behind embedded devices. Here I have learned the key role of a kernel in an OS and its subcomponents like device drivers, files systems, user applications etc. I shaped up my C programming skills and OS concepts along with additional ASM programming skills which helped me to bag my first job as a software engineer.

So, now in industry for 7+ years, my passion remains with me. I am experienced in system programming skills such as board bring up, device driver, memory management, understanding SoC architecture and its interfaces to external devices, RTOS, u-boot porting for custom board. I leveled up my expertise in SoC architecture such as PowerPC and MIPS in recent networking projects. Successfully ported and integrated Marvell’s network chipset CPSS SDK with VxWorks RTOS. Bringing up network chipset via PCIe management interface was one of my most challenging task as I fully owned the responsibility. Right from writing PCIe Bus driver to PCIe endpoint driver, PCIe memory mapping, integrating SDK with VxWorks RTOS, chipset bring up, was quite challenging but not impossible. It leveled up my confidence to take more and more such opportunities. Now, my enthusiasm for networking is driving me to learn TCP/IP, L2/L3/L4 protocols, MAC/PHY interfacing etc.

There’s certainly yet more to learn, yet more problems to solve, and yet more to build. And for this, I am very grateful.

Specialties: Board bring up, system programming, bootloader customization and porting, kernel porting, Device Driver, hands on experience in MIPS/PowerPC CPU architecture, Interrupt handling, MMU, system memory mapping.

Skills: C Programming, Assembly programming, Memory management(MMU/TLB), PCIe, SMI/MDIO, I2C, SPI, UART, TCP/IP, RPMSG, Makefile, Strong OS fundamentals(vxworks,Linux), u-boot, Multi-core processing, AMP/SMP system understanding, inter core communication, network chipset bring up, Strong problem solving skills and debugging the failures to root cause(Lauterbach, gdb)