16 Sep, 2017

1 commit

  • The CONFIG_BOOTSTAGE_USER_COUNT option is no-longer needed since we can now
    support any number of user IDs. Also BOOTSTAGE_ID_COUNT is not needed now.

    Drop these unused options.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     

06 Jun, 2017

9 commits

  • This time is interesting as a comparision with the flat device tree time.
    Add it to the record.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • At present bootstage only supports U-Boot proper. But SPL can also consume
    boot time so it is useful to have the record start there.

    Add bootstage support to SPL. Also support stashing the timing information
    when SPL finishes so that it can be picked up and reported by U-Boot
    proper. This provides a full boot time record, excluding only the time
    taken by the boot ROM.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • There are a few places that should use const *, such as
    bootstage_unstash(). Update these to make it clearer when parameters are
    changed.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • We should return a proper error number instead of just -1. This helps the
    caller to determine what when wrong. Update a few functions to fix this.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Driver model is set up ones before relocation and once after. Record the
    time taken in each case.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Some boards cannot access pre-relocation data after relocation. Reserve
    space for this and copy it during preparation for relocation.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • There are several code style and comment nits. Fix them and also remove
    the comment about passing bootstage to the kernel being TBD. This is
    already supported.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • At present bootstage uses the data section of the image to store its
    information. There are a few problems with this:

    - It does not work on all boards (e.g. those which run from flash before
    relocation)
    - Allocated strings still point back to the pre-relocation data after
    relocation

    Now that U-Boot has a pre-relocation malloc() we can use this instead,
    with a pointer to the data in global_data. Update bootstage to do this and
    set up an init routine to allocate the memory.

    Now that we have a real init function, we can drop the fake 'reset' record
    and add a normal one instead.

    Note that part of the problem with allocated strings remains. They are
    reallocated but this will only work where pre-relocation memory is
    accessible after relocation.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • At present we provide a default version of this function for use by
    bootstage. However it uses the system timer and therefore likely requires
    driver model. This makes it impossible to time driver-model init.

    Drop the function and require boards to provide their own. Add a sandbox
    version also. There is a default implememtation in lib/time.c for boards
    which use CONFIG_SYS_TIMER_COUNTER.

    Signed-off-by: Simon Glass

    Simon Glass
     

10 Jun, 2016

1 commit


24 May, 2016

1 commit


28 May, 2015

1 commit

  • Added a trimmed down instance of boot_get_() to satisfy the
    minimum requierments of the added feature. The function follows the
    normal patterns set by other boot_get's, which should make it a
    bit easier to combine them all together into one boot_get_image()
    function in a later refactor.

    Documentation for the new function can be found in source:
    include/image.h

    Signed-off-by: Karl Apsite
    Reviewed-by: Simon Glass

    Karl Apsite
     

15 May, 2015

1 commit


19 Apr, 2015

1 commit


07 Feb, 2015

2 commits


22 Oct, 2014

1 commit


16 Aug, 2013

1 commit


24 Jul, 2013

1 commit


05 Jun, 2013

2 commits


15 May, 2013

1 commit

  • We don't measure boot timing on the host, or with SPL, so use both
    conditions in the bootstage header. This allows us to avoid using
    conditional compilation around bootstage_...() calls. (#ifdef)

    Signed-off-by: Simon Glass

    Simon Glass
     

14 May, 2013

3 commits


16 Oct, 2012

1 commit


03 Oct, 2012

5 commits


02 Oct, 2012

1 commit

  • This patch adds support for networking in SPL. Some devices are
    capable of loading SPL via network so it makes sense to load the
    main U-Boot binary via network too. This patch tries to use
    existing network code as much as possible. Unfortunately, it depends
    on environment which in turn depends on other code so SPL size
    is increased significantly. No effort was done to decouple network
    code and environment so far.

    Signed-off-by: Ilya Yanok
    Acked-by: Joe Hershberger
    Signed-off-by: Tom Rini

    Ilya Yanok
     

11 Apr, 2012

1 commit

  • The standalone example does not have get_timer() defined, so we cannot
    rely on it being available.

    Move the timer function into boootstage.c to avoid this problem.

    This corrects a build breakage for the standalone example on some boards.

    Signed-off-by: Simon Glass
    Acked-by: Matthias Fuchs

    Simon Glass
     

19 Mar, 2012

6 commits