12 Mar, 2013

1 commit

  • In master we had already taken a patch to fix the davinci GPIO code for
    CONFIG_SOC_DM646X and in u-boot-ti we have additional patches to support
    DA830 (which is CONFIG_SOC_DA8XX && !CONFIG_SOC_DA850). Resolve these
    conflicts manually and comment the #else/#endif lines for clarity.

    Conflicts:
    arch/arm/include/asm/arch-davinci/gpio.h
    drivers/gpio/da8xx_gpio.c

    Signed-off-by: Tom Rini

    Tom Rini
     

11 Mar, 2013

1 commit

  • On some architectures certain values of splashimage will lead to
    a data abort exception.

    Document the problem, and implement a callback for splashimage to
    reject such values.

    Cc: Anatolij Gustschin
    Cc: Wolfgang Denk
    Signed-off-by: Nikita Kiryanov
    Acked-by: Igor Grinberg

    Nikita Kiryanov
     

09 Mar, 2013

1 commit

  • Currently there is no logical place to put the code that prepares the
    splash image data. The splash image data should be ready in memory
    before bmp_display() is called, and after the environment is ready
    (since lcd.c looks for the splash image in an address specified by
    the environment variable "splashimage").

    Our window of opportunity in board_init_r() is therefore: between
    env_relocate() and bmp_display(), and from the available options
    only the lcd related functions in drv_lcd_init() seem appropriate
    for such lcd oriented code.

    Add the option to prepare the splash image data in lcd_logo() right
    before it is sent to be displayed.

    Cc: Anatolij Gustschin
    Cc: Jeroen Hofstee
    Signed-off-by: Nikita Kiryanov
    Signed-off-by: Igor Grinberg

    Nikita Kiryanov
     

05 Mar, 2013

1 commit


01 Mar, 2013

1 commit

  • Sandbox doesn't actually provide U-Boot access to the machine's physical
    memory. Instead it provides a RAM buffer of configurable size, and all
    memory accesses are within that buffer. Sandbox memory starts at 0 and
    is CONFIG_DRAM_SIZE bytes in size. Allowing access outside this buffer
    might produce unpredictable results in the event of an error, and would
    expose the host machine's memory architecture to the sandbox U-Boot.

    Most U-Boot functions assume that they can just access memory at given
    address. For sandbox this is not true.

    Add a map_sysmem() call which converts a U-Boot address to a system
    address. In most cases this is a NOP, but for sandbox it returns a
    pointer to that memory inside the RAM buffer.

    To get a U-Boot feature to work correctly within sandbox, you should call
    map_sysmem() to get a pointer to the address, and then use that address for
    any U-Boot memory accesses.

    Signed-off-by: Simon Glass

    Simon Glass
     

23 Feb, 2013

1 commit


15 Feb, 2013

2 commits


17 Jan, 2013

1 commit


15 Jan, 2013

1 commit


12 Jan, 2013

2 commits


11 Jan, 2013

5 commits

  • Some platforms (e.g. IGEPv2 board) has a broken ns16550 UART that
    does not set the TEMT bit when the transmitter is empty in SPL.
    This makes U-Boot to hang while waiting for TEMT to be set.

    Add a new option to avoid this:

    CONFIG_SYS_NS16550_BROKEN_TEMT

    16550 UART set the Transmitter Empty (TEMT) Bit when all output
    has finished and the transmitter is totally empty. U-Boot waits
    for this bit to be set to initialize the serial console. On some
    broken platforms this bit is not set in SPL making U-Boot to
    hang while waiting for TEMT. Define this option to avoid it.

    Signed-off-by: Javier Martinez Canillas

    Javier Martinez Canillas
     
  • Some boards want to report more than just memory size. For example, it
    might be useful to display the memory type (DDR2, DDR3) or manufacturer.

    Add a weak function to support this requirement, accessed through a new
    'meminfo' command.

    Any example of the DRAM: output is below, just for illustration:

    SMDK5250 # meminfo
    DRAM: 2 GiB Elpida DDR3 @ 800MHz

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This option displays board info after stdio is running, so that it will
    appear on the LCD. If it is displayed earlier, the board info will appear
    on the serial console but not on the LCD.

    Here follows a blow-by-blow description.

    1a. Without CONFIG_DISPLAY_BOARDINFO_LATE, on serial:

    U-Boot 2011.12-02550-g037e1c5-dirty (Nov 15 2012 - 14:29:42) for SMDK5250

    CPU: S5PC520 @ 1700MHz

    Board: Google Snow, rev 0
    I2C: ready
    DRAM: 2 GiB Elpida DDR3 @ 800MHz
    MMC: S5P MSHC0: 0, S5P MSHC1: 1
    SF: Detected W25Q32 with page size 4 KiB, total 4 MiB
    *** Warning - bad CRC, using default environment

    In: mkbp-keyb
    Out: lcd
    Err: lcd
    Net: No ethernet found.
    Hit any key to stop autoboot: 0
    SMDK5250 #

    1b. Without CONFIG_DISPLAY_BOARDINFO_LATE, on LCD (note machine info
    is missing):

    In: mkbp-keyb
    Out: lcd
    Err: lcd
    Net: No ethernet found.
    Hit any key to stop autoboot: 0
    SMDK5250 #

    2a. With CONFIG_DISPLAY_BOARDINFO_LATE, on serial:

    U-Boot 2011.12-02550-g037e1c5 (Nov 15 2012 - 14:27:40) for SMDK5250

    CPU: S5PC520 @ 1700MHz
    I2C: ready
    DRAM: 2 GiB Elpida DDR3 @ 800MHz
    MMC: S5P MSHC0: 0, S5P MSHC1: 1
    SF: Detected W25Q32 with page size 4 KiB, total 4 MiB
    *** Warning - bad CRC, using default environment

    Model: Google Snow
    In: mkbp-keyb
    Out: lcd
    Err: lcd
    Net: No ethernet found.
    Hit any key to stop autoboot: 0
    SMDK5250 #

    2b. With CONFIG_DISPLAY_BOARDINFO_LATE, on LCD (note machine info is present):

    Model: Google Snow
    In: mkbp-keyb
    Out: lcd
    Err: lcd
    Net: No ethernet found.
    Hit any key to stop autoboot: 0
    SMDK5250 #

    Since the LCD is all that a typical user sees, it is useful to display
    the model there.

    We may be able to rearrange things some other way one day, but at
    present this seems like a convenient way of getting the required
    behaviour.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Add a short note about this in the README.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This option delays loading of the environment until later, so that only the
    default environment will be available to U-Boot.

    This can address the security risk of untrusted data being used during boot.

    Any time you load untrusted data you expose yourself to a bug in the
    code. The attacker gets to choose the data so can sometimes carefully
    craft it to exploit a bug. We try to avoid touching user-controlled
    data during a verified boot unless strictly necessary. Since the
    default environment is good enough in this case (or you would just
    change it), this gets around the problem by just not loading the
    environment.

    When CONFIG_DELAY_ENVIRONMENT is defined, it is convenient to have a
    run-time way of enabling loading of the environment. Add this to the
    fdt as /config/delay-environment.

    Note: This patch depends on http://patchwork.ozlabs.org/patch/194342/

    Signed-off-by: Doug Anderson
    Signed-off-by: Simon Glass
    Reviewed-by: Doug Anderson

    Simon Glass
     

22 Dec, 2012

1 commit


20 Dec, 2012

