16 Jun, 2015

1 commit


07 May, 2015

1 commit


05 Mar, 2015

1 commit


10 Jan, 2015

1 commit


08 Apr, 2014

12 commits

  • Conflicts:
    arch/arm/cpu/arm926ejs/mxs/Makefile
    include/configs/trats.h
    include/configs/trats2.h
    include/mmc.h

    Albert ARIBAUD
     
  • This patch add gicv3 support to uboot armv8 platform.

    Changes for v2:
    - rename arm/cpu/armv8/gic.S with arm/lib/gic_64.S
    - move smp_kick_all_cpus() from gic.S to start.S, it would be
    implementation dependent.
    - Each core initialize it's own ReDistributor instead of master
    initializeing all ReDistributors. This is advised by arnab.basu
    .

    Signed-off-by: David Feng

    David Feng
     
  • The conditional is using a variable that is not defined.

    Signed-off-by: Rommel G Custodio

    Mela Custodio
     
  • When flush the d$ with set/way instruction, it need calculate the way's
    offset = log2(Associativity); but in current uboot's code, it use below
    formula to calculate the offset: log2(Associativity * 2 - 1), so finally
    it cannot flush data cache properly.

    Signed-off-by: Leo Yan

    Leo Yan
     
  • For ARMv8, U-boot has been running at EL3 with cache and MMU enabled.
    Without proper setup for EL2, cache and MMU are both disabled (out of
    reset). Before switching, we need to flush the dcache to make sure the
    data is in the main memory.

    Signed-off-by: York Sun
    Acked-by: David.Feng

    York Sun
     
  • This patch contains several changes required for second Ethernet
    (enet1/RMII1) port on vf610
    - ANADIG PLL5 control definitions required for Ethernet RMII1 clock
    - Secondary Ethernet (enet1) MAC RMII1 base address definition
    - RMII1 iomux definitions
    - VF610_PAD_PTA6__RMII0_CLKOUT iomux definition required for
    internal (e.g. crystal-less) Ethernet clocking.

    Signed-off-by: Marcel Ziswiler
    [stefan@agner.ch: regrouped patch]
    Signed-off-by: Stefan Agner

    Marcel Ziswiler
     
  • Add CCM_CCGR0_UART0_CTRL_MASK clock definition and add TX/RX iomux
    definitions for UART0 (aka. SCI0).

    Signed-off-by: Marcel Ziswiler
    [stefan@agner.ch: regrouped patch]
    Signed-off-by: Stefan Agner

    Marcel Ziswiler
     
  • The anadig_reg structure started at the wrong offset (fixed by adding
    reserved_0x000[4]), was missing some reserved field required for
    alignment purpose (reserved_0x094[3] between pll4_denom and pll6_ctrl)
    and further contained a too short reserved field causing further miss-
    alignment (reserved_0x0C4[7]). Also, rename all the reserved fields
    and using a memory offset based scheme for.

    Discovered and tested by temporarily putting the following debug
    instrumentation into board_init():
    struct anadig_reg *anadig = (struct anadig_reg *)ANADIG_BASE_ADDR;
    printf("&anadig->pll3_ctrl=0x%p\n", &anadig->pll3_ctrl);
    printf("&anadig->pll5_ctrl=0x%p\n", &anadig->pll5_ctrl);

    Signed-off-by: Marcel Ziswiler
    [stefan@agner.ch: regrouped patch]
    Signed-off-by: Stefan Agner

    Marcel Ziswiler
     
  • After Kbuild introduction, the CROSS_COMPILE environment variable has been
    set to some default value (prefix arm-linux-).

    This shall be removed since it breaks building u-boot for native arm target
    (like qemu ARM).
    Moreover not all compilers have arm-linux- prefix.

    Additionally the u-boot cross compiles with CROSS_COMPILE= set explicitly-
    e.g.:
    CROSS_COMPILE=/ .... /arm-v7a-linux-gnueabi- make

    Signed-off-by: Lukasz Majewski
    Cc: Masahiro Yamada
    Acked-by: Masahiro Yamada

    Łukasz Majewski
     
  • Albert ARIBAUD
     
  • Full cache line writes to the same memory region from at least two
    processors might deadlock the processor. Exists on r1, r2, r3
    revisions.

    Signed-off-by: Nitin Garg
    Acked-by: Fabio Estevam

    Nitin Garg
     
  • A short loop including a DMB instruction might cause a denial of
    service on another processor which executes a CP15 broadcast operation.
    Exists on r1, r2, r3, r4 revisions.

    Signed-off-by: Nitin Garg
    Acked-by: Dirk Behme

    Nitin Garg
     

07 Apr, 2014

5 commits


04 Apr, 2014

3 commits

  • This patch adds the groundwork for generating signed BootStream, which
    can be used by the HAB library in i.MX28. We are adding a new target,
    u-boot-signed.sb , since the process for generating regular non-signed
    BootStream is much easier. Moreover, the signed bootstream depends on
    external _proprietary_ _binary-only_ tool from Freescale called 'cst',
    which is available only under NDA.

    To make things even uglier, the CST or HAB mandates a kind-of circular
    dependency. The problem is, unlike the regular IVT, which is generated
    by mxsimage, the IVT for signed boot must be generated by hand here due
    to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
    are then signed by the CST as a one block. But here is the problem. The
    size of the entire image (U-Boot, IVT, CST blocks) must be appended at
    the end of IVT. But the size of the entire image is not known until the
    CST has finished signing the U-Boot and IVT. We solve this by expecting
    the CST block to be always 3904B (which it is in case two files, U-Boot
    and the hand-made IVT, are signed in the CST block).

    Signed-off-by: Marek Vasut
    Cc: Stefano Babic

    Marek Vasut
     
  • Conflicts:
    arch/arm/cpu/arm926ejs/mxs/mxsimage.mx23.cfg
    arch/arm/cpu/arm926ejs/mxs/mxsimage.mx28.cfg

    Signed-off-by: Stefano Babic

    Stefano Babic
     
  • This reverts commit 53e6b14e037c9f72e6d03244c32d8d597e2e0234.

    Patch does not merge anymore with u-boot-arm and must be rebased.

    Signed-off-by: Stefano Babic

    Stefano Babic
     

02 Apr, 2014

4 commits


01 Apr, 2014

4 commits

  • Add support for serial console into the i.MX23/i.MX28 SPL. A full,
    uncrippled serial console support comes very helpful when debugging
    various spectacular hardware bringup issues early in the process.
    Because we do not use SPL framework, but have our own minimalistic
    SPL, which is compatible with the i.MX23/i.MX28 BootROM, we do not
    use preloader_console_init(), but instead use a similar function to
    start the console. Nonetheless, to avoid blowing up the size of the
    SPL binary, this support is enabled only if CONFIG_SPL_SERIAL_SUPPORT
    is defined, which is disabled by default.

    Signed-off-by: Marek Vasut
    Cc: Stefano Babic

    Marek Vasut
     
  • Set the GD pointer in the SPL to a defined symbol so various
    functions from U-Boot can be used without adverse side effects.

    Signed-off-by: Marek Vasut
    Cc: Stefano Babic

    Marek Vasut
     
  • This patch adds the groundwork for generating signed BootStream, which
    can be used by the HAB library in i.MX28. We are adding a new target,
    u-boot-signed.sb , since the process for generating regular non-signed
    BootStream is much easier. Moreover, the signed bootstream depends on
    external _proprietary_ _binary-only_ tool from Freescale called 'cst',
    which is available only under NDA.

    To make things even uglier, the CST or HAB mandates a kind-of circular
    dependency. The problem is, unlike the regular IVT, which is generated
    by mxsimage, the IVT for signed boot must be generated by hand here due
    to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
    are then signed by the CST as a one block. But here is the problem. The
    size of the entire image (U-Boot, IVT, CST blocks) must be appended at
    the end of IVT. But the size of the entire image is not known until the
    CST has finished signing the U-Boot and IVT. We solve this by expecting
    the CST block to be always 3904B (which it is in case two files, U-Boot
    and the hand-made IVT, are signed in the CST block).

    Signed-off-by: Marek Vasut
    Cc: Stefano Babic

    Marek Vasut
     
  • When using HAB, there are additional special requirements on the placement of
    U-Boot and the U-Boot SPL in memory. To fullfill these, this patch moves the
    U-Boot binary a little further from the begining of the DRAM, so the HAB CST
    and IVT can be placed in front of the U-Boot binary. This is necessary, since
    both the U-Boot and the IVT must be contained in single CST signature. To
    make things worse, the IVT must be concatenated with one more entry at it's
    end, that is the length of the entire CST signature, IVT and U-Boot binary
    in memory. By placing the blocks in this order -- CST, IVT, U-Boot, we can
    easily align them all and then produce the length field as needed.

    As for the SPL, on i.MX23/i.MX28, the SPL size is limited to 32 KiB, thus
    we place the IVT at 0x8000 offset, CST right past IVT and claim the size
    is correct. The HAB library accepts this setup.

    Finally, to make sure the vectoring in SPL still works even after moving
    the SPL from 0x0 to 0x1000, we add a small function which copies the
    vectoring code and tables to 0x0. This is fine, since the vectoring code
    is position independent.

    Signed-off-by: Marek Vasut
    Cc: Stefano Babic

    Marek Vasut
     

31 Mar, 2014

1 commit


29 Mar, 2014

4 commits

  • Signed-off-by: Przemyslaw Marczak
    Cc: Minkyu Kang

    Przemyslaw Marczak
     
  • Fix the macros guarding the spl.h header for various platforms. Due to
    a typo and a propagation of it, the macros went out-of-sync with their
    ifdef check, so fix this.

    Signed-off-by: Marek Vasut
    Cc: Tom Rini

    Marek Vasut
     
  • U-Boot has supported two kinds of asm-offsets.h.

    One is generic for all architectures and its source is located at
    ./lib/asm-offsets.c.

    The other is SoC specific and its source is under SoC directory.
    The problem here is that only boards with SoC directory can use
    the asm-offsets infrastructure.
    Putting asm-offsets.c right under CPU directory does not work.

    Now a new demand is coming. PowerPC folks want to use asm-offsets.
    But no PowerPC boards have SoC directory.

    It seems inconsistent that some boards add asm-offsets.c to SoC
    directoreis and some to CPU directories.
    It looks more reasonable to put asm-offsets.c under arch/$(ARCH)/lib.

    This commit merges asm-offsets.c under SoC directories into
    arch/$(ARCH)/lib/asm-offsets.c.

    By the way, I doubt the necessity of some entries in asm-offsets.c.
    I am leaving refactoring to the board maintainers.
    Please check "TODO" in the comment blocks in
    arch/{arm,nds32}/lib/asm-offsets.c.

    Signed-off-by: Masahiro Yamada
    Cc: Yuantian Tang

    Masahiro Yamada
     
  • U-Boot uses the 'mkimage' tool to produce various image types,
    not only uImage image type. Rename the invocation name from
    UIMAGE to MKIMAGE.

    The following command was used to do the replacement:
    git grep 'quiet_cmd_mkimage.* = UIMAGE' | cut -d : -f 1 | \
    xargs -i sed -i "s@\(quiet_cmd_mkimage\)\(.*\) = UIMAGE @\1\2 = MKIMAGE@" {}

    Signed-off-by: Marek Vasut
    Cc: Tom Rini
    Cc: Masahiro Yamada
    Acked-by: Masahiro Yamada

    Marek Vasut
     

25 Mar, 2014

1 commit


24 Mar, 2014

1 commit

  • The way that struct mmc was implemented was a bit of a mess;
    configuration and internal state all jumbled up in a single structure.

    On top of that the way initialization is done with mmc_register leads
    to a lot of duplicated code in drivers.

    Typically the initialization got something like this in every driver.

    struct mmc *mmc = malloc(sizeof(struct mmc));
    memset(mmc, 0, sizeof(struct mmc);
    /* fill in fields of mmc struct */
    /* store private data pointer */
    mmc_register(mmc);

    By using the new mmc_create call one just passes an mmc config struct
    and an optional private data pointer like this:

    struct mmc = mmc_create(&cfg, priv);

    All in tree drivers have been updated to the new form, and expect
    mmc_register to go away before long.

    Changes since v1:

    * Use calloc instead of manually calling memset.
    * Mark mmc_register as deprecated.

    Signed-off-by: Pantelis Antoniou

    Pantelis Antoniou
     

18 Mar, 2014

1 commit

  • When jumping from one sandbox U-Boot to another in sandbox, the RAM buffer
    is preserved in the jump by using a temporary file. Add an option to tell
    the receiving U-Boot to remove this file when it is no longer needed.

    Similarly the old U-Boot image is left behind in this case. We cannot delete
    it immediately since gdb cannot then find its debug symbols. Delete it just
    before exiting.

    Together these changes ensure that temporary files are removed both for
    memory and U-Boot.

    Signed-off-by: Simon Glass

    Simon Glass