u-boot/board/solidrun/clearfog
Chris Packham 2b4ffbf6b4 ARM: mvebu: a38x: sync ddr training code with upstream
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 <judge.packham@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
2018-05-14 10:01:56 +02:00
..
clearfog.c ARM: mvebu: a38x: sync ddr training code with upstream 2018-05-14 10:01:56 +02:00
kwbimage.cfg arm: mvebu: clearfog: fix chip name comment 2017-07-12 06:57:55 +02:00
MAINTAINERS arm: mvebu: Add SolidRun ClearFog Armada 38x initial support 2016-01-14 14:08:59 +01:00
Makefile SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
README arm: mvebu: ClearFog: document boot selection switches, update UART 2018-01-09 16:41:00 +01:00

Update from original Marvell U-Boot to mainline U-Boot:
-------------------------------------------------------

Generate the U-Boot image with these commands:

$ make clearfog_defconfig
$ make

The resulting image including the SPL binary with the
full DDR setup is "u-boot-spl.kwb".

Now all you need to do is copy this image on a SD card.
For example with this command:

$ sudo dd if=u-boot-spl.kwb of=/dev/sdX bs=512 seek=1

Please use the correct device node for your setup instead
of "/dev/sdX" here!

Boot selection:
---------------

Before powering up the board, boot selection should be done via the SW1 dip
switch (0: OFF, 1: ON):

 - SPI:     00010
 - SD/eMMC: 00111
 - M.2 SSD: 11100
 - UART:    01001 [1]

[1]: According to SolidRun's manual, 11110 should be used for UART booting on
     the ClearFog 'Pro' variant.
     However, this doesn't work (anymore) at least on Rev. 2.1 (but '01001' as
     mentionend for the 'Base' variant does).

Boot from UART:
---------------

Connect the on-board micro-USB (CF Pro: CON11, CF Base: CON5)
to your host.

Set the SW1 DIP switches to UART boot (see above).

Run the following command to initiate U-Boot download:

  ./tools/kwboot -b u-boot-spl.kwb /dev/ttyUSBX

Use the correct UART device node for /dev/ttyUSBX.

When download finishes start your favorite terminal emulator
on /dev/ttyUSBX.