Optimizing Boot Flow for Qualcomm IoT SoCs using OpenSource Firmware: Status & Challenges
Emu (Nurin) | Tue 16 Apr 3:45 p.m.–4:30 p.m.
Presented by
-
Bhupesh Sharma
https://github.com/bhupesh-sharma/
Bhupesh Sharma has been hacking on bootloaders and Linux kernel since past 18 years now.
He contributes to various open-source projects like:
• Linux,
• EFI/u-boot bootloader, and
• User-space utilities like:
• kexec-tools, and
• makedumpfile.
He also co-maintains the following open-source components:
• crash-utility user-space tool
• UFS framework in u-boot.
• Qualcomm Ethernet driver in Linux.
Bhupesh Sharma
https://github.com/bhupesh-sharma/
Abstract
Using the same bootflow as suited for Mobile world applications (aimed at booting Android via Android Boot Loader) for smaller IoT platforms is not an optimal design as most IoT use-cases do not require a full Android environment.
I am working on simplifying the boot flow on Qualcomm IoT ARM platforms, by eventually trying to remove the Android Bootloader stage used in the boot-flow on Qualcomm IoT platforms (mainly starting with the Robotics family of boards).
The boot flow chain is simplified by having a Unified boot-flow on such SoCs. The optimized boot-flow involves using u-boot bootloader / firmware to load either Linux directly or load GRUB as an EFI application, which can be further used to boot Linux or RTOS flavors.
This session intends to provide a general status update and a discussion about ongoing / upcoming activities. I will also talk about the challenges faced so far and what lies ahead.
This session will also touch on how to boot a Unified upstream kernel + debian user-space on multiple Robotics boards now - thus promoting code sharing and allowing for easier maintainability.
I will also talk in brief about how u-boot drivers were written or ported for such platforms using one of the more recent Qualcomm boards as an example.
Using the same bootflow as suited for Mobile world applications (aimed at booting Android via Android Boot Loader) for smaller IoT platforms is not an optimal design as most IoT use-cases do not require a full Android environment. I am working on simplifying the boot flow on Qualcomm IoT ARM platforms, by eventually trying to remove the Android Bootloader stage used in the boot-flow on Qualcomm IoT platforms (mainly starting with the Robotics family of boards). The boot flow chain is simplified by having a Unified boot-flow on such SoCs. The optimized boot-flow involves using u-boot bootloader / firmware to load either Linux directly or load GRUB as an EFI application, which can be further used to boot Linux or RTOS flavors. This session intends to provide a general status update and a discussion about ongoing / upcoming activities. I will also talk about the challenges faced so far and what lies ahead. This session will also touch on how to boot a Unified upstream kernel + debian user-space on multiple Robotics boards now - thus promoting code sharing and allowing for easier maintainability. I will also talk in brief about how u-boot drivers were written or ported for such platforms using one of the more recent Qualcomm boards as an example.