From: Paul Kocialkowski <contact@paulk.fr>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v4 5/8] omap-common: SYS_BOOT-based fallback boot device selection for peripheral boot
Date: Thu, 09 Jul 2015 10:27:38 +0200 [thread overview]
Message-ID: <1436430458.2326.7.camel@collins> (raw)
In-Reply-To: <559E29CB.3040706@ti.com>
Le jeudi 09 juillet 2015 ? 13:29 +0530, Lokesh Vutla a ?crit :
> On Friday 03 July 2015 01:23 AM, Paul Kocialkowski wrote:
> > Le jeudi 02 juillet 2015 ? 15:10 -0400, Tom Rini a ?crit :
> >> On Thu, Jul 02, 2015 at 12:19:41AM +0200, Paul Kocialkowski wrote:
> >>> OMAP devices might boot from peripheral devices, such as UART or USB.
> >>> When that happens, the U-Boot SPL tries to boot the next stage (complete U-Boot)
> >>> from that peripheral device, but in most cases, this is not a valid boot device.
> >>>
> >>> This introduces a fallback option that reads the SYS_BOOT pins, that are used by
> >>> the bootrom to determine which device to boot from. It is intended for the
> >>> SYS_BOOT value to be interpreted in the memory-preferred scheme, so that the
> >>> U-Boot SPL can load the next stage from a valid location.
> >>>
> >>> Practically, this options allows loading the U-Boot SPL through USB and have it
> >>> load the next stage according to the memory device selected by SYS_BOOT instead
> >>> of stalling.
> >>
> >> Can you elaborate on this more please? The normal flow is that you load
> >> SPL via UART and then load U-Boot via UART, or SPL via USB RNDIS and
> >> then U-Boot via USB RNDIS. It sounds like you're changing things so
> >> that you load first via UART and then via say SD (or whatever the pins
> >> would be set for) unless you have the bits enabled for loading the next
> >> stage via that peripheral, which is the default case.
> >
> > Well to be honest, I haven't tried loading the main U-Boot binary via
> > the USB ethernet gaget, after loading the U-Boot SPL via USB with the
> > omap bootrom. Perhaps this would have worked just as well, but it isn't
> > enabled for the OMAP3 and I thought it would be easier to just load from
> > e.g. the MMC.
>
> No, this is not the normal convention.
> Since you are able to load SPL via USB ethernet gadget,
The bootrom is not making any USB ethernet gadget available, it's using
its own USB bulk protocol that is defined on the TRM. But I reckon it's
"USB booting" either way.
> you should be able to load u-boot also. USB ethernet gadget should be
> enabled in SPL.
I'm not saying it should not. This would be a useful feature and loading
both parts via USB makes sense.
> >> Now, I know you didn't do this just for fun, so what's the use case you
> >> have here exactly? Thanks!
> >
> > My use case is a bit specific: the device I have only has UART Tx
> > available (so I cannot send anything) and USB available. Hence, I needed
> > a way to load the main U-Boot binary from a place I could easily reflash
> > (the external sdcard in my case).
> >
> > Do you think it would be worth adding support for USB ethernet on omap
> > platforms?
> >
> > By the way, this patch set doesn't conflict with anything, and could
> > still be there as a fallback when CONFIG_SPL_USBETH_SUPPORT is not
> > defined.
>
> Even though it does not conflict, this is not how omap platforms are being done.
> SPL and u-boot are always loaded via the same boot device.
> I would really not recommend this patch.
My patch simply adds a feature. Why does it matter if it's consistent or
not with the way people at TI thought it should be used?
Also, the behaviour my patch implements has nothing specific to the OMAP
and is a fallback mechanism. It will only be used when the device has no
other working boot method.
Are you suggesting we should let the device hang in that case?
I agree it could be useful to print some error message indicating that
the fallback is being used, so that users know there is something wrong
with the intended boot method.
> > That is, provided that I make my code check for BOOT_DEVICE_USBETH and
> > not do anything if it is defined, so that we can have both
> > BOOT_DEVICE_USBETH and BOOT_DEVICE_USB definitions (to the same value)
> > and choose which one to use by defining CONFIG_SPL_USBETH_SUPPORT or
> > not.
--
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: <http://lists.denx.de/pipermail/u-boot/attachments/20150709/ac3d26ee/attachment.sig>
next prev parent reply other threads:[~2015-07-09 8:27 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-01 22:19 [U-Boot] [PATCH v4 0/8] omap-common: Common boot code OMAP3 support and SYS_BOOT-based fallback boot device Paul Kocialkowski
2015-07-01 22:19 ` [U-Boot] [PATCH v4 1/8] omap-common: Common boot code OMAP3 support and cleanup Paul Kocialkowski
2015-07-14 22:11 ` Tom Rini
2015-07-14 23:04 ` Paul Kocialkowski
2015-07-01 22:19 ` [U-Boot] [PATCH v4 2/8] omap: SPL boot devices cleanup and completion Paul Kocialkowski
2015-07-14 22:11 ` Tom Rini
2015-07-01 22:19 ` [U-Boot] [PATCH v4 3/8] omap-common: Boot device define instead of hardcoded value Paul Kocialkowski
2015-07-14 22:11 ` Tom Rini
2015-07-01 22:19 ` [U-Boot] [PATCH v4 4/8] siemens-am33x-common: Hardcoded value instead of non-included define Paul Kocialkowski
2015-07-14 22:11 ` Tom Rini
2015-07-01 22:19 ` [U-Boot] [PATCH v4 5/8] omap-common: SYS_BOOT-based fallback boot device selection for peripheral boot Paul Kocialkowski
2015-07-02 19:10 ` Tom Rini
2015-07-02 19:53 ` Paul Kocialkowski
2015-07-09 7:59 ` Lokesh Vutla
2015-07-09 8:27 ` Paul Kocialkowski [this message]
2015-07-14 19:17 ` Tom Rini
2015-07-15 0:35 ` Paul Kocialkowski
2015-07-14 22:12 ` Tom Rini
2015-07-01 22:19 ` [U-Boot] [PATCH v4 6/8] omap3: Definitions for SYS_BOOT-based fallback boot device selection Paul Kocialkowski
2015-07-14 22:12 ` Tom Rini
2015-07-01 22:19 ` [U-Boot] [PATCH v4 7/8] omap4: " Paul Kocialkowski
2015-07-14 22:12 ` Tom Rini
2015-07-01 22:19 ` [U-Boot] [PATCH v4 8/8] omap5: " Paul Kocialkowski
2015-07-14 22:12 ` Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1436430458.2326.7.camel@collins \
--to=contact@paulk.fr \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox