18 Jan, 2020

1 commit


03 Dec, 2019

1 commit


30 Oct, 2019

1 commit

  • At present some boards generate kwbimage.cfg in the source tree
    during the build. This breaks buildman testing on some systems
    where the source tree is read-only. Update makefile rules to
    generate it in the build tree instead.

    Note some other boards have the kwbimage.cfg file written in
    advance, hence we need check if the file exists in the build
    tree first, otherwise we fall back to one in the source tree.

    Signed-off-by: Bin Meng
    Reviewed-by: Chris Packham
    Reviewed-by: Stefan Roese
    Reviewed-by: Simon Glass

    Bin Meng
     

26 Apr, 2019

2 commits

  • With the latest size increase of the openrd boards, they all compile
    clean again. Let's mark them as maintained again and add the Travis
    job.

    Please note that I can only compile-test these targets as I don't
    have access to one of those boards.

    Signed-off-by: Stefan Roese
    Cc: Albert ARIBAUD
    Cc: Vagrant Cascadian
    Cc: Chris Packham
    Cc: Tom Rini

    Stefan Roese
     
  • This is Marvell's Kirkwood development board. It has the following
    features

    - 512M DDR2
    - 2 PCI connectors
    - 1 x1 PCI-e interface
    - 1 Gigabit Ethernet Port
    - 2 SATA Ports
    - USB 2.0 Interface
    - SDIO
    - 128M NAND Flash
    - 16M SPI Flash

    It can be strapped to boot from SPI or NAND so there are two defconfigs
    (one per boot media).

    Signed-off-by: Chris Packham
    Signed-off-by: Stefan Roese

    Chris Packham
     

13 Apr, 2019

1 commit

  • - Misc dts files sync'ed with Linux version (Chris)
    - Orion watchdog fix (Chris)
    - kwbimage changed to also support Marvell bin_hdr binary (Chris)
    - Add DM support to enable CONFIG_BLK for sata_mv (Stefan)
    - Enable BLK on multiple platforms (Stefan)
    - Misc minor fixes to AXP theadorable board (Stefan)
    - Correct logic for DM_SCSI + unconverted drivers check (stefan)
    - Misc changes to kirkwood to enable DM_USB here (Chris)
    - Change ahci_mvebu to enable usage on A38x (Baruch)
    - Update the kirkwood entry in git-mailrc (Baruch)
    - Misc minor improvements (turris, documentation) (Baruch)
    - Enhance sata_mv to support Kirkwood as well (Michael)
    - Add wdt command (Michael)
    - Add Marvell integrated CPUs (MSYS) support with DB-XC3-24G4XG
    board support (Chris)

    Tom Rini
     

12 Apr, 2019

1 commit

  • The DB-XC3-24G4XG is a switch development board from Marvell. It can
    either use and external CPU card such as the db-88f6820-amc or the
    internal CPU that is integrated into the switch.

    Add support for running U-Boot on the internal CPU and enable the USB,
    SPI and NAND peripherals. For now this needs the bin_hdr from the
    Marvell U-Boot for this board.

    Signed-off-by: Chris Packham
    Reviewed-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Chris Packham
     

05 Feb, 2019

1 commit

  • This adds initial support for micro-DPU (uDPU) board which is based on Armada-3720 SoC.
    micro-DPU is the single-port FTTdp "distribution point unit" made by Methode Electronics
    which offers complete modularity with replaceable SFP modules both for uplink and downlink
    (G.hn over twisted-pair, G.hn over coax, 1G and 2.5G Ethernet over Cat-5e cable).

    On-board features:
    - 512 MiB DDR3
    - 2 x 2.5G SFP via HSGMII SERDES interface to the A3720 SoC
    - USB 2.0 Type-C connector
    - 4GB eMMC
    - ETSI TS 101548 reverse powering via twisted pair (RJ45) or coax (F Type)

    Cc: Luka Perkov
    Cc: Luis Torres
    Cc: Scott Roberts
    Cc: Paul Arola
    Signed-off-by: Vladimir Vid
    Reviewed-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Vladimir Vid
     

21 Jan, 2019

1 commit


08 Dec, 2018

