From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Kocialkowski Date: Tue, 25 Aug 2015 16:44:20 +0200 Subject: [U-Boot] [U-Boot, v5, 5/8] omap-common: SYS_BOOT-based fallback boot device selection for peripheral boot In-Reply-To: <55DC64FD.8010808@schmelzer.or.at> References: <1436968946-16025-6-git-send-email-contact@paulk.fr> <20150728145914.GT25532@bill-the-cat> <55DC29F9.8060701@schmelzer.or.at> <1440505624.9743.19.camel@collins> <55DC64FD.8010808@schmelzer.or.at> Message-ID: <1440513860.9743.23.camel@collins> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de > > If I got everything right, the bootrom is passing BOOT_DEVICE_UART as > > boot device, but you haven't selected CONFIG_SPL_YMODEM_SUPPORT. Thus, > > it falls back to asking omap_sys_boot_device, which is not implemented. > I don't think, there is everything right. Have a closer look to the #ifdef. > > #if (defined(BOOT_DEVICE_UART) && !defined(CONFIG_SPL_YMODEM_SUPPORT)) || \ > (defined(BOOT_DEVICE_USB) && !defined(CONFIG_SPL_USB_SUPPORT)) || \ > (defined(BOOT_DEVICE_USBETH) && !defined(CONFIG_SPL_USBETH_SUPPORT)) > > I have enabled CONFIG_SPL_YMODEM_SUPPORT, look at bur_am335x_common.h. > > > The real problem here is that you have not enabled support for loading > > the main U-Boot binary via UART, with CONFIG_SPL_YMODEM_SUPPORT. > > > > UART booting is unrelated to CONFIG_SPL_USBETH_SUPPORT. > No, due to the fact that defined(BOOT_DEVICE_USBETH) is allways true > (spl.h) and i don't have > CONFIG_SPL_USBETH_SUPPORT enabled, the #ifdef above: > > defined(BOOT_DEVICE_USBETH) && !defined(CONFIG_SPL_USBETH_SUPPORT) > > becomes true and the followed switch/case does the rest. Oh you're right, I hadn't thought this through. I'll think about how to solve this in the cleanest way (I wouldn't want to duplicate the ifdef logic too much). Thanks for bringing this up. > >> further i think that this construct isn't complete yet, because it > >> wants to handle all peripheral booting on AM335x or OMAP in general. > >> > >> following peripherals are currently handled: > >> > >> BOOT_DEVICE_UART > >> BOOT_DEVICE_USB > >> BOOT_DEVICE_USBETH > >> > >> but there is also > >> BOOT_DEVICE_CPGMAC > >> > >> Summary i think this changeset isn't complete. > > Can the bootrom indicate that it booted from BOOT_DEVICE_CPGMAC? > > I haven't seen that and don't really know what it corresponds to. But if > > you think it is concerned by this fallback mechanism, you could add > > support for it. I only made this for the omap devices I have (and I > > don't have any am33xx board) and I didn't want to blindly implement too > > much for am33xx. > Yes, thats possible von AM335x. > I will have a close look if it is necessary to implement here some fallback. > But probably not, because the most likely case is that "full" U-Boot > supports Ethernet and the SPL doesn't and not otherwise :-) Alright then, that's fine with me. It's okay if the fallback mechanism doesn't handle all use cases, too. -- Paul Kocialkowski, Replicant developer Replicant is a fully free Android distribution running on several devices, a free software mobile operating system putting the emphasis on freedom and privacy/security. Website: http://www.replicant.us/ Blog: http://blog.replicant.us/ Wiki/tracker/forums: http://redmine.replicant.us/ -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: This is a digitally signed message part URL: