Board Support Package (BSP) Development
Responsible for developing and maintaining Linux kernel BSP and device drivers. The BSP and Linux Driver Developer will work closely with the System Architect and other team members to support the overall objectives of the Software team.
Areas Of Responsibility
Board Support Package (BSP) Development :
- Develop and maintain BSPs for various hardware platforms.
- Customize and optimize Linux kernel and bootloader for specific hardware.
- Ensure seamless integration of hardware components with the operating system.
- Board Bring up :
- Initial Setup : Perform the initial hardware setup and bring up of new boards.
- Hardware Debugging : Identify and resolve hardware issues during the bring up process.
- Boot loader Development / Configuration : Develop, Build and debug boot loader – firmware to ensure proper hardware initialization
Driver Development :
Design, develop, and maintain Linux drivers for various hardware modules including GPIOs, PMIC, I2C, Bluetooth, Touchscreen, UART, Memory / Flash, Wi-Fi, USB, Display, Camera, Audio, SPI, Modem, Sensors, Battery Charging, and SD Card.Ensure high performance, reliability, and security of drivers.Debug and resolve issues related to hardware and driver interactions.Integration and Testing :
Integrate drivers with the Linux kernel and ensure compatibility with different hardware platforms.Conduct thorough testing of drivers, including unit tests, integration tests, and system tests.Automate testing processes to ensure high-quality releases.Collaboration and Documentation :
Collaborate with cross-functional teams including hardware engineers, software developers, and QA teams to define requirements and deliver solutions.Document design specifications, development processes, and troubleshooting guides.Continuous Improvement :
Stay updated with the latest trends and technologies in Linux kernel development and hardware integration.Participate in code reviews and provide constructive feedback.Continuously discover, evaluate, and implement new technologies to maximize development efficiency.Documentation :
Technical Documentation : Create detailed documentation for BSP and board bring up processes, including user manuals and technical guides.Reporting : Maintain logs and reports of testing and debugging activities