DESCRIPTION = "Linux Kernel for the EFIKA dev platform" SECTION = "kernel" LICENSE = "GPL" PR = "r0" COMPATIBLE_MACHINE = "efika" SRC_URI = "file://defconfig" S = "${WORKDIR}/linux-2.6" inherit kernel export ARCH="powerpc" KERNEL_IMAGETYPE = "zImage" do_fetch () { cd ${WORKDIR} git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git cd linux-2.6 git fetch git://git.secretlab.ca/git/linux-2.6.git 52xx-dev:sl-52xx git checkout sl-52xx # todo: fix to revision f20d894bd207f8bae9b7869fa039a83e7ab2c6d8 here. It works. mkdir patches cd patches wget http://www.246tnt.com/mpc52xx/2.6.22/0006-powerpc-Set-efika-s-device_type-to-soc.patch wget http://www.246tnt.com/mpc52xx/2.6.22/0007-serial-powerpc-Don-t-shutdown-TX-on-mpc5200-serial.patch wget http://www.246tnt.com/mpc52xx/2.6.22/0008-powerpc-mpc52xx-suspend-to-deep-sleep.patch } do_patch() { cd ${S} patch -F40 -p1 -i patches/0006-powerpc-Set-efika-s-device_type-to-soc.patch patch -F40 -p1 -i patches/0007-serial-powerpc-Don-t-shutdown-TX-on-mpc5200-serial.patch patch -F40 -p1 -i patches/0008-powerpc-mpc52xx-suspend-to-deep-sleep.patch } do_configure() { install -m 644 ${WORKDIR}/defconfig ${S}/.config make ARCH=${ARCH} oldconfig } do_stage_append () { #need ppc platforms includes + friends in order for external kernel modules to compile as headers as still split install -d ${STAGING_KERNEL_DIR}/arch/ cp -a arch/ppc ${STAGING_KERNEL_DIR}/arch/ cp -a arch/powerpc ${STAGING_KERNEL_DIR}/arch/ install -d ${STAGING_KERNEL_DIR}/include/asm cp -a include/asm-powerpc ${STAGING_KERNEL_DIR}/include/ cp -a include/asm-ppc ${STAGING_KERNEL_DIR}/include/ } do_deploy() { install -d ${DEPLOY_DIR_IMAGE} install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME} } do_deploy[dirs] = "${S}" addtask deploy before do_build after do_compile