summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorLuotao Fu <l.fu@pengutronix.de>2010-02-24 17:33:34 +0100
committerLuotao Fu <l.fu@pengutronix.de>2010-02-24 17:36:47 +0100
commit4d528d5624bc0984a5cd6e29db743bb7424a9967 (patch)
tree230f8e6297fab517d51d4b0519e7073dd565c2b7 /tests
parent292ab1f265be2d15855821b2f5a7747b6331066c (diff)
downloadptxdist-4d528d5624bc0984a5cd6e29db743bb7424a9967.tar.gz
ptxdist-4d528d5624bc0984a5cd6e29db743bb7424a9967.tar.xz
[ptxdist] add barebox environment directory
we now no longer search for barebox environment in u-boot-env in BSP. Instead we have our own environment directory called barebox-env. Signed-off-by: Luotao Fu <l.fu@pengutronix.de>
Diffstat (limited to 'tests')
-rwxr-xr-xtests/make_barebox_env29
-rwxr-xr-xtests/setenv51
2 files changed, 57 insertions, 23 deletions
diff --git a/tests/make_barebox_env b/tests/make_barebox_env
index b362dd074..7af778891 100755
--- a/tests/make_barebox_env
+++ b/tests/make_barebox_env
@@ -1,18 +1,37 @@
#!/bin/bash
set -e
-PTXDIST_SETENV_U_BOOT_V2_ENV="${1}"
-ENVTMPDIR="$(mktemp -d "${PTXDIST_TEMPDIR}/uboot_v2_env.XXXXXX")"
+PTXDIST_SETENV_BAREBOX_ENV="${1}"
+ENVTMPDIR="$(mktemp -d "${PTXDIST_TEMPDIR}/barebox_env.XXXXXX")"
-tar -C "${PTXDIST_PLATFORMCONFIGDIR}/u-boot-env/" -c . \
+#source and export variables, so we can access them later with awk.
+set -a
+. "${PTXDIST_BOARDSETUP}"
+set +a
+
+CONFFILE="${PTXDIST_PLATFORMCONFIGDIR}/barebox-env/config${PTXDIST_PLATFORMSUFFIX}"
+if [ ! -r "${CONFFILE}.in" ]; then
+ if [ -r "`dirname "${CONFFILE}"`/config.in" ]; then
+ CONFFILE="`dirname "${CONFFILE}"`/config"
+ else
+ echo "Config file for barebox environment is missing!" >&2
+ exit 1
+ fi
+fi
+
+#Replace @magics@ with PTXCONF-variables
+#FIXME: Warn if variable is empty?
+awk 'match($0, "@[A-Z0-9_]+@") { var=substr($0,RSTART+1,RLENGTH-2); gsub("@"var"@", ENVIRON[var]); } {print} ' "${CONFFILE}".in >"${CONFFILE}"
+
+tar -C "${PTXDIST_PLATFORMCONFIGDIR}/barebox-env/" -c . \
--exclude .svn \
--exclude .pc \
--exclude .git \
- --exclude "${PTXDIST_PLATFORMCONFIGDIR}/u-boot-env/config.in" \
+ --exclude "${PTXDIST_PLATFORMCONFIGDIR}/barebox-env/config.in" \
| tar -C "${ENVTMPDIR}" -x
${PTXDIST_SYSROOT_HOST}/bin/bareboxenv -s "${ENVTMPDIR}" "${IMAGEDIR}/barebox-environment"
-cp "${IMAGEDIR}/barebox-environment" "${PTXDIST_SETENV_U_BOOT_V2_ENV}"
+cp "${IMAGEDIR}/barebox-environment" "${PTXDIST_SETENV_BAREBOX_ENV}"
rm -rf "${ENVTMPDIR}"
diff --git a/tests/setenv b/tests/setenv
index e0a8e1757..450860390 100755
--- a/tests/setenv
+++ b/tests/setenv
@@ -5,28 +5,43 @@ if [ ! -e "${PTXDIST_BOARDSETUP}" ]; then
exit 1
fi
-CONFFILE="${PTXDIST_PLATFORMCONFIGDIR}/u-boot-env/config${PTXDIST_PLATFORMSUFFIX}"
-if [ ! -r "${CONFFILE}.in" ]; then
- if [ -r "`dirname "${CONFFILE}"`/config.in" ]; then
- CONFFILE="`dirname "${CONFFILE}"`/config"
- else
- echo "Config file for uboot environment is missing!" >&2
- exit 1
- fi
-fi
-
-#source and export variables, so we can access them later with awk.
set -a
. "${PTXDIST_BOARDSETUP}"
set +a
-#Replace @magics@ with PTXCONF-variables
-#FIXME: Warn if variable is empty?
-awk 'match($0, "@[A-Z0-9_]+@") { var=substr($0,RSTART+1,RLENGTH-2); gsub("@"var"@", ENVIRON[var]); } {print} ' "${CONFFILE}".in >"${CONFFILE}"
+UBOOT_ENVDIR="${PTXDIST_PLATFORMCONFIGDIR}/u-boot-env"
+BAREBOX_ENVDIR="${PTXDIST_PLATFORMCONFIGDIR}/barebox-env"
+
+if [ -d ${UBOOT_ENVDIR} -a -r ${UBOOT_ENVDIR} ]; then
+ CONFFILE="${UBOOT_ENVDIR}/config${PTXDIST_PLATFORMSUFFIX}"
+ if [ ! -r "${CONFFILE}.in" ]; then
+ if [ -r "`dirname "${CONFFILE}"`/config.in" ]; then
+ CONFFILE="`dirname "${CONFFILE}"`/config"
+ else
+ echo "Direcotry for U-Boot environment found, but config file is missing!" >&2
+ exit 1
+ fi
+ fi
+ awk 'match($0, "@[A-Z0-9_]+@") { var=substr($0,RSTART+1,RLENGTH-2); gsub("@"var"@", ENVIRON[var]); } {print} ' "${CONFFILE}".in >"${CONFFILE}"
+fi
+
+if [ -d "${BAREBOX_ENVDIR}" -a -r "${BAREBOX_ENVDIR}" -a -z "${CONFFILE}" ]; then
+ # Neith u-boot-v2 nor barebox acutally need CONFFILE while calling
+ # kermit setenv function. However U-Boot V1 need this. So we have to
+ # pass this information to the kwrapper.
+ # barebox parses its conffile in make_barebox_env separately. give a
+ # dummy here to make sure that setenv can parse the parameters correctly
+ CONFFILE="NULL";
+fi
+
+if [ -z "${CONFFILE}" ]; then
+ echo "No environment directory found!" >&2
+ exit 1
+fi
-PTXDIST_SETENV_U_BOOT_V2_ENV="$(mktemp "${PTXCONF_BOARDSETUP_TFTP_PATH}/u-boot-v2-environment.XXXXXX")"
-chmod 644 "${PTXDIST_SETENV_U_BOOT_V2_ENV}"
+PTXDIST_SETENV_ENV_IMAGE="$(mktemp "${PTXCONF_BOARDSETUP_TFTP_PATH}/environment_image.XXXXXX")"
+chmod 644 "${PTXDIST_SETENV_ENV_IMAGE}"
-"${PTXDIST_TOPDIR}/tests/kwrapper" setenv "${CONFFILE}" "${PTXDIST_SETENV_U_BOOT_V2_ENV}"
+"${PTXDIST_TOPDIR}/tests/kwrapper" setenv "${CONFFILE}" "${PTXDIST_SETENV_ENV_IMAGE}"
-rm -rf "${PTXDIST_SETENV_U_BOOT_V2_ENV}"
+rm -rf "${PTXDIST_SETENV_ENV_IMAGE}"