mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Giorgio Dal Molin <giorgio.nicole@arcor.de>
Cc: barebox@lists.infradead.org
Subject: Re: barebox for a ti am335x based board
Date: Fri, 16 Feb 2018 08:51:58 +0100	[thread overview]
Message-ID: <20180216075158.srw63pfrlby67oub@pengutronix.de> (raw)
In-Reply-To: <ba32e817-48b6-9266-ffd7-d2397d103f7a@arcor.de>

Hi Giorgio,

On Tue, Feb 13, 2018 at 11:12:54PM +0100, Giorgio Dal Molin wrote:
> Hi all,
> 
> I'm trying to add board code for an am335x based HW project.
> I had a look at similar boards like 'boards/phytec-som-am335x'
> or 'boards/beaglebone'.
> I understand that I need two images: the (little) MLO and the
> (bigger) barebox.
> 
> What it's not really clear is how the MLO loads and starts the
> barebox.

See arch/arm/mach-omap/xload.c. It is compiled when no shell is enabled
(I think at least for clarity there should be a separate Kconfig
symbol). In this file omap_xload() detects where the SoC has booted from
and loads the full barebox from the same source.

> 
> Moreover I saw there's always a call to:
> 
>  am33xx_save_bootinfo((void *)bootinfo);
> 
> in the MLO lowlevel entry function; I suspect the argument
> 'bootinfo' is the register r0 left by the function __barebox_arm_head()
> but I cannot really understand the logic behind it.

When the am335x ROM passes control to the bootloader then it passes in
R0 a pointer to the bootinfo. This is a three word structure which has
informations where the SoC has booted from. In am33xx_save_bootinfo() we
copy the information to a known place where we can pick it up later, see
am33xx_bootsource().

Sascha


-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  parent reply	other threads:[~2018-02-16  7:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-13 22:12 Giorgio Dal Molin
2018-02-14  5:11 ` Alexander Shiyan
2018-02-16  7:51 ` Sascha Hauer [this message]
2018-02-16  9:15   ` Giorgio Dal Molin
2018-02-19  6:28     ` Sascha Hauer

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=20180216075158.srw63pfrlby67oub@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --cc=giorgio.nicole@arcor.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