aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Madison <matt@madison.systems>2016-09-05 07:26:54 -0700
committerNicolas Dechesne <nicolas.dechesne@linaro.org>2016-09-06 14:29:08 +0100
commitd4b5a43bca6e2566bd048012b6b9b56cf5a08f4f (patch)
treefbe2d828bb4925b17b1534c958c48b274d9e77ce
parent589bbe8bffa19cca737d77754bf4ad6c9592d892 (diff)
downloadmeta-qcom-d4b5a43bca6e2566bd048012b6b9b56cf5a08f4f.zip
meta-qcom-d4b5a43bca6e2566bd048012b6b9b56cf5a08f4f.tar.gz
meta-qcom-d4b5a43bca6e2566bd048012b6b9b56cf5a08f4f.tar.bz2
linux-qcom-bootimg: consolidate deployment steps
into a single do_deploy_append for all targets, and move the machine-/SoC-specific bootimg creation settings into the relevant configuration files. Signed-off-by: Matt Madison <matt@madison.systems> [nicolas.dechesne@linaro.org: move dt image symlink creation] Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
-rw-r--r--conf/machine/dragonboard-410c.conf2
-rw-r--r--conf/machine/dragonboard-820c.conf2
-rw-r--r--conf/machine/ifc6410.conf2
-rw-r--r--conf/machine/include/qcom-apq8016.inc4
-rw-r--r--conf/machine/include/qcom-apq8064.inc3
-rw-r--r--conf/machine/include/qcom-apq8096.inc4
-rw-r--r--conf/machine/sd-600eval.conf2
-rw-r--r--recipes-kernel/linux/linux-qcom-bootimg.inc43
8 files changed, 30 insertions, 32 deletions
diff --git a/conf/machine/dragonboard-410c.conf b/conf/machine/dragonboard-410c.conf
index 04e258d..49af67d 100644
--- a/conf/machine/dragonboard-410c.conf
+++ b/conf/machine/dragonboard-410c.conf
@@ -19,4 +19,6 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \
${@'firmware-qcom-dragonboard410c' if d.getVar('ACCEPT_EULA_dragonboard-410c', True) == '1' else ''} \
"
+QCOM_BOOTIMG_ROOTFS ?= "mmcblk0p10"
+
CMDLINE = "console=ttyMSM0,115200n8 root=/dev/mmcblk0p10 rootwait"
diff --git a/conf/machine/dragonboard-820c.conf b/conf/machine/dragonboard-820c.conf
index 81f7672..30b9f2c 100644
--- a/conf/machine/dragonboard-820c.conf
+++ b/conf/machine/dragonboard-820c.conf
@@ -15,6 +15,8 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \
kernel-modules \
"
+QCOM_BOOTIMG_ROOTFS ?= "sde18"
+
CMDLINE = "console=ttyMSM0,115200n8 root=/dev/sde18 rootwait"
# UFS partitions setup with 4096 logical sector size
diff --git a/conf/machine/ifc6410.conf b/conf/machine/ifc6410.conf
index cbed9b8..4a698b6 100644
--- a/conf/machine/ifc6410.conf
+++ b/conf/machine/ifc6410.conf
@@ -17,4 +17,6 @@ KERNEL_DEVICETREE = "qcom-apq8064-ifc6410.dtb"
SERIAL_CONSOLE = "115200 ttyMSM0"
+QCOM_BOOTIMG_ROOTFS ?= "mmcblk0p12"
+
INHERIT += "qcom-firmware-mount"
diff --git a/conf/machine/include/qcom-apq8016.inc b/conf/machine/include/qcom-apq8016.inc
index 25458be..ff83124 100644
--- a/conf/machine/include/qcom-apq8016.inc
+++ b/conf/machine/include/qcom-apq8016.inc
@@ -28,3 +28,7 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-qcomlt"
# Fastboot expects an ext4 image, which needs to be 4096 aligned
IMAGE_FSTYPES_append = " ext4.gz"
IMAGE_ROOTFS_ALIGNMENT = "4096"
+
+QCOM_BOOTIMG_KERNEL_BASE ?= "0x80000000"
+QCOM_BOOTIMG_PAGE_SIZE ?= "2048"
+QCOM_BOOTIMG_BUNDLE_DT ?= "1"
diff --git a/conf/machine/include/qcom-apq8064.inc b/conf/machine/include/qcom-apq8064.inc
index 2e7a60d..def4903 100644
--- a/conf/machine/include/qcom-apq8064.inc
+++ b/conf/machine/include/qcom-apq8064.inc
@@ -26,3 +26,6 @@ PREFERRED_PROVIDER_virtual/kernel = "linux-linaro-qcomlt"
# Fastboot expects an ext4 image, which needs to be 4096 aligned
IMAGE_FSTYPES_append = " ext4.gz"
IMAGE_ROOTFS_ALIGNMENT = "4096"
+
+QCOM_BOOTIMG_KERNEL_BASE ?= "0x80200000"
+QCOM_BOOTIMG_PAGE_SIZE ?= "2048"
diff --git a/conf/machine/include/qcom-apq8096.inc b/conf/machine/include/qcom-apq8096.inc
index 1cc0287..ccc6d25 100644
--- a/conf/machine/include/qcom-apq8096.inc
+++ b/conf/machine/include/qcom-apq8096.inc
@@ -12,3 +12,7 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-qcomlt-tracking"
# Fastboot expects an ext4 image, which needs to be 4096 aligned
IMAGE_FSTYPES_append = " ext4.gz"
IMAGE_ROOTFS_ALIGNMENT = "4096"
+
+QCOM_BOOTIMG_KERNEL_BASE ?= "0x80000000"
+QCOM_BOOTIMG_PAGE_SIZE ?= "2048"
+QCOM_BOOTIMG_BUNDLE_DT ?= "1"
diff --git a/conf/machine/sd-600eval.conf b/conf/machine/sd-600eval.conf
index 18834b3..f731b41 100644
--- a/conf/machine/sd-600eval.conf
+++ b/conf/machine/sd-600eval.conf
@@ -18,3 +18,5 @@ KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE = "qcom-apq8064-arrow-sd-600eval.dtb"
SERIAL_CONSOLE = "115200 ttyMSM0"
+
+QCOM_BOOTIMG_ROOTFS ?= "mmcblk0p12"
diff --git a/recipes-kernel/linux/linux-qcom-bootimg.inc b/recipes-kernel/linux/linux-qcom-bootimg.inc
index 2c806bc..c3b7692 100644
--- a/recipes-kernel/linux/linux-qcom-bootimg.inc
+++ b/recipes-kernel/linux/linux-qcom-bootimg.inc
@@ -1,10 +1,6 @@
DEPENDS += "skales-native"
QCOM_BOOTIMG_ROOTFS ?= "undefined"
-QCOM_BOOTIMG_ROOTFS_dragonboard-410c = "mmcblk0p10"
-QCOM_BOOTIMG_ROOTFS_dragonboard-820c = "sde18"
-QCOM_BOOTIMG_ROOTFS_ifc6410 = "mmcblk0p12"
-QCOM_BOOTIMG_ROOTFS_sd-600eval = "mmcblk0p12"
# set output file names
DT_IMAGE_BASE_NAME = "dt-${KERNEL_IMAGE_BASE_NAME}"
@@ -12,9 +8,14 @@ DT_IMAGE_SYMLINK_NAME = "dt-${KERNEL_IMAGE_SYMLINK_NAME}"
BOOT_IMAGE_BASE_NAME = "boot-${KERNEL_IMAGE_BASE_NAME}"
BOOT_IMAGE_SYMLINK_NAME = "boot-${KERNEL_IMAGE_SYMLINK_NAME}"
-do_deploy_append_aarch64() {
+do_deploy_append() {
- dtbTool -o ${DEPLOYDIR}/${DT_IMAGE_BASE_NAME}.img -s 2048 ${B}/arch/${ARCH}/boot/dts/qcom/
+ mkbootimg_dtarg=""
+ if [ "${QCOM_BOOTIMG_BUNDLE_DT}" = "1" ]; then
+ dtbTool -o ${DEPLOYDIR}/${DT_IMAGE_BASE_NAME}.img -s ${QCOM_BOOTIMG_PAGE_SIZE} ${B}/arch/${ARCH}/boot/dts/qcom/
+ mkbootimg_dtarg="--dt ${DEPLOYDIR}/${DT_IMAGE_BASE_NAME}.img"
+ ln -sf ${DT_IMAGE_BASE_NAME}.img ${DEPLOYDIR}/${DT_IMAGE_SYMLINK_NAME}.img
+ fi
tmp="${SERIAL_CONSOLES}"
baudrate=`echo $tmp | sed 's/\;.*//'`
@@ -24,34 +25,12 @@ do_deploy_append_aarch64() {
# during boot
echo "This is not an initrd" > ${B}/initrd.img
- mkbootimg --kernel ${B}/arch/${ARCH}/boot/Image \
+ mkbootimg --kernel ${B}/arch/${ARCH}/boot/${KERNEL_IMAGETYPE} \
--ramdisk ${B}/initrd.img \
--output ${DEPLOYDIR}/${BOOT_IMAGE_BASE_NAME}.img \
- --dt ${DEPLOYDIR}/${DT_IMAGE_BASE_NAME}.img \
- --pagesize 2048 \
- --base 0x80000000 \
- --cmdline \
- "root=/dev/${QCOM_BOOTIMG_ROOTFS} rw rootwait console=${ttydev},${baudrate}n8"
-
- ln -sf ${DT_IMAGE_BASE_NAME}.img ${DEPLOYDIR}/${DT_IMAGE_SYMLINK_NAME}.img
- ln -sf ${BOOT_IMAGE_BASE_NAME}.img ${DEPLOYDIR}/${BOOT_IMAGE_SYMLINK_NAME}.img
-}
-
-do_deploy_append_apq8064 () {
-
- tmp="${SERIAL_CONSOLES}"
- baudrate=`echo $tmp | sed 's/\;.*//'`
- ttydev=`echo $tmp | sed -e 's/^[0-9]*\;//' -e 's/\s.*//' -e 's/\;.*//'`
-
- # mkbootimg requires an initrd file, make fake one that will be ignored
- # during boot
- echo "This is not an initrd" > ${B}/initrd.img
-
- mkbootimg --kernel ${B}/arch/${ARCH}/boot/zImage \
- --ramdisk ${B}/initrd.img \
- --output ${DEPLOYDIR}/${BOOT_IMAGE_BASE_NAME}.img \
- --pagesize 2048 \
- --base 0x80200000 \
+ $mkbootimg_dtarg \
+ --pagesize ${QCOM_BOOTIMG_PAGE_SIZE} \
+ --base ${QCOM_BOOTIMG_KERNEL_BASE} \
--cmdline \
"root=/dev/${QCOM_BOOTIMG_ROOTFS} rw rootwait console=${ttydev},${baudrate}n8"