U-Boot Developer
Tata Elxsi · Chennai, Tamil Nadu, India - Hyderabad, Telangana, India
Tata Elxsi · Chennai, Tamil Nadu, India - Hyderabad, Telangana, India
Role Summary The Kernel Boot & Baseport Engineer is responsible for bringing up and enabling the Linux kernel on new hardware platforms (SoCs/boards). The primary goal is to ensure the kernel boots successfully and supports required hardware features. Key Responsibilities 1. Kernel Platform Support, Bring-up, Boot & Baseport - Bring up the Linux kernel on new platforms (boot to console/Android UI) - Enable basic functionalities (CPU, memory, interrupts, timers) - Debug boot issues such as crashes, hangs, and panics 1.1 Core Responsibilities: - Bring up Linux on new ARM-based hardware platforms - Debug early boot issues (pre-kernel and post-kernel) - Work on: - Kernel image loading (zImage/Image/uImage) - Initramfs/rootfs mounting - Boot arguments and environment setup - Collaborate with kernel teams for boot-time dependencies and integration 1.2 Image Packaging & Distribution - Implement and maintain boot image packaging workflows - FIT images (Flattened Image Tree) - Boot.img, DTB bundling, multi-image packaging - Support flashing, provisioning, and OTA updates - Work with Yocto/OpenEmbedded for boot components - Ensure compatibility across distributions (Yocto, Ubuntu, etc.) 2. Kernel Development & Porting - Port kernel features across versions/platforms - Modify kernel code for new SoCs/boards - Maintain and optimize kernel performance and stability - Work on drivers and BSP components for platform bring-up 3. Debugging & Performance Optimization - Debug kernel issues using logs, traces, and tools - Fix boot failures, crashes, and performance bottlenecks - Optimize power and CPU performance Required Skills Core Technical Skills - Strong C programming and data structures - Good understanding of: - Linux kernel internals - Boot process, SMP, scheduling, memory management - Experience with debugging tools (ftrace, perf, logs)