public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] ARMv7 Execution Flow
@ 2016-06-03 18:55 James Pollard
  2016-06-06  3:48 ` Lokesh Vutla
  0 siblings, 1 reply; 4+ messages in thread
From: James Pollard @ 2016-06-03 18:55 UTC (permalink / raw)
  To: u-boot

Hi,

I'm a new U-Boot user. I'm trying to follow the flow of execution for the
ARMv7 architecture, and have found myself running into confusion.

At the end of arch/arm/cpu/armv7/start.S, lowlevel_init is called. This is
defined (for the ARMv7 architecture in arch/arm/cpu/armv7/low_level_init.S
(not sure if there's a reason for the discrepancy in the use of
underscores?), and at the end of this file, s_init is called.

As far as I can tell, s_init is only defined for some of the ARMv7 CPUs:
the bcm281xx folder doesn't contain any files that define this function. In
the case of the am33xx CPU it's defined in board.c, but this function seems
to return without calling board_init_f.

My questions are:

   1.  In the case of the bcm281xx, what happens? s_init doesn't seem to be
   defined for this CPU.
   2.  In the case of the am33xx, where is board_init_f called? As far as I
   can tell, s_init should return to lowlevel_init without having
   called board_init_f , which then returns back to start.S, terminating
   the execution prematurely.

I presume my analysis of the assembly must be highly incorrect?

Sorry if this is the wrong place for such a question.

Yours,

James Pollard

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-06-06 23:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-03 18:55 [U-Boot] ARMv7 Execution Flow James Pollard
2016-06-06  3:48 ` Lokesh Vutla
2016-06-06 13:38   ` James Chargin
2016-06-06 23:58     ` Simon Glass

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox