Commit d22650af authored by Allen Martin's avatar Allen Martin Committed by Wolfgang Denk

mkconfig: add support for SPL CPU

Add support for specifying a differnt CPU for main u-boot and SPL
u-boot builds.  This is done by adding an optional SPL CPU after the
main CPU in boards.cfg as follows:

     normal_cpu:spl_cpu

This this case CPU will be set to "normal_cpu" during the main u-boot
build and "spl_cpu" during the SPL build.
Signed-off-by: default avatarAllen Martin <amartin@nvidia.com>
parent f28e2695
......@@ -11,6 +11,11 @@
# Lines starting with '#' are comments.
# Blank lines are ignored.
#
# The CPU field takes the form:
# cpu[:spl_cpu]
# If spl_cpu is specified the make variable CPU will be set to this
# during the SPL build.
#
# The options field takes the form:
# <board config name>[:comma separated config options]
# Each config option has the form (value defaults to "1"):
......
......@@ -66,3 +66,15 @@ CONFIG_SPL_DMA_SUPPORT (drivers/dma/libdma.o)
CONFIG_SPL_POST_MEM_SUPPORT (post/drivers/memory.o)
CONFIG_SPL_NAND_LOAD (drivers/mtd/nand/nand_spl_load.o)
CONFIG_SPL_SPI_LOAD (drivers/mtd/spi/spi_spl_load.o)
Normally CPU is assumed to be the same between the SPL and normal
u-boot build. However it is possible to specify a different CPU for
the SPL build for cases where the SPL is expected to run on a
different CPU model from the main u-boot. This is done by specifying
an SPL CPU in boards.cfg as follows:
normal_cpu:spl_cpu
This this case CPU will be set to "normal_cpu" during the main u-boot
build and "spl_cpu" during the SPL build.
......@@ -60,6 +60,11 @@ CONFIG_NAME="${1%_config}"
arch="$2"
cpu="$3"
tmp="${cpu#*:}"
if [ "$tmp" != "$cpu" ] ; then
spl_cpu=$tmp
cpu="${cpu%:*}"
fi
if [ "$4" = "-" ] ; then
board=${BOARD_NAME}
else
......@@ -131,7 +136,15 @@ fi
# Create include file for Make
#
echo "ARCH = ${arch}" > config.mk
echo "CPU = ${cpu}" >> config.mk
if [ ! -z "$spl_cpu" ] ; then
echo 'ifeq ($(CONFIG_SPL_BUILD),y)' >> config.mk
echo "CPU = ${spl_cpu}" >> config.mk
echo "else" >> config.mk
echo "CPU = ${cpu}" >> config.mk
echo "endif" >> config.mk
else
echo "CPU = ${cpu}" >> config.mk
fi
echo "BOARD = ${board}" >> config.mk
[ "${vendor}" ] && echo "VENDOR = ${vendor}" >> config.mk
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment