26 Jan, 2018

1 commit

  • When flashing U-Boot on a Boston board using Xilinx Vivado tools, the
    final 0x00 byte which ends the .relocs section seems to be skipped &
    left in flash as 0xff unless the data contained in the .mcs is padded
    out to a 16 byte boundary. Without our final zero byte relocation will
    fail with an error about a spurious reloc:

    Avoid this problem by padding out the data in the .mcs file to a 16 byte
    boundary using srec_cat's -range-pad functionality.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck

    Paul Burton
     

29 Nov, 2017

4 commits

  • U-Boot is generally flashed to a MIPS Boston development board by means
    of a .mcs file which Xilinx Vivado software can write to the flash
    present on the board. As such we'd generally want to produce an mcs file
    when building U-Boot to target the Boston board. Introduce a make target
    for u-boot.mcs which generates it using the srec_cat tool available from
    the SRecord project, and build it by default when srec_cat is present.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck
    Cc: u-boot@lists.denx.de

    Paul Burton
     
  • MIPS is no longer a part of Imagination Technologies, and as such my
    @imgtec.com email address will soon cease to function. This patch
    updates occurrances of it with my new @mips.com email address, and adds
    an entry in .mailmap such that git (& tools such as get_maintainer.pl
    when examining history) will use the new address.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck
    Cc: u-boot@lists.denx.de

    Paul Burton
     
  • The lowlevel_display() function includes a "1:" label which is never
    used. Remove it.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck

    Paul Burton
     
  • The boston lowlevel_init() function zeroes the return register v0,
    despite the function not being expected to return a value & that value
    never being used.

    Remove the redundant assignment to v0.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck

    Paul Burton
     

12 May, 2017

1 commit

  • The boston memory map isn't suited to the simple "all memory starting
    from 0" approach that the MIPS arch_fixup_fdt() implementation takes.
    Instead we need to indicate the first 256MiB of DDR from 0 and the rest
    from 0x90000000. Implement ft_board_setup to do that.

    Signed-off-by: Paul Burton
    Signed-off-by: Daniel Schwierzeck
    Reviewed-by: Simon Glass

    Paul Burton
     

13 Apr, 2017

1 commit


06 Apr, 2017

2 commits


10 Dec, 2016

1 commit


21 Sep, 2016

3 commits

  • This patch introduces support for building U-Boot to run on the MIPS
    Boston development board. This is a board built around an FPGA & an
    Intel EG20T Platform Controller Hub, used largely as part of the
    development of new CPUs and their software support. It is essentially
    the successor to the older MIPS Malta board.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • Enable support for the MIPS Coherence Manager & L2 caches on the MIPS
    Malta board, removing the need for us to attempt to bypass the L2 during
    boot (which would fail with recent CPUs that expose L2 config via the CM
    anyway).

    Signed-off-by: Paul Burton

    Paul Burton
     
  • MIPSfpga is an FPGA based dev platform.

    In a nutshell, its a microAptiv cpu core with lots of Xilinx IP blocks

    The FPGA dev board used is the Nexys4DDR board by Digilent.

    For more information, check the Readme file in board/imgtec/xilfpga

    Signed-off-by: Zubair Lutfullah Kakakhel
    Reviewed-by: Paul Burton
    Reviewed-by: Daniel Schwierzeck

    Zubair Lutfullah Kakakhel
     

31 May, 2016

1 commit

  • Both real Malta boards & emulators that mimic Malta (eg. QEMU) can
    support MIPS64 CPUs. Allow MIPS64 builds of U-Boot for such boards,
    which enables the user to make use of the whole 64 bit address space.

    Signed-off-by: Paul Burton

    Paul Burton
     

26 May, 2016

2 commits

  • Move CONFIG_SYS_TEXT_BASE to Kconfig, and add default values in board
    Kconfig files matching what was present in their config headers. This
    will make it cleaner to conditionalise the value for Malta based on 32
    vs 64 bit builds.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • The address of the UART differs based upon the system controller because
    it's actually within the I/O port region, which is in a different
    location for each system controller. Rather than handling this as 2
    UARTs with the correct one selected at runtime, use I/O port accessors
    for the UART such that access to it gets translated into the I/O port
    region automatically.

    Signed-off-by: Paul Burton
    Reviewed-by: Daniel Schwierzeck

    Paul Burton
     

21 May, 2016

1 commit

  • We always build for a mips32 or higher ISA, so this ".set mips32"
    directive is redundant. Once MIPSr6 support is added it will become
    harmful since some instruction encodings change & this directive will
    cause the older encodings to be incorrectly emitted instead of the
    appropriate ones for the build.

    In preparation for supporting MIPSr6, remove this redundant directive.

    Signed-off-by: Paul Burton

    Paul Burton
     

06 Feb, 2016

1 commit

  • Correct spelling of "U-Boot" shall be used in all written text
    (documentation, comments in source files etc.).

    Signed-off-by: Bin Meng
    Reviewed-by: Heiko Schocher
    Reviewed-by: Simon Glass
    Reviewed-by: Minkyu Kang

    Bin Meng
     

02 Feb, 2016

2 commits


17 Jan, 2016

1 commit


29 Jan, 2015

2 commits

  • Reset isn't instant, so delay to give it a chance. Otherwise we go on
    to print a failure message before resetting anyway.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck

    Paul Burton
     
  • This patch adds IDE support to the MIPS Malta board. The IDE controller
    is enabled after probing the PCI bus and otherwise just makes use of
    U-boot generic IDE support.

    Signed-off-by: Paul Burton
    Cc: Daniel Schwierzeck

    Paul Burton
     

23 Nov, 2014

1 commit

  • U-Boot has never cared about the type when we get max/min of two
    values, but Linux Kernel does. This commit gets min, max, min3, max3
    macros synced with the kernel introducing type checks.

    Many of references of those macros must be fixed to suppress warnings.
    We have two options:
    - Use min, max, min3, max3 only when the arguments have the same type
    (or add casts to the arguments)
    - Use min_t/max_t instead with the appropriate type for the first
    argument

    Signed-off-by: Masahiro Yamada
    Acked-by: Pavel Machek
    Acked-by: Lukasz Majewski
    Tested-by: Lukasz Majewski
    [trini: Fixup arch/blackfin/lib/string.c]
    Signed-off-by: Tom Rini

    Masahiro Yamada
     

02 Nov, 2014

1 commit


14 Sep, 2014

1 commit

  • Now the types of CONFIG_SYS_{ARCH, CPU, SOC, VENDOR, BOARD, CONFIG_NAME}
    are specified in arch/Kconfig.

    We can delete the ones in arch and board Kconfig files.

    This commit can be easily reproduced by the following command:

    find . -name Kconfig -a ! -path ./arch/Kconfig | xargs sed -i -e '
    /config[[:space:]]SYS_\(ARCH\|CPU\|SOC\|\VENDOR\|BOARD\|CONFIG_NAME\)/ {
    N
    s/\n[[:space:]]*string//
    }
    '

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

30 Jul, 2014

2 commits

  • We have switched to Kconfig and the boards.cfg file is going to
    be removed. We have to retrieve the board status and maintainers
    information from it.

    The MAINTAINERS format as in Linux Kernel would be nice
    because we can crib the scripts/get_maintainer.pl script.

    After some discussion, we chose to put a MAINTAINERS file under each
    board directory, not the top-level one because we want to collect
    relevant information for a board into a single place.

    TODO:
    Modify get_maintainer.pl to scan multiple MAINTAINERS files.

    Signed-off-by: Masahiro Yamada
    Suggested-by: Tom Rini
    Acked-by: Simon Glass

    Masahiro Yamada
     
  • This commit adds:
    - arch/${ARCH}/Kconfig
    provide a menu to select target boards
    - board/${VENDOR}/${BOARD}/Kconfig or board/${BOARD}/Kconfig
    set CONFIG macros to the appropriate values for each board
    - configs/${TARGET_BOARD}_defconfig
    default setting of each board

    (This commit was automatically generated by a conversion script
    based on boards.cfg)

    In Linux Kernel, defconfig files are located under
    arch/${ARCH}/configs/ directory.
    It works in Linux Kernel since ARCH is always given from the
    command line for cross compile.

    But in U-Boot, ARCH is not given from the command line.
    Which means we cannot know ARCH until the board configuration is done.
    That is why all the "*_defconfig" files should be gathered into a
    single directory ./configs/.

    Signed-off-by: Masahiro Yamada
    Acked-by: Simon Glass

    Masahiro Yamada
     

27 Nov, 2013

1 commit

  • Whilst U-boot does not require this itself, Linux currently relies upon
    it having been muxed and enabled by the bootloader. Thus in order to
    preserve compatibility with current kernels before a fix is merged in
    Linux we will enable the SERIRQ interrupt and mux it to its pin.

    Without doing this current kernels will never receive serial port
    interrupts and the end result is typically that userland appears to
    hang.

    Signed-off-by: Paul Burton

    Paul Burton
     

10 Nov, 2013

8 commits

  • This patch adds a script which may be used with MIPS Navigator Console
    and a MIPS Nagivator Probe in order to flash U-boot to a MIPS Malta
    development board.

    Please see the newly added doc/README.malta for usage instructions.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • Without setting up the PIRQ[A:D] interrupt routes, PCI interrupts will
    be left disabled. Linux does not set up this routing but relies upon it
    having been set up by the bootloader, reading back the IRQ lines which
    the PIRQ[A:D] signals have been routed to.

    This patch routes PIRQA & PIRQB to IRQ 10, and PIRQC & PIRQD to IRQ 11.
    This matches the setup used by YAMON.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • This is actually required in order for a Linux kernel to boot
    successfully on a physical Malta board. Without enabling the RTC, a
    Malta Linux kernel will get stuck in its estimate_frequencies function
    on boot.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • Malta boards may be used with cores which support L2 caches, however
    U-boot does not yet support L2 cache for MIPS. Thus for the moment we'll
    disable L2 caches by setting the L2B bit in Config2. This is specific to
    MTI/Imagination MIPS cores which is why this is done for the Malta board
    rather than generically.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • Displaying a message on the LCD screen is a simple yet effective way to
    show the user that the board has booted successfully.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • This patch adds support for running on Malta boards using coreFPGA6
    core cards, including support for the msc01 system controller used
    with them. The system controller is detected at runtime allowing one
    U-boot binary to run on a Malta with either.

    Due to the PCI I/O base differing between Maltas using gt64120 & msc01
    system controllers, the UART setup is modified slightly. A second UART
    is added so that there is one pointing at the correct address for each
    system controller. The Malta board then defines its own
    default_serial_console function to select the correct one at runtime.
    The incorrect UART will simply not function.

    Tested on:
    - A coreFPGA6 Malta running interAptiv and proAptiv bitstreams, both
    with and without an L2 cache.
    - QEMU.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • On a real Malta the Super I/O needs to be configured before we are able
    to access the UARTs. This patch performs that configuration, setting up
    the UARTs in the same way that YAMON would.

    Signed-off-by: Paul Burton

    Paul Burton
     
  • This is in preparation for adapting this board to function correctly on
    a physical MIPS Malta board. The board is moved into an "imgtec" vendor
    directory at the same time in order to ready us for any other boards
    supported by Imagination in the future.

    Signed-off-by: Paul Burton

    Paul Burton