4 commits

  • This adds arch support for PPC mpc83xx to boot "minimal" (4K) SPLs
    using the new infrastructure.

    Existing nand_spl targets are updated to deal with the name change
    from nand_init.c to spl_minimal.c (as in theory this isn't limited
    to NAND anymore).

    Signed-off-by: Scott Wood
    Signed-off-by: Kim Phillips

    Scott Wood
     
  • This was already used by some SPL targets, and allows the pad amount to
    be specified by board config headers rather than only in makefile
    fragments.

    Also supply a pad-to of zero if the variable is undefined. It works
    without this, but this avoids relying on undocumented behavior.

    Signed-off-by: Scott Wood
    Signed-off-by: Kim Phillips

    Scott Wood
     
  • It is useful to have a basic SPI flash test, which tests that the SPI chip,
    the SPI bus and the driver are behaving.

    This test erases part of the flash, writes data and reads it back as a
    sanity check that all is well.

    Use CONFIG_SF_TEST to enable it.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Conflicts:
    README
    arch/arm/cpu/armv7/exynos/clock.c
    board/samsung/universal_c210/universal.c
    drivers/misc/Makefile
    drivers/power/power_fsl.c
    include/configs/mx35pdk.h
    include/configs/mx53loco.h
    include/configs/seaboard.h

    Allen Martin
     

16 Dec, 2012

1 commit


14 Dec, 2012

5 commits


12 Dec, 2012

4 commits

  • Add a single command to read the EDID information over I2C.

    For example:

    SMDK5250 # i2c dev 7
    Setting bus to 7
    SMDK5250 # i2c edid 50
    EDID version: 1.4
    Product ID code: 305c
    Manufacturer: AUO
    Serial number: 00000000
    Manufactured in week: 0 year: 2011
    Video input definition: digital signal, voltage level 0, blank to black
    Monitor is non-RGB
    Maximum visible display size: 26 cm x 14 cm
    Power management features: no active off, no suspend, no standby
    Estabilished timings:
    Standard timings:
    1366x768 60 Hz (detailed)
    1366x768 60 Hz (detailed)
    Monitor ID: 2VD2K.B116XW

    Signed-off-by: Tom Wai-Hong Tam
    Signed-off-by: Sean Paul
    Signed-off-by: Simon Glass

    Tom Wai-Hong Tam
     
  • This new command supports hashing SHA1 and SHA256. It could be extended
    to others such as MD5 and the CRC algorithms. The syntax is modeled on
    those:

    hash

    [* | ]

    to calculate a hash, and:

    hash -v

    [* | ]

    to verify a hash.

    Use CONFIG_CMD_HASH to enable the command, CONFIG_SHA1 to enable SHA1 and
    CONFIG_SHA256 to enable SHA256.

    The existing sha1sum command remains.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Sometimes data is on a block device and within a partition, but not in a
    particular filesystem.

    This commands permits reading raw data from a partition.

    Signed-off-by: Kenneth Waters
    Signed-off-by: Simon Glass

    Kenneth Waters
     
  • Gettime returns the current timer value. If CONFIG_SYS_HZ is defined
    then the timer value is also converted to seconds.

    Tegra20 (SeaBoard) # gettime
    Timer val: 7754
    Seconds : 7
    Remainder : 754
    sys_hz = 1000

    There has been some discussion about whether this is useful enough to
    be included in U-Boot. The following boards do not have CONFIG_SYS_HZ
    defined:

    M52277EVB
    M52277EVB_stmicro
    M53017EVB
    M54418TWR
    M54418TWR_nand_mii
    M54418TWR_nand_rmii
    M54418TWR_nand_rmii_lowfreq
    M54418TWR_serial_mii
    M54418TWR_serial_rmii

    Signed-off-by: Anton Staaf
    Signed-off-by: Simon Glass

    Anton Staaf
     

07 Dec, 2012

4 commits


01 Dec, 2012

1 commit


29 Nov, 2012

1 commit

  • When running from coreboot we don't want this code.

    This version works by ifdef-ing out all of the code that would go
    into those sections and all the code that refers to it. The sections are
    then empty, and the linker will either leave them empty for the loader
    to ignore or remove them entirely.

    Signed-off-by: Gabe Black
    Signed-off-by: Simon Glass

    Gabe Black
     

27 Nov, 2012

2 commits