New features for U-Boot for Oneiric

Registered by John Rigby on 2011-05-20

Gather and discuss all the new upcoming u-boot features that are important and useful for Oneiric.

Blueprint information

Status:
Complete
Approver:
Ricardo Salveti
Priority:
High
Drafter:
John Rigby
Direction:
Approved
Assignee:
John Rigby
Definition:
Approved
Series goal:
Accepted for 11.11
Implementation:
Informational Informational
Milestone target:
None
Started by
John Rigby on 2012-02-22
Completed by
John Rigby on 2012-02-22

Related branches

Sprints

Whiteboard

User Stories:
1. As a Ubuntu server user I'd like to have PXE support at my supported ARM platform boot loader.

2. As a Ubuntu server user I'd like to have TFTP support at my supported ARM platform boot loader.

3. As a platform developer I'd like to get rid of X-loader (on OMAP platforms) and replace it with the u-boot SPL. This will make easier maintain the boot loaders as only one source will generate both binaries.

4. As a platform user I want to avoid having 2 bootloaders at OMAP, by being able to use SPL to jump directly at the kernel, avoid loading the full u-boot first.

5. As a platform user I want to have fastboot support at my ARM platform boot loader, so I can write my kernel and initrd with my USB cable. This will help me flashing the netinstall files without the need to flash another sd card.

6. As a platform user I want to have splash screen support since the boot loader, so I can have a fast feedback from my board.

New U-Boot features that could be useful for Oneiric (Engineering Blueprints):
1. PXE support (patches from calxeda):
   - useful for server effort
   - useless without networking support
   - calxeda is doing upstreaming so we need todo is put patches in out u-boot
   - less than a day of effort

2. TFTP support
  - needed in ubuntu
  - loic says he can use it for linaro server
  - need network support

3. network support
  - get that via on board local bus networking or usb

4. USB networking
 - recently introduced for panda
 - rsalveti has it working on Panda but very buggy
 - snowball?
 - samsung?

5. On board networking
 -  mx5x platforms have there on SOC networking
 -  some omap boards (not panda or beagle) have on board ethernet
 -  vexpress has on board SMC911X

6. SPL
 - This is the path to getting rid of x-loader
 - SPL has existed in u-boot for years but only for nand
 - Aneesh V at TI has recently submitted a new SPL that does nand and MMC (including vfat) so this can do everything x-loader does.
 - Aneesh's patches have got favorable reviews on u-boot list but lots of work remains.
 - Wolfgang has expressed the desire to be able to use SPL to load not just u-boot but a kernel for quick booting
 - We need to watch this and support it as much as we can.

7. Android fastboot
 - Could integrate support from rowboat today but that is not going upstream
 - WD has some requirements for upstreaming the one that creates the most work is:
   - Should be able to use over network as well as USB (currently usb only)
   - This idea has appeal for the validation team, They could get by with fewer partitions on sd card.
 - I believe it is image based only. It would be nice to be able to use it to download files as well as images.
 - With fastboot in out u-boot our ubuntu vs android story would have one less difference.

8. Splash screen
 - For OMAP3 patches went in as early as January 2010 but nothing was ever accepted
 - Recently Jason Kridner has been working on this.
 - Not sure how similar omap3 and omap4 dss is so not sure how much work it would be to make the omap3 patches work for panda
 - The in house u-boot for U8500 has display support it was been stripped out as part of the upstreaming to make the upstreaming easier we can put it back in.
 - mx5X display support has to be investigated
 - samsung display support has to be investigated

Comments:
[rsalveti May 20] I think the only real work here would probably be the fastboot support. Usb network, with TFTP and PXE support is also important, and then with a lower priority SPL and Splash screen (though SPL would be nice to make the boot maintenance easier). So for a Linaro BP we should list what is needed to get these features working on upstream, and the Ubuntu one would be fine to carry the patches into the package itself.

[jcrigby July 11] These need to aligned with monthly releases and upstream merge windows. Also things have changed a bit with the omap4/panda spl going mainline.

[jcrigby 22Feb2012] This is an old BP from before we switched to monthly releases/BPs. How do we retire this old BP?

(?)

Work Items

Work items:
Finish design discussion on u-boot mailing list: TODO
Propose design for ethernet version: TODO
Do first prototype by pulling implementation from rowboat project on gitorious: TODO
Changes to allow fastboot, dfu, usb network gadget, usb serial gadget to all be compiled in concurrantly: TODO
Fastboot host app working as part of u-boot tree vs Android source tree: TODO
Enable test and debug USB only on OMAP[34]: TODO
Enable test and debug USB only of MX51: TODO
Send 1st RFC USB only patch series to U-Boot mailing list: TODO
Add file access (existing patch series is image only): TODO
Test file access on OMAP[34] and MX51: TODO
Send 2nd RFC USB only plus file access patch series to U-Boot mailing list: TODO
Add prototype ethernet version to host app: TODO
Add prototype ethernet version to u-boot: TODO
Enable, test and debug ethernet version on MX51 (on board networking): TODO
Enable, test and debug ethernet version on OMAP[34] (usb networking): TODO
Send Third RFC patch series (adds ethernet support) to U-Boot mailing list: TODO
Enable, test and debug ethernet and USB versions on Samsung: TODO
Enable, test and debug ethernet and USB versions on STE: TODO
Send first complete (USB & ethernet on all four flavours) patch series to U-Boot mailing list: TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.