Senior Embedded Engineer with 8 years’ experience in Application/Middleware/Device Drivers (Linux & Bare Metal) development. Strong Knowledge in Linux kernel concepts and drivers.
Good experience in Ethernet, I3C and security protocols.
Ethernet CTests
Ethernet CTests is bare-metal c code used to validate the DesignWare Ethernet controllers in both simulation and FPGA.
a. Realized the concept single-handedly from scratch - designing architecture, developing platform components, bare-metal drivers.
b. Developed Bare-Metal driver for the DWC Enterprise Ethernet Media Access Controller (MAC) IP supporting upto 100Gbps. Driver supports features - 32/64bit DMA operations, ARP offload, PMT, TSO, RSS, EEE, Filtering, SA Insert/Replace, RMON, Bandwidth Allocation, Split Header, Checksum offload, VLAN etc.
c. Developed Bare-Metal driver for the DWC Ethernet Quality-of-Service (QoS) Controller IP supporting real time networking - implemented framework for validating AVB, EST(IEEE 802.1Qbv), FPE(IEEE P802.1Qbu & IEEE P802.3br) and TBS features.
d. Ported lwIP network stack and PTP2.0 stack for CTests.
e. Enhanced Packet-generator utility for bandwidth testing and TSN features.
UFS Linux Driver - Inline Encryption Support
Developed and submitted kernel patches for Inline Encryption(IE) support in Linux kernel and supporting UFS block device driver for same.
a. Study on feasibility and scope for supporting Full-Disk and File-based encryption support using IE capability of block device.
b. Enhanced Bare-Metal driver for multi-key configuration, slot selection.
c. Modified dm-crypt subsystem, ext4 fs crypt, bio layer etc.
I3C CTests
I3C CTests is used to validate the DesignWare MIPI I3C controllers that can be configured as I3C Master/Slave/Secondary Master.
a. Brain-stormed on devising subsystem for carrying out validation of Secondary Master features.
b. Developed Bare-Metal driver for the CDR module, DWC I3C Master, Slave, Secondary Master and Slave-Lite controllers. Tested features like Private Transfers(SDR, HDR-DDR, HDR-TSL/TSP mode), CCC commands, In-band Interrupting, Error detection/recovery.
c. Developed Application for AOSC use case - Scheduling commands, Auto-commands, Vendor-specific CCC etc.
Storage Encryption Driver
Storage Encryption Driver is developed for the Canon Hardware IP to perform the Block device encryption (AES XTS) on the storage media. This protects the device’s contents even it has been physically removed from the system.
a. Involved in the implementation of the Linux platform driver for the encryption hardware module. Driver registers encryption algorithm with the LKCF and receives the synchronous and asynchronous requests from the device mapper module of the Linux kernel.
b. Programmed the DMA controller module for the payload transfer.
c. Modified the DM-Crypt subsystem of the Linux kernel for the performance optimization.
d. Developed Python based automated test framework for the Unit, Join, Integration and the Performance testing of the driver. The unit testing is accomplished using a character driver which calls the registered cryptography APIs of the DUT.
Secure Boot
Secure Boot is method of ensuring that the system firmware is trusted.
a. Designed and Developed the ECC Bare-Metal Driver for performing the Boot Image authentication during the Secure Boot process.
b. Enhancements to the existing cryptography driver for supporting various Secure Hash and Encryption algorithms.
c. Development for the PC based Boot Image Generator based on Python and OpenSSL.
d. Performance analysis and optimization of the Secure Boot process.
e. Vulnerability analysis and testing of the Secure Boot ROM code.
f. Unit and Integration testing; Identifying and fixing the bugs in the Secure Boot solution.
g. Responsible for patent analysis activity for identifying any infringement of patents and to generate new patent ideas.
ONVIF
ONVIF is an open industry forum that defines the standard interfaces for the interoperability of the IP-based products.
a. Responsible for handling the Change Requests for the firmware released for the Network Video Surveillance cameras.
b. Took major role in the implementation of the new features like the Media2.0 configuration support for ONVIF in the camera firmware.
c. Writing the Test plan, adding test cases for newly implemented features; Identifying, reporting and fixing of the bugs.
d. Collaborating with the internal and clients regarding the status and the Issue resolution.
CITRON Multi-Core Driver
CITRON is Cryptography IP that includes symmetric and hash cryptographic engines, True Random Number Generators (TRNGs), Public Key Accelerators (PKAs) etc.
a. Ported the Linux Multicore Driver for the newer version of the Cryptography IP.
b. Implemented dynamic priority scheduling to replace the existing less efficient schemes.
c. Implemented zero-copy mechanism in the driver for performance optimization.
d. Fixed the major bugs in the driver like the IPsec related issues.
e. Ftrace profiling and the performance optimization of the driver.
Secure PumpPAY POS Application
Secure PumpPAY is VeriFone’s PCI-approved outdoor payment hardware for Petrol Stations, convenience stations and super markets. The device is based on 32 bit ARM processor running Secure Linux Operating System.
a. Responsible for complete support of Legacy payment application of the devices, i.e. documenting new requirements, design, development, testing, deployment and integration.
b. Designed and developed framework for media support in the device for features like Advertisements, Lottery, Coupon, Weather Services etc.
c. Implemented Lift Retail Technology as an add-on to the existing payment application which is intended to provide Targeted Ads and promotions to the customers based on Histogram, Day Parts etc.
d. Developed Watchdog service for the device for monitoring that the applications for the CPU usage, restarting the applications in the case of an unlikely event etc.
e. Developed various Java-based applications like SPP Manager, Package Manager, Printer simulators which helps in testing and development of the payment application in device.
f. Ported the legacy payment application to a different DCR.
g. Ported open source libraries for HTTP support (Curl), QR Code generator, MPlayer etc.
ViperPay PinPad Application
ViperPay is payment software running on VeriFone’s PCI-approved Multimedia-Capable Mx Devices used in convenience stations and super markets. The device supports value-added services such as advertisements, administrating loyalty schemes, gift card issuance and top-up services.
a. Took a major role in the implementation of EMV support to the existing legacy payment application which is a global standard for credit and debit payment cards based on chip card technology.
b. Responsible for providing VHQ support to the PinPad devices which is powerful and extensive estate management solution that allows remote access and provide media content broadcasting to the device.
c. Fixed major site issue causing the socket disconnection of the terminal from the host after a certain period of time.
d. Developed various simulators that aid the testing of the payment software in the device such as Host simulator, Proxy server etc.
VeriFone Automn
VeriFone Automn is Java based Test Automation tool used for conducting regression tests on all devices used for Petro Payment. The main approach used by the tool involves Code-driven and Graphical user interface testing.
a. Responsible for providing support to the application, which involves development of test engine, fixing any bugs in application, implementing new features.
b. Developed libraries for providing automation support for the devices involved in the automation.
.
Linux Device Drivers, Kernel Concepts
undefinedThis certificate is presented for taking initiative for setting up GUI based demo project during the general assembly event of the company.
Non-provisional US patent filed on "Key Protection using Noising and De-Noising scheme" - Patent Record ID: 81115317
AMCAT Certified in English Comprehension - Aspiring Minds, License 663427-283
AMCAT Certified in English Comprehension - Aspiring Minds, License 663427-283