[meta-lsi] [PATCH 64/86] linux-yocto: Add support for building ARM DTB and FIT images
Daniel Dragomir
daniel.dragomir at windriver.com
Wed Oct 29 08:36:12 PDT 2014
From: Paul Butler <paul.butler at windriver.com>
- Modify functions that build dtb, create fit images
and install them also for ARM targets:
for 3.4:
- axm55xx
- axm55xxemu and axm55xxemu7
- axm55xxsim16 and axm55xxsim
- axm-ve-tc1 and axm-ve-tc2
for 3.10:
- axm5504-emu and axm5504-sim
- axm5507-emu
- axm5516-amarillo and axm5516-sim
- axm55xxemu7
- Specify the kernel version in receipes by setting KV variable
Signed-off-by: Paul Butler <paul.butler at windriver.com>
---
recipes-kernel/linux/linux-yocto-rt_3.10.bbappend | 1 +
recipes-kernel/linux/linux-yocto-rt_3.4.bbappend | 1 +
recipes-kernel/linux/linux-yocto.inc | 71 +++++++++++++++++++----
recipes-kernel/linux/linux-yocto_3.10.bbappend | 1 +
recipes-kernel/linux/linux-yocto_3.4.bbappend | 1 +
5 files changed, 63 insertions(+), 12 deletions(-)
diff --git a/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend b/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend
index d25cec5..0ff9c57 100644
--- a/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend
+++ b/recipes-kernel/linux/linux-yocto-rt_3.10.bbappend
@@ -4,6 +4,7 @@ LSI_KERNEL_TAG = "8.8.1.18"
LINUX_KERNEL_TYPE = "preempt-rt"
LINUX_VERSION = "3.10.17-${LSI_KERNEL_TAG}"
LSI_SRC ?= "linux-yocto"
+KV = "3.10"
require ${LSI_SRC}-rt_3.10.inc
diff --git a/recipes-kernel/linux/linux-yocto-rt_3.4.bbappend b/recipes-kernel/linux/linux-yocto-rt_3.4.bbappend
index 7d67514..643cfb9 100644
--- a/recipes-kernel/linux/linux-yocto-rt_3.4.bbappend
+++ b/recipes-kernel/linux/linux-yocto-rt_3.4.bbappend
@@ -4,6 +4,7 @@ LSI_KERNEL_TAG = "7.8.1.36"
LINUX_KERNEL_TYPE = "preempt-rt"
LINUX_VERSION = "3.4.43-${LSI_KERNEL_TAG}"
LSI_SRC ?= "linux-yocto"
+KV = "3.4"
require ${LSI_SRC}-rt_3.4.inc
diff --git a/recipes-kernel/linux/linux-yocto.inc b/recipes-kernel/linux/linux-yocto.inc
index 6184fa4..45e7b0f 100644
--- a/recipes-kernel/linux/linux-yocto.inc
+++ b/recipes-kernel/linux/linux-yocto.inc
@@ -13,34 +13,59 @@ PARALLEL_MAKE = ""
mk_fit_images() {
name=$1
+ addr=$2
oe_runmake ${name}.dtb
echo "pwd = `pwd`"
cd ../fit
- oe_runmake 'ARCH=powerpc' \
+ oe_runmake "ARCH=${KARCH}" \
'DESCRIPTION=LSI Axxia Linux' \
- 'ADDRESS=0x00400000' \
+ "ADDRESS=${addr}" \
'VMLINUX=${B}/vmlinux' \
- "DTB=${B}/arch/powerpc/boot/${name}.dtb"
- mv linux.fit linux.fit-${name}
- mv fdt.fit fdt.fit-${name}
- mv multi.fit multi.fit-${name}
+ "DTB=${B}/arch/${KARCH}/boot/${name}.dtb"
+ mv linux.fit linux.fit-${name}
+ mv fdt.fit fdt.fit-${name}
+ mv multi.fit multi.fit-${name}
cd ${B}
}
do_compile_append() {
if [ "${KARCH}" = "powerpc" ]
then
- mk_fit_images "acp25xx"
- mk_fit_images "acp342x"
- mk_fit_images "acp344x"
- mk_fit_images "ACP344xV2"
- mk_fit_images "acp35xx"
+ addr=0x00400000
+ mk_fit_images "acp25xx" ${addr}
+ mk_fit_images "acp342x" ${addr}
+ mk_fit_images "acp344x" ${addr}
+ mk_fit_images "ACP344xV2" ${addr}
+ mk_fit_images "acp35xx" ${addr}
+ fi
+ if [ "${KARCH}" = "arm" ]
+ then
+ addr=0x00408000
+ if [ "${KV}" = "3.4" ]
+ then
+ mk_fit_images "axm55xx" ${addr}
+ mk_fit_images "axm55xxemu7" ${addr}
+ mk_fit_images "axm55xxemu" ${addr}
+ mk_fit_images "axm55xxsim16" ${addr}
+ mk_fit_images "axm55xxsim" ${addr}
+ mk_fit_images "axm-ve-tc1" ${addr}
+ mk_fit_images "axm-ve-tc2" ${addr}
+ fi
+ if [ "${KV}" = "3.10" ]
+ then
+ mk_fit_images "axm5504-emu" ${addr}
+ mk_fit_images "axm5504-sim" ${addr}
+ mk_fit_images "axm5507-emu" ${addr}
+ mk_fit_images "axm5516-amarillo" ${addr}
+ mk_fit_images "axm5516-sim" ${addr}
+ mk_fit_images "axm55xxemu7" ${addr}
+ fi
fi
}
install_fit_images() {
name=$1
- install ${B}/arch/powerpc/boot/${name}.dtb ${DEPLOYDIR}/${name}.dtb
+ install ${B}/arch/${KARCH}/boot/${name}.dtb ${DEPLOYDIR}/${name}.dtb
install ${B}/../fit/linux.fit-${name} ${DEPLOYDIR}/linux.fit-${name}
install ${B}/../fit/fdt.fit-${name} ${DEPLOYDIR}/fdt.fit-${name}
install ${B}/../fit/multi.fit-${name} ${DEPLOYDIR}/multi.fit-${name}
@@ -56,4 +81,26 @@ do_deploy_append() {
install_fit_images "ACP344xV2"
install_fit_images "acp35xx"
fi
+ if [ "${KARCH}" = "arm" ]
+ then
+ if [ "${KV}" = "3.4" ]
+ then
+ install_fit_images "axm55xx"
+ install_fit_images "axm55xxemu7"
+ install_fit_images "axm55xxemu"
+ install_fit_images "axm55xxsim16"
+ install_fit_images "axm55xxsim"
+ install_fit_images "axm-ve-tc1"
+ install_fit_images "axm-ve-tc2"
+ fi
+ if [ "${KV}" = "3.10" ]
+ then
+ install_fit_images "axm5504-emu"
+ install_fit_images "axm5504-sim"
+ install_fit_images "axm5507-emu"
+ install_fit_images "axm5516-amarillo"
+ install_fit_images "axm5516-sim"
+ install_fit_images "axm55xxemu7"
+ fi
+ fi
}
diff --git a/recipes-kernel/linux/linux-yocto_3.10.bbappend b/recipes-kernel/linux/linux-yocto_3.10.bbappend
index e0aea98..071d097 100644
--- a/recipes-kernel/linux/linux-yocto_3.10.bbappend
+++ b/recipes-kernel/linux/linux-yocto_3.10.bbappend
@@ -4,6 +4,7 @@ LSI_KERNEL_TAG = "8.8.1.18"
LINUX_KERNEL_TYPE = "standard"
LINUX_VERSION = "3.10.17-${LSI_KERNEL_TAG}"
LSI_SRC ?= "linux-yocto"
+KV = "3.10"
require ${LSI_SRC}_3.10.inc
diff --git a/recipes-kernel/linux/linux-yocto_3.4.bbappend b/recipes-kernel/linux/linux-yocto_3.4.bbappend
index bb5685e..acd9efa 100644
--- a/recipes-kernel/linux/linux-yocto_3.4.bbappend
+++ b/recipes-kernel/linux/linux-yocto_3.4.bbappend
@@ -5,6 +5,7 @@ LINUX_KERNEL_TYPE = "standard"
LSI_KERNEL_TAG = "7.8.1.36"
LINUX_VERSION = "3.4.43-${LSI_KERNEL_TAG}"
LSI_SRC ?= "linux-yocto"
+KV = "3.4"
require ${LSI_SRC}_3.4.inc
--
1.8.1.4
More information about the meta-lsi
mailing list