mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-24 21:54:01 +00:00
Merge git://git.denx.de/u-boot-marvell
This commit is contained in:
commit
084edbb689
8 changed files with 164 additions and 13 deletions
|
@ -53,7 +53,7 @@
|
|||
|
||||
aliases {
|
||||
ethernet0 = ð0;
|
||||
ethernet1 = ð1;
|
||||
ethernet1 = ð2;
|
||||
i2c0 = &i2c0;
|
||||
spi1 = &spi1;
|
||||
};
|
||||
|
|
|
@ -17,16 +17,29 @@ $ 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 (0: OFF, 1: ON):
|
||||
|
||||
ClearFog Base: 01001
|
||||
ClearFog Pro: 11110
|
||||
Set the SW1 DIP switches to UART boot (see above).
|
||||
|
||||
Run the following command to initiate U-Boot download:
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ CONFIG_ARCH_MVEBU=y
|
|||
CONFIG_SYS_MALLOC_F_LEN=0x2000
|
||||
CONFIG_TARGET_MVEBU_ARMADA_37XX=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="armada-3720-db"
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_DEBUG_UART=y
|
||||
CONFIG_AHCI=y
|
||||
# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||
|
|
|
@ -3,6 +3,7 @@ CONFIG_ARCH_MVEBU=y
|
|||
CONFIG_SYS_MALLOC_F_LEN=0x2000
|
||||
CONFIG_TARGET_MVEBU_ARMADA_37XX=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="armada-3720-espressobin"
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_DEBUG_UART=y
|
||||
CONFIG_AHCI=y
|
||||
# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||
|
|
|
@ -160,12 +160,12 @@ config FTMAC100
|
|||
This MAC is present in Andestech SoCs.
|
||||
|
||||
config MVNETA
|
||||
bool "Marvell Armada 385 network interface support"
|
||||
depends on ARMADA_XP || ARMADA_38X
|
||||
bool "Marvell Armada XP/385/3700 network interface support"
|
||||
depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
|
||||
select PHYLIB
|
||||
help
|
||||
This driver supports the network interface units in the
|
||||
Marvell ARMADA XP and 38X SoCs
|
||||
Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
|
||||
|
||||
config MVPP2
|
||||
bool "Marvell Armada 375/7K/8K network interface support"
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
if ARCH_MVEBU
|
||||
|
||||
config PINCTRL_ARMADA_37XX
|
||||
depends on ARMADA_3700
|
||||
depends on ARMADA_3700 && PINCTRL_FULL
|
||||
bool "Armada 37xx pin control driver"
|
||||
help
|
||||
Support pin multiplexing and pin configuration control on
|
||||
Marvell's Armada-37xx SoC.
|
||||
|
||||
config PINCTRL_ARMADA_8K
|
||||
depends on ARMADA_8K
|
||||
depends on ARMADA_8K && PINCTRL_FULL
|
||||
bool "Armada 7k/8k pin control driver"
|
||||
help
|
||||
Support pin multiplexing and pin configuration control on
|
||||
|
|
|
@ -44,9 +44,6 @@
|
|||
/*
|
||||
* Other required minimal configurations
|
||||
*/
|
||||
#define CONFIG_SYS_LONGHELP
|
||||
#define CONFIG_AUTO_COMPLETE
|
||||
#define CONFIG_CMDLINE_EDITING
|
||||
#define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */
|
||||
#define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
|
||||
#define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */
|
||||
|
@ -107,4 +104,24 @@
|
|||
|
||||
#define CONFIG_SUPPORT_VFAT
|
||||
|
||||
#include <config_distro_defaults.h>
|
||||
|
||||
#define BOOT_TARGET_DEVICES(func) \
|
||||
func(MMC, mmc, 1) \
|
||||
func(MMC, mmc, 0) \
|
||||
func(USB, usb, 0) \
|
||||
func(SCSI, scsi, 0) \
|
||||
func(PXE, pxe, na) \
|
||||
func(DHCP, dhcp, na)
|
||||
|
||||
#include <config_distro_bootcmd.h>
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"scriptaddr=0x4d00000\0" \
|
||||
"pxefile_addr_r=0x4e00000\0" \
|
||||
"fdt_addr_r=0x4f00000\0" \
|
||||
"kernel_addr_r=0x5000000\0" \
|
||||
"ramdisk_addr_r=0x8000000\0" \
|
||||
BOOTENV
|
||||
|
||||
#endif /* _CONFIG_MVEBU_ARMADA_37XX_H */
|
||||
|
|
119
tools/mrvl_uart.sh
Executable file
119
tools/mrvl_uart.sh
Executable file
|
@ -0,0 +1,119 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
######################################################
|
||||
# Copyright (C) 2016 Marvell International Ltd.
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# https://spdx.org/licenses
|
||||
#
|
||||
# Author: Konstantin Porotchkin kostap@marvell.com
|
||||
#
|
||||
# Version 0.3
|
||||
#
|
||||
# UART recovery downloader for Armada SoCs
|
||||
#
|
||||
######################################################
|
||||
|
||||
port=$1
|
||||
file=$2
|
||||
speed=$3
|
||||
|
||||
pattern_repeat=1500
|
||||
default_baudrate=115200
|
||||
tmpfile=/tmp/xmodem.pattern
|
||||
tools=( dd stty sx minicom )
|
||||
|
||||
case "$3" in
|
||||
2)
|
||||
fast_baudrate=230400
|
||||
prefix="\xF2"
|
||||
;;
|
||||
4)
|
||||
fast_baudrate=460800
|
||||
prefix="\xF4"
|
||||
;;
|
||||
8)
|
||||
fast_baudrate=921600
|
||||
prefix="\xF8"
|
||||
;;
|
||||
*)
|
||||
fast_baudrate=$default_baudrate
|
||||
prefix="\xBB"
|
||||
esac
|
||||
|
||||
if [[ -z "$port" || -z "$file" ]]
|
||||
then
|
||||
echo -e "\nMarvell recovery image downloader for Armada SoC family."
|
||||
echo -e "Command syntax:"
|
||||
echo -e "\t$(basename $0) <port> <file> [2|4|8]"
|
||||
echo -e "\tport - serial port the target board connected to"
|
||||
echo -e "\tfile - recovery boot image for target download"
|
||||
echo -e "\t2|4|8 - times to increase the default serial port speed by"
|
||||
echo -e "For example - load the image over ttyUSB0 @ 460800 baud:"
|
||||
echo -e "$(basename $0) /dev/ttyUSB0 /tmp/flash-image.bin 4\n"
|
||||
echo -e "=====WARNING====="
|
||||
echo -e "- The speed-up option is not awailable in SoC families prior to A8K+"
|
||||
echo -e "- This utility is not compatible with Armada 37xx SoC family\n"
|
||||
fi
|
||||
|
||||
# Sanity checks
|
||||
if [ -c "$port" ]
|
||||
then
|
||||
echo -e "Using device connected on serial port \"$port\""
|
||||
else
|
||||
echo "Wrong serial port name!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -f "$file" ]
|
||||
then
|
||||
echo -e "Loading flash image file \"$file\""
|
||||
else
|
||||
echo "File $file does not exist!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Verify required tools installation
|
||||
for tool in ${tools[@]}
|
||||
do
|
||||
toolname=`which $tool`
|
||||
if [ -z "$toolname" ]
|
||||
then
|
||||
echo -e "Missing installation of \"$tool\" --> Exiting"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
echo -e "Recovery will run at $fast_baudrate baud"
|
||||
echo -e "========================================"
|
||||
|
||||
if [ -f "$tmpfile" ]
|
||||
then
|
||||
rm -f $tmpfile
|
||||
fi
|
||||
|
||||
# Send the escape sequence to target board using default debug port speed
|
||||
stty -F $port raw ignbrk time 5 $default_baudrate
|
||||
counter=0
|
||||
while [ $counter -lt $pattern_repeat ]; do
|
||||
echo -n -e "$prefix\x11\x22\x33\x44\x55\x66\x77" >> $tmpfile
|
||||
let counter=counter+1
|
||||
done
|
||||
|
||||
echo -en "Press the \"Reset\" button on the target board and "
|
||||
echo -en "the \"Enter\" key on the host keyboard simultaneously"
|
||||
read
|
||||
dd if=$tmpfile of=$port &>/dev/null
|
||||
|
||||
# Speed up the binary image transfer
|
||||
stty -F $port raw ignbrk time 5 $fast_baudrate
|
||||
sx -vv $file > $port < $port
|
||||
#sx-at91 $port $file
|
||||
|
||||
# return the port to the default speed
|
||||
stty -F $port raw ignbrk time 5 $default_baudrate
|
||||
|
||||
# Optional - fire up Minicom
|
||||
minicom -D $port
|
||||
|
Loading…
Reference in a new issue