On Jan 22, 2013, at 12:42 PM, David Woodhouse <dw...@infradead.org> wrote:
> On Tue, 2013-01-22 at 12:16 -0800, Andrew Fish wrote: >> >>> ... So why does BdsLibEnumerateAllBootOption() insist on a messaging >>> device path node? >> >> It is a bug in the BDS. The BDS should do something smarter in the >> switch default case if the heuristic fails. > > Thanks. That is the answer to my original question in the mail which > started this thread. > > I may attempt to fix the BDS code. But then again, I also now realise > that this has *nothing* to do with the selection of devices for legacy > boot, which is a completely *separate* iteration over block devices, > with completely *different* bugs regarding which devices get included > and which don't :) > > The legacy boot case is much worse, in fact. It *only* offers IDE > devices on the native IDE controllers, and the floppy. Nothing else gets > listed at all. Sounds like more "bad" heuristics. I'm guessing you need a UI to select the BBS IPL Table (and that would cover BEV devices) and another UI to select BCV priority. If you want to avoid the UI craziness it may be possible to detect all BEV devices and make boot options for each one. That way the BEV devices would at least show up in the boot selection menus. The EFI device path node is basically BBS Device Type + BBS Status Flag + BBS String. Thanks, Andrew ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnnow-d2d _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel