[oe] Problems using local patch

Khem Raj raj.khem at gmail.com
Wed Aug 17 15:58:59 UTC 2011


On Wed, Aug 17, 2011 at 3:34 AM, Christian Borutta <Borutta at schoeps.de> wrote:
> Hello,
>
> I´m having some trouble using a patch I have created. I want to build for the freescale mx28evk with linux-imx_git.bb . Here is what I did:
>
> The patch is:
> "
> --- /stuff/tmp/work/mx28evk-angstrom-linux-gnueabi/linux-imx-2.6.35-r0/git/arch/arm/mach-mx28/mx28evk.c 2011-05-06 11:32:37.000000000 +0200
> +++ /stuff/mylayer/myfiles/mymx28evk.c  2011-08-17 09:33:36.000000000 +0200
> @@ -43,6 +43,7 @@
>
>  static struct i2c_board_info __initdata mxs_i2c_device[] = {
>        { I2C_BOARD_INFO("sgtl5000-i2c", 0xa), .flags = I2C_M_TEN }
> +       { I2C_BOARD_INFO("cs2000", 0x4f) }
>  };
>
>  static void __init i2c_device_init(void)
> "
> My new recipe is:
> "
> require linux.inc
>
> FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/linux-imx-git/${MACHINE}"
>
> PR = "r1"
>
> COMPATIBLE_MACHINE = "(chumby-falconwing|mx28evk)"
>
> SRC_URI_chumby-falconwing = "git://opensource.freescale.com/pub/scm/imx/linux-2.6-imx.git;protocol=http;branch=imx_2.6.28 \
>                             http://files.chumby.com/source/falconwing/build2913/oe-patch-freescale-kernel.patch;name=patch \
>                             file://defconfig"
> SRCREV_chumby-falconwing = "eee5a08306df7d9b1f23f463c9e9439e04293b57"
> PV_chumby-falconwing = "2.6.28"
> SRC_URI_chumby-falconwing[patch.md5sum] = "47fd149d78839e0d54239a3f5934eed1"
> SRC_URI_chumby-falconwing[patch.sha256sum] = "4bf5efedef5ab6be0ce29b21b7d06bfe0cec2c33c5e3dea831b6b66e08a371ad"
>
>
> SRC_URI_mx28evk = "git://opensource.freescale.com/pub/scm/imx/linux-2.6-imx.git;protocol=http;branch=imx_2.6.35_10.12.01 \
>                   http://foss.doredevelopment.dk/mirrors/imx/imx-bootlets-src-${PV_imx_bootlets}.tar.gz;name=imx-bootlets \
>                   file://defconfig \
>                   file://addingCS2000toBoardInfo.patch \
>                   file://${LOGO_SIZE}/logo_linux_clut224.ppm.bz2"
> SRCREV_mx28evk = "cca29a03fc83751ed319df4b3c38ce2f4216ee0a"
> SRC_URI[imx-bootlets.md5sum] = "cf0ab3822dca694b930a051501c1d0e4"
> SRC_URI[imx-bootlets.sha256sum] = "63f6068ae36884adef4259bbb1fe2591755718f22c46d0a59d854883dfab1ffc"
> PV_mx28evk = "2.6.35"
> PV_imx_bootlets = "10.12.01"
> DEPENDS_append_mx28 = " elftosb-native"
>
> do_compile_prepend_mx28() {
>        # We just build the bootlets here
>        oe_runmake -C ${WORKDIR}/imx-bootlets-src-${PV_imx_bootlets} -e MAKEFLAGS= linux_prep boot_prep power_prep CC="${CC}" CFLAGS="${CFLAGS}" AR="${AR}" BOARD=iMX28_EVK ARCH=mx28
> }
>
> do_deploy_append_mx28 () {
>        cd ${WORKDIR}/imx-bootlets-src-${PV_imx_bootlets}
>        sed -i 's,[^ *]zImage.*;,\tzImage="'${S}/arch/arm/boot/zImage'";,' linux.bd
>        sed -i 's,[^ *]zImage.*;,\tzImage="'${S}/arch/arm/boot/zImage'";,' linux_ivt.bd
>        elftosb -z -c linux.bd -o imx28_linux.sb
>        elftosb -z -f imx28 -c ./linux_ivt.bd -o imx28_ivt_linux.sb
>        install -d ${DEPLOY_DIR_IMAGE}
>        install -m 0644 ${WORKDIR}/imx-bootlets-src-${PV_imx_bootlets}/imx28*linux.sb ${DEPLOY_DIR_IMAGE}/
> }
>
> S = "${WORKDIR}/git"
> "
> And the Openembedded Output is:
> "
> NOTE: Resolving any missing task queue dependencies
> NOTE: Preparing runqueue
> NOTE: Executing RunQueue Tasks
> NOTE: Running task 411 of 765 (ID: 10, /stuff/mylayer/recipes/linux/linux-imx_git.bb, do_setscene)
> NOTE: package linux-imx-2.6.35-r1: task do_setscene: Started
> NOTE: package linux-imx-2.6.35-r1: task do_setscene: Succeeded
> NOTE: Running task 412 of 765 (ID: 8, /stuff/mylayer/recipes/linux/linux-imx_git.bb, do_fetch)
> NOTE: package linux-imx-2.6.35-r1: task do_fetch: Started
> NOTE: package linux-imx-2.6.35-r1: task do_fetch: Succeeded
> NOTE: Running task 413 of 765 (ID: 0, /stuff/mylayer/recipes/linux/linux-imx_git.bb, do_unpack)
> NOTE: package linux-imx-2.6.35-r1: task do_unpack: Started
> NOTE: package linux-imx-2.6.35-r1: task do_unpack: Succeeded
> NOTE: Running task 446 of 765 (ID: 1, /stuff/mylayer/recipes/linux/linux-imx_git.bb, do_patch)
> NOTE: package linux-imx-2.6.35-r1: task do_patch: Started
> ERROR: Execution of 'quilt --quiltrc=/stuff/tmp/sysroots/i686-linux/usr/bin/quiltrc push' failed with exit code 1:
> Applying patch addingCS2000toBoardInfo.patch
> patching file stuff/mylayer/myfiles/mymx28evk.c
> Hunk #1 FAILED at 43.
> 1 out of 1 hunk FAILED -- rejects in file stuff/mylayer/myfiles/mymx28evk.c
> Patch addingCS2000toBoardInfo.patch does not apply (enforce with -f)
>
> NOTE: package linux-imx-2.6.35-r1: task patch_do_patch: Failed
> ERROR: Function 'patch_do_patch' failed
> ERROR: Task 1 (/stuff/mylayer/recipes/linux/linux-imx_git.bb, do_patch) failed with exit code '1'
> ERROR: '/stuff/mylayer/recipes/linux/linux-imx_git.bb' failed
> "
> What did I do wrong?

by default patcher uses patch strip level 1 if you have different
patch strip level then either you can refresh the patch so that it has
strip level 1 or use striplevel=<n> to denote the strip level in
src_uri e.g.

SRC_URI += "file://foo.patch;striplevel=2" to specify 2 dir to be
stripped off from patch path
>
>
> Thanks,
> Christian Borutta
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>




More information about the Openembedded-devel mailing list