Fastboot

Document describing what is the main usage of Fastboot, how we can implement it at U-Boot, listing the benefits.

Usage in Android

  • Is a mean to an end
  • With fastboot the user can flash the Android components at NAND
  • Without any valid image it goes to the "download mode"
  • Flash components expected to go to RAM
  • Flashing
  • Recovering image
  • Usually not expecting to flash the bootloader itself (or the first stage bootloader at least)
  • U-Boot:
    • SPL support
    • Bring USB gadget support at SPL
    • Add fastboot support protocol
    • iMX serial USB boot enabled
    • USB boot at U8500
    • Freescale USB boot
  • Why implementing Fastboot support at U-Boot:
    • Similar experience from Android users
    • Don't need to use linaro image create
    • Use one single solution that's more common available

Benefits

  • Android:
    • The install experience would be closer to upstream
    • You don't need l-a-m-c for updating Linaro Android images
    • Makes development easier, as it's also following the same procedure as described by upstream
  • Ubuntu:
    • Once available we can tune it to have the same image flashing experience as Android
      • One step closer to embedded
      • People would be able to just flash newer Ubuntu images at Phones and Tablet devices
      • Bringing ubuntu experience into a new level
    • Also provides a generic solution for USB flashing and booting
      • From first stage boot loaders for supported boards
      • From second stage boot loader (u-boot) when it's available
  • Validation:
    • Can take usage of the USB flashing and booting support at U-Boot
    • Validation farm not the primary driving factor, but also an important target

Future Planning and Development

The main target platform for now is Pandaboard (OMAP4), as it's currently the only LEB supported by Linaro.

  • Development support:
    • U-Boot SPL support
    • USB gadget support at SPL (loading u-boot/kernel from USB, like omap4boot)
    • Fastboot design discussion with U-Boot upstream
    • Implementation of the discussed protocol and availability at U-Boot
  • Roadmap:
    • 11.07:
      • SPL support for OMAP4 at U-Boot
      • USB gadget at SPL/U-Boot
    • 11.08:
      • Fastboot protocol design and implementation
      • Upstreaming 11.07 work
      • Initial SPL support for OMAP 3
    • 11.09:
      • Upstreaming 11.08 work
      • Bug fixing
      • Continuous development until the solution is upstreamable

Additional Info

Platform/DevPlatform/Fastboot (last modified 2011-07-08 19:41:59)