<br><br>On Sunday, October 19, 2014, Marek Vasut <<a href="mailto:marex@denx.de">marex@denx.de</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Pull the uImage image format generation from kernel.bbclass into<br>
a separate kernel-uimage.bbclass. The recipes which now need to<br>
generate an uImage will have to inherit kernel-uimage instead of<br>
kernel class.<br>
<br></blockquote><div><br></div><div>Does it trigger a doc change as well ?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Signed-off-by: Marek Vasut <<a href="javascript:;" onclick="_e(event, 'cvml', 'marex@denx.de')">marex@denx.de</a>><br>
Cc: Richard Purdie <<a href="javascript:;" onclick="_e(event, 'cvml', 'richard.purdie@linuxfoundation.org')">richard.purdie@linuxfoundation.org</a>><br>
Cc: Koen Kooi <<a href="javascript:;" onclick="_e(event, 'cvml', 'koen@dominion.thruhere.net')">koen@dominion.thruhere.net</a>><br>
Cc: Paul Eggleton <<a href="javascript:;" onclick="_e(event, 'cvml', 'paul.eggleton@linux.intel.com')">paul.eggleton@linux.intel.com</a>><br>
---<br>
meta/classes/kernel-uimage.bbclass | 44 +++++++++++++++++++++++++++++++++++++<br>
meta/classes/kernel.bbclass | 45 --------------------------------------<br>
2 files changed, 44 insertions(+), 45 deletions(-)<br>
create mode 100644 meta/classes/kernel-uimage.bbclass<br>
<br>
diff --git a/meta/classes/kernel-uimage.bbclass b/meta/classes/kernel-uimage.bbclass<br>
new file mode 100644<br>
index 0000000..f51321b<br>
--- /dev/null<br>
+++ b/meta/classes/kernel-uimage.bbclass<br>
@@ -0,0 +1,44 @@<br>
+inherit kernel<br>
+<br>
+DEPENDS += " u-boot-mkimage-native "<br>
+<br>
+uboot_prep_kimage() {<br>
+ if test -e arch/${ARCH}/boot/compressed/vmlinux ; then<br>
+ vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux"<br>
+ linux_suffix=""<br>
+ linux_comp="none"<br>
+ else<br>
+ vmlinux_path="vmlinux"<br>
+ linux_suffix=".gz"<br>
+ linux_comp="gzip"<br>
+ fi<br>
+<br>
+ ${OBJCOPY} -O binary -R .note -R .comment -S "${vmlinux_path}" linux.bin<br>
+<br>
+ if [ "${linux_comp}" != "none" ] ; then<br>
+ rm -f linux.bin<br>
+ gzip -9 linux.bin<br>
+ mv -f "linux.bin${linux_suffix}" linux.bin<br>
+ fi<br>
+<br>
+ echo "${linux_comp}"<br>
+}<br>
+<br>
+do_uboot_mkimage() {<br>
+ if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then<br>
+ if test "x${KEEPUIMAGE}" != "xyes" ; then<br>
+ uboot_prep_kimage<br>
+<br>
+ ENTRYPOINT=${UBOOT_ENTRYPOINT}<br>
+ if test -n "${UBOOT_ENTRYSYMBOL}"; then<br>
+ ENTRYPOINT=`${HOST_PREFIX}nm ${S}/vmlinux | \<br>
+ awk '$3=="${UBOOT_ENTRYSYMBOL}" {print $1}'`<br>
+ fi<br>
+<br>
+ uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin arch/${ARCH}/boot/uImage<br>
+ rm -f linux.bin<br>
+ fi<br>
+ fi<br>
+}<br>
+<br>
+addtask uboot_mkimage before do_install after do_compile<br>
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass<br>
index ec4d930..f3ba19c 100644<br>
--- a/meta/classes/kernel.bbclass<br>
+++ b/meta/classes/kernel.bbclass<br>
@@ -15,10 +15,6 @@ python __anonymous () {<br>
import re<br>
<br>
kerneltype = d.getVar('KERNEL_IMAGETYPE', True)<br>
- if kerneltype == 'uImage':<br>
- depends = d.getVar("DEPENDS", True)<br>
- depends = "%s u-boot-mkimage-native" % depends<br>
- d.setVar("DEPENDS", depends)<br>
<br>
d.setVar("KERNEL_IMAGETYPE_FOR_MAKE", re.sub(r'\.[^\.]$', '', kerneltype))<br>
<br>
@@ -448,47 +444,6 @@ MODULE_TARBALL_BASE_NAME ?= "${MODULE_IMAGE_BASE_NAME}.tgz"<br>
MODULE_TARBALL_SYMLINK_NAME ?= "modules-${MACHINE}.tgz"<br>
MODULE_TARBALL_DEPLOY ?= "1"<br>
<br>
-uboot_prep_kimage() {<br>
- if test -e arch/${ARCH}/boot/compressed/vmlinux ; then<br>
- vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux"<br>
- linux_suffix=""<br>
- linux_comp="none"<br>
- else<br>
- vmlinux_path="vmlinux"<br>
- linux_suffix=".gz"<br>
- linux_comp="gzip"<br>
- fi<br>
-<br>
- ${OBJCOPY} -O binary -R .note -R .comment -S "${vmlinux_path}" linux.bin<br>
-<br>
- if [ "${linux_comp}" != "none" ] ; then<br>
- rm -f linux.bin<br>
- gzip -9 linux.bin<br>
- mv -f "linux.bin${linux_suffix}" linux.bin<br>
- fi<br>
-<br>
- echo "${linux_comp}"<br>
-}<br>
-<br>
-do_uboot_mkimage() {<br>
- if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then<br>
- if test "x${KEEPUIMAGE}" != "xyes" ; then<br>
- uboot_prep_kimage<br>
-<br>
- ENTRYPOINT=${UBOOT_ENTRYPOINT}<br>
- if test -n "${UBOOT_ENTRYSYMBOL}"; then<br>
- ENTRYPOINT=`${HOST_PREFIX}nm ${S}/vmlinux | \<br>
- awk '$3=="${UBOOT_ENTRYSYMBOL}" {print $1}'`<br>
- fi<br>
-<br>
- uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin arch/${ARCH}/boot/uImage<br>
- rm -f linux.bin<br>
- fi<br>
- fi<br>
-}<br>
-<br>
-addtask uboot_mkimage before do_install after do_compile<br>
-<br>
kernel_do_deploy() {<br>
install -m 0644 ${KERNEL_OUTPUT} ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin<br>
if [ ${MODULE_TARBALL_DEPLOY} = "1" ] && (grep -q -i -e '^CONFIG_MODULES=y$' .config); then<br>
--<br>
2.1.1<br>
<br>
--<br>
_______________________________________________<br>
Openembedded-core mailing list<br>
<a href="javascript:;" onclick="_e(event, 'cvml', 'Openembedded-core@lists.openembedded.org')">Openembedded-core@lists.openembedded.org</a><br>
<a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" target="_blank">http://lists.openembedded.org/mailman/listinfo/openembedded-core</a><br>
</blockquote>