1 commit

  • This syncs drivers/ddr/marvell/a38x/ with the mv_ddr-armada-18.09 branch
    of https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git.
    Specifically this syncs with commit 99d772547314 ("Bump mv_ddr to
    release armada-18.09.2").

    The complete log of changes is best obtained from the mv-ddr-marvell.git
    repository but some relevant highlights are:

    ddr3: add missing txsdll parameter
    ddr3: fix tfaw timimg parameter
    ddr3: fix trrd timimg parameter
    merge ddr3 topology header file with mv_ddr_topology one
    mv_ddr: a38x: fix zero memory size scrubbing issue

    The upstream code is incorporated omitting the portions not relevant to
    Armada-38x and DDR3. After that a semi-automated step is used to drop
    unused features with unifdef

    find drivers/ddr/marvell/a38x/ -name '*.[ch]' | \
    xargs unifdef -m -UMV_DDR -UMV_DDR_ATF -UCONFIG_DDR4 \
    -UCONFIG_APN806 -UCONFIG_MC_STATIC \
    -UCONFIG_MC_STATIC_PRINT -UCONFIG_PHY_STATIC \
    -UCONFIG_64BIT -UCONFIG_A3700 -UA3900 -UA80X0 \
    -UA70X0

    Signed-off-by: Chris Packham
    Reviewed-by: Stefan Roese
    Tested-by: Baruch Siach
    Signed-off-by: Stefan Roese

    Chris Packham
     

06 Aug, 2018

1 commit

  • Move the gdsys Controlcenter DC specific build time kwbimage.cfg
    generation code into the mach-mvebu/ directory to be shared by all 32bit
    mvebu platforms.

    Remove board specific kwbimage.cfg files, and use the generated one
    instead. These files are all identical, with two exceptions. Clearfog
    and Helios4 use the sdio boot device, whereas all others use spi. Update
    the defconfigs for the exceptional boards to generate the same
    kwbimage.cfg as before.

    Signed-off-by: Baruch Siach
    Signed-off-by: Stefan Roese

    Baruch Siach
     

01 Aug, 2018

1 commit

  • After talking with Albert, mark these boards as orphaned as he no longer
    has one.

    Cc: Albert ARIBAUD
    Cc: Vagrant Cascadian
    Cc: Chris Packham
    Signed-off-by: Tom Rini

    Tom Rini
     

14 May, 2018

2 commits

  • This restores support for configuring the timing mode based on the
    ddr_topology. This was originally implemented in commit 90bcc3d38d2b
    ("driver/ddr: Add support for setting timing in hws_topology_map") but
    was removed as part of the upstream sync.

    Signed-off-by: Chris Packham
    Signed-off-by: Stefan Roese

    Chris Packham
     
  • This syncs drivers/ddr/marvell/a38x/ with the mv_ddr-armada-17.10 branch
    of https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git.

    The upstream code is incorporated omitting the ddr4 and apn806 and
    folding the nested a38x directory up one level. After that a
    semi-automated step is used to drop unused features with unifdef

    find drivers/ddr/marvell/a38x/ -name '*.[ch]' | \
    xargs unifdef -m -UMV_DDR -UMV_DDR_ATF -UCONFIG_DDR4 \
    -UCONFIG_APN806 -UCONFIG_MC_STATIC \
    -UCONFIG_MC_STATIC_PRINT -UCONFIG_PHY_STATIC \
    -UCONFIG_64BIT

    INTER_REGS_BASE is updated to be defined as SOC_REGS_PHY_BASE.

    Some now empty files are removed and the ternary license is replaced
    with a SPDX GPL-2.0+ identifier.

    Signed-off-by: Chris Packham
    Signed-off-by: Stefan Roese

    Chris Packham
     

07 May, 2018

1 commit

  • When U-Boot started using SPDX tags we were among the early adopters and
    there weren't a lot of other examples to borrow from. So we picked the
    area of the file that usually had a full license text and replaced it
    with an appropriate SPDX-License-Identifier: entry. Since then, the
    Linux Kernel has adopted SPDX tags and they place it as the very first
    line in a file (except where shebangs are used, then it's second line)
    and with slightly different comment styles than us.

    In part due to community overlap, in part due to better tag visibility
    and in part for other minor reasons, switch over to that style.

    This commit changes all instances where we have a single declared
    license in the tag as both the before and after are identical in tag
    contents. There's also a few places where I found we did not have a tag
    and have introduced one.

    Signed-off-by: Tom Rini

    Tom Rini
     

30 Mar, 2018

1 commit


30 Nov, 2017

1 commit

  • The order of members in struct hws_topology_map is cas_wl, cas_l. The
    comments in the original db-88f6820-gp.c had this wrong and have been
    copied to other Armada-385 based boards. Practically this hasn't made a
    difference since all these boards set both cas_wl and cas_l to 0
    (autodetect) but if there were ever a board that did need to set these
    explicitly they would run into unexpected issued.

    Update the comments to reflect the correct order of structure members.

    Reported-by: Tobi Wulff
    Signed-off-by: Chris Packham
    Reviewed-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Chris Packham
     

16 Nov, 2017

1 commit

  • This makes the initial changes need to support the
    a38x series of SOCs. It adds the device-tree identifier
    as well as changing the board_support function to take
    the IO address designated by device-tree.

    Signed-off-by: Jon Nettleton
    [baruch: use fdt_addr_t; update 37xx and 8K implementations]
    Signed-off-by: Baruch Siach
    Signed-off-by: Stefan Roese

    Jon Nettleton
     

06 Nov, 2017

1 commit

  • As part of my usual round of build testing, output about missing
    MAINTAINERS information was not logged, and thus often overlooked.
    Correct that mistake by ensuring that I log the output of
    genboardscfg.py every time. As part of that, address a number of
    missing MAINTAINERS entires. In the case of a missing file, I have put
    the original submitter down. In the rest of the cases I have added the
    config (and sometimes relevant header file) to the existing set of file
    globs.

    Signed-off-by: Tom Rini

    Tom Rini
     

21 Aug, 2017

1 commit


12 Jul, 2017

1 commit

  • The DDR3 training code for Marvell A38X currently computes 1t timing
    when given board topology map of the Turris Omnia, but Omnia needs 2t.

    This patch adds support for enforcing the 2t timing in struct
    hws_topology_map, through a new enum hws_timing, which can assume
    following values:
    HWS_TIM_DEFAULT - default behaviour, compute whether to enable 2t
    from the number of CSs
    HWS_TIM_1T - enforce 1t
    HWS_TIM_2T - enforce 2t

    This patch also sets all the board topology maps (db-88f6820-amc,
    db-88f6820-gp, controlcenterdc and clearfog) to have timing set to
    HWS_TIM_DEFAULT.

    Signed-off-by: Marek Behun
    Reviewed-by: Stefan Roese
    Signed-off-by: Stefan Roese

    Marek Behún
     

05 Jun, 2017

1 commit


23 Mar, 2017

4 commits

  • Bypass XHCI and AHCi board configuration flow on ESPRESSOBin
    community board.
    The community board does not have i2c expander and USB VBUS
    is always on, so the scan for AHCi and USB devices can be
    faster without unneded configurations.

    Signed-off-by: Konstantin Porotchkin
    Cc: Stefan Roese
    Cc: Igal Liberman
    Cc: Nadav Haklai
    Signed-off-by: Stefan Roese

    Konstantin Porotchkin
     
  • Implement the board-specific network init function for
    ESPRESSOBin community board, setting the on-board Topaz
    switch port to forward mode and allow network connection
    through any of the available Etherenet ports.

    Signed-off-by: Konstantin Porotchkin
    Cc: Stefan Roese
    Cc: Igal Liberman
    Cc: Nadav Haklai
    Cc: Joe Hershberger
    Reviewed-by: Joe Hershberger
    Signed-off-by: Stefan Roese

    Konstantin Porotchkin
     
  • Fix the default pin control values in a board-specific
    function on early board init stage.
    This fix allows the NETA driver to work in RGMII
    mode until the full-featured pin control driver gets
    introduced.

    Signed-off-by: Konstantin Porotchkin
    Cc: Stefan Roese
    Cc: Igal Liberman
    Cc: Nadav Haklai
    Signed-off-by: Stefan Roese

    Konstantin Porotchkin
     
  • Modify the file names and deifinitions relater to Marvell
    db-77f3720 board support. Convert these names to more generic
    armada-37xx platform for future addition of more boards
    based on the same SoC family.

    Signed-off-by: Konstantin Porotchkin
    Cc: Stefan Roese
    Cc: Igal Liberman
    Cc: Nadav Haklai
    Signed-off-by: Stefan Roese

    Konstantin Porotchkin
     

29 Jan, 2017

1 commit


28 Dec, 2016

1 commit


05 Dec, 2016

3 commits

  • This patch adds the necessary files to support the Marvell Armada 8k
    devel board. Most board specfic files are shared with the Armada 7k
    boards under the name "armada-8k*". So only minimal changes are
    necessary to add this basic board support (except the DT files of
    course).

    Signed-off-by: Stefan Roese
    Cc: Nadav Haklai
    Cc: Neta Zur Hershkovits
    Cc: Kostya Porotchkin
    Cc: Omri Itach
    Cc: Igal Liberman
    Cc: Haim Boot
    Cc: Hanna Hawa

    Stefan Roese
     
  • This patch uses of_machine_is_compatible() to detect the board at runtime
    and only configured the I2C IO expander for the xHCI power / reset on
    the DB-88F7040 board. As this code will be used by other Armada-7k/8k
    ports, its necessary to use this runtime detection here.

    Signed-off-by: Stefan Roese
    Cc: Nadav Haklai
    Cc: Neta Zur Hershkovits
    Cc: Kostya Porotchkin
    Cc: Omri Itach
    Cc: Igal Liberman
    Cc: Haim Boot
    Cc: Hanna Hawa

    Stefan Roese
     
  • This moves some of the Armada DB-88F7040 board specific files to a more
    generic name: armada-8k. This is in preparation for the Armada-8k
    support which will be added soon. And since both platforms share
    most devices, lets also share most source files to not duplicate
    the code here.

    Signed-off-by: Stefan Roese
    Cc: Nadav Haklai
    Cc: Neta Zur Hershkovits
    Cc: Kostya Porotchkin
    Cc: Omri Itach
    Cc: Igal Liberman
    Cc: Haim Boot
    Cc: Hanna Hawa

    Stefan Roese
     

27 Sep, 2016

2 commits

  • This patch adds basic support for the Marvell Armada 7K DB-88F7040
    development board. Supported are the following interfaces:
    - UART
    - SPI (incl. SPI NOR)
    - I2C
    - USB
    - SATA / AHCI

    Support for other interfaces will follow.

    Signed-off-by: Stefan Roese
    Cc: Nadav Haklai
    Cc: Neta Zur Hershkovits
    Cc: Kostya Porotchkin
    Cc: Omri Itach
    Cc: Igal Liberman
    Cc: Haim Boot
    Cc: Hanna Hawa

    Stefan Roese
     
  • This patch adds basic support for the Marvell Armada 3700 DB-88F3720
    development board. Supported are the following interfaces:
    - UART
    - SPI (incl. SPI NOR)
    - I2C
    - Ethernet

    Signed-off-by: Stefan Roese
    Cc: Nadav Haklai
    Cc: Kostya Porotchkin
    Cc: Wilson Ding
    Cc: Victor Gu
    Cc: Hua Jing
    Cc: Terry Zhou
    Cc: Hanna Hawa
    Cc: Haim Boot

    Stefan Roese
     

24 Sep, 2016

1 commit

  • This board is a plug in card for Marvell's switch system development
    kits. Form-factor aside it is similar to the DB-88F6820-GP with the
    following differences.
    - TCLK is 200MHz
    - SPI1 is used
    - No SATA
    - No MMC
    - NAND flash

    Reviewed-by: Simon Glass
    Signed-off-by: Chris Packham
    Signed-off-by: Stefan Roese

    Chris Packham
     

28 May, 2016

1 commit


04 Apr, 2016

1 commit

  • This patch adds basic support for the Marvell A375 eval board. Tested
    are the following interfaces:
    - I2C
    - SPI
    - SPI NOR
    - Ethernet (mvpp2), port 0 & 1

    Currently the A375 SerDes and DDR3 init code is not intergrated. So
    the SPL U-Boot is not fully functional.

    Right now, this A375 mainline U-Boot can only be used by chainloading
    it via the original Marvell U-Boot. This can be done via this
    command:

    => tftpboot 00800000 a375/u-boot-dtb.bin;go 00800000

    Signed-off-by: Stefan Roese
    Cc: Luka Perkov

    Stefan Roese
     

24 Mar, 2016

1 commit


14 Jan, 2016

3 commits

  • Merging all the board specific Kconfig options into the main Kconfig file
    for mach-mvebu makes things easier to maintain.

    Signed-off-by: Stefan Roese
    Cc: Luka Perkov

    Stefan Roese
     
  • Update this driver to support driver model. As all MVEBU boards using
    this driver are converted with this patch, the non-driver-model code
    can be removed completely. This is also the reason why this patch
    is quite big and includes a) the driver change and b) the
    platform change. As its not git-bisect save otherwise.

    With this conversion, some parameters are now extracted from the
    DT instread of using the config header defines. The supported
    properties right now are:

    PHY-mode ("phy-mode") and PHY-address ("reg").

    The base addresses for the ethernet controllers can be removed from
    the header files as well.

    Please note that this patch also removes the E1000 network driver
    from some MVEBU config headers. This is necessary, as with DM_ETH
    configured and the e1000 driver enabled, the PCI driver also needs
    to support DM. But the MVEBU PCI(e) driver still needs to get
    ported to DM. When this is done, the E1000 driver can be enabled
    again.

    Signed-off-by: Stefan Roese
    Cc: Luka Perkov
    Cc: Dirk Eibach
    Cc: Joe Hershberger
    Cc: Simon Glass

    Stefan Roese
     
  • This patch adds full DM support to the SPL on MVEBU. Currently
    only serial is supported. Other drivers will follow.

    This patch also adds the necessary config values for the DEBUG UART
    to the MVEBU defconfig files. This came in handy while implementing
    this DM support.

    Additionally, the mvebu specific SPL linker script is removed and
    this common one is used instead:

    arch/arm/cpu/u-boot-spl.lds

    This common linker script already handles all special cases. No need
    to reinvent the wheel for MVEBU here.

    Signed-off-by: Stefan Roese
    Cc: Luka Perkov
    Cc: Dirk Eibach
    Cc: Simon Glass

    Stefan Roese