summaryrefslogtreecommitdiff
path: root/recipes-bsp
diff options
context:
space:
mode:
authorMarcel Ziswiler <marcel.ziswiler@toradex.com>2015-10-30 10:40:16 +0100
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2015-10-30 10:40:16 +0100
commit19d6bba4d745191e910869385d1236cbaa03da83 (patch)
tree800953f5d27ffa4abbdc472be824f88ad1040c5d /recipes-bsp
parent0b9d7b538d495fecaadda15f6f0902fe7c2bb5e1 (diff)
apalis/colibri_imx6/t30: u-boot-fw-utils: update fw_printenv/setenv
Introduce/update postinst code to dynamically adjust fw_env.config and fw_unlock_mmc.sh shell profile extension script to cope with our new unified eMMC layout: boot area partition 1 aka primary eMMC boot sector: with U-Boot boot loader and the U-Boot environment before the configblock at the end of that boot area partition
Diffstat (limited to 'recipes-bsp')
-rw-r--r--recipes-bsp/u-boot/files/fw_unlock_mmc.sh6
-rw-r--r--recipes-bsp/u-boot/files/mx6/fw_env.config23
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-fsl-fw-utils_git.bb20
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-fw-utils_git.bb9
4 files changed, 28 insertions, 30 deletions
diff --git a/recipes-bsp/u-boot/files/fw_unlock_mmc.sh b/recipes-bsp/u-boot/files/fw_unlock_mmc.sh
index 8982640..f9f253b 100644
--- a/recipes-bsp/u-boot/files/fw_unlock_mmc.sh
+++ b/recipes-bsp/u-boot/files/fw_unlock_mmc.sh
@@ -1,6 +1,6 @@
-# Give fw_setenv mmcblk0boot1 write permissions
+# Give fw_setenv mmcblk0boot0 write permissions
function fw_setenv() {
- echo 0 > /sys/block/mmcblk0boot1/force_ro
+ echo 0 > /sys/block/mmcblk0boot0/force_ro
/sbin/fw_setenv "$@"
- echo 1 > /sys/block/mmcblk0boot1/force_ro
+ echo 1 > /sys/block/mmcblk0boot0/force_ro
}
diff --git a/recipes-bsp/u-boot/files/mx6/fw_env.config b/recipes-bsp/u-boot/files/mx6/fw_env.config
deleted file mode 100644
index efd358b..0000000
--- a/recipes-bsp/u-boot/files/mx6/fw_env.config
+++ /dev/null
@@ -1,23 +0,0 @@
-# Configuration file for fw_(printenv/setenv) utility.
-# Up to two entries are valid, in this case the redundant
-# environment sector is assumed present.
-# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash.
-# Futhermore, if the Flash sector size is ommitted, this value is assumed to
-# be the same as the Environment size, which is valid for NOR and SPI-dataflash
-
-# NOR example
-# MTD device name Device offset Env. size Flash sector size Number of sectors
-#/dev/mtd1 0x0000 0x4000 0x4000
-#/dev/mtd2 0x0000 0x4000 0x4000
-
-# MTD SPI-dataflash example
-# MTD device name Device offset Env. size Flash sector size Number of sectors
-#/dev/mtd5 0x4200 0x4200
-#/dev/mtd6 0x4200 0x4200
-
-# NAND example
-#/dev/mtd0 0x4000 0x4000 0x20000 2
-
-# Block device example
-# Apalis iMX6
-/dev/mmcblk0 0x80000 0x2000
diff --git a/recipes-bsp/u-boot/u-boot-toradex-fsl-fw-utils_git.bb b/recipes-bsp/u-boot/u-boot-toradex-fsl-fw-utils_git.bb
index 4e5c2d8..dd2abf7 100644
--- a/recipes-bsp/u-boot/u-boot-toradex-fsl-fw-utils_git.bb
+++ b/recipes-bsp/u-boot/u-boot-toradex-fsl-fw-utils_git.bb
@@ -19,6 +19,8 @@ SRCBRANCH_mx6 = "2015.04-toradex"
SRC_URI = "git://git.toradex.com/u-boot-toradex.git;protocol=git;branch=${SRCBRANCH} \
file://fw_env.config \
"
+SRC_URI_append_mx6 = " file://fw_unlock_mmc.sh \
+"
PV = "${PR}+gitr${SRCREV}"
PR = "r0"
@@ -43,4 +45,22 @@ do_install () {
install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/
}
+do_install_append_mx6() {
+ install -d ${D}${sysconfdir}/profile.d/
+ install -m 0644 ${WORKDIR}/fw_unlock_mmc.sh ${D}${sysconfdir}/profile.d/fw_unlock_mmc.sh
+}
+
+pkg_postinst_${PN}_mx6 () {
+ # can't do this offline
+ if [ "x$D" != "x" ]; then
+ exit 1
+ fi
+ # Environment in eMMC, before the configblock at the end of 1st "boot sector"
+ DISK="mmcblk0boot0"
+ DISK_SIZE=`cat /sys/block/$DISK/size`
+ CONFIG_ENV_SIZE=8192 # 0x2000
+ CONFIG_ENV_OFFSET=`expr $DISK_SIZE \* 512 - $CONFIG_ENV_SIZE - 512`
+ printf "/dev/%s\t0x%X\t0x%X\n" $DISK $CONFIG_ENV_OFFSET $CONFIG_ENV_SIZE >> "/etc/fw_env.config"
+}
+
PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/u-boot/u-boot-toradex-fw-utils_git.bb b/recipes-bsp/u-boot/u-boot-toradex-fw-utils_git.bb
index 959860d..0f65b22 100644
--- a/recipes-bsp/u-boot/u-boot-toradex-fw-utils_git.bb
+++ b/recipes-bsp/u-boot/u-boot-toradex-fw-utils_git.bb
@@ -18,7 +18,8 @@ SRCREV = "06ee8db6422e02337242e43b8573359443db59ea"
SRCBRANCH = "2015.04-toradex"
SRC_URI = "git://git.toradex.com/u-boot-toradex.git;protocol=git;branch=${SRCBRANCH} \
file://fw_env.config \
- file://fw_unlock_mmc.sh \
+"
+SRC_URI_append_tegra3 = " file://fw_unlock_mmc.sh \
"
PV_apalis-t30 = "${PR}+gitr${SRCREV}"
@@ -65,11 +66,11 @@ pkg_postinst_${PN}_tegra3 () {
if [ "x$D" != "x" ]; then
exit 1
fi
- # Environment in eMMC, at the end of 2nd "boot sector"
- DISK="mmcblk0boot1"
+ # Environment in eMMC, before the configblock at the end of 1st "boot sector"
+ DISK="mmcblk0boot0"
DISK_SIZE=`cat /sys/block/$DISK/size`
CONFIG_ENV_SIZE=8192 # 0x2000
- CONFIG_ENV_OFFSET=`expr $DISK_SIZE \* 512 - $CONFIG_ENV_SIZE`
+ CONFIG_ENV_OFFSET=`expr $DISK_SIZE \* 512 - $CONFIG_ENV_SIZE - 512`
printf "/dev/%s\t0x%X\t0x%X\n" $DISK $CONFIG_ENV_OFFSET $CONFIG_ENV_SIZE >> "/etc/fw_env.config"
}