diff options
Diffstat (limited to 'packages/linux')
-rw-r--r-- | packages/linux/linux-bd-neon-2.6-2.6.22/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/linux/linux-bd-neon-2.6-2.6.22/neon-jffs2-config.patch | 33 | ||||
-rw-r--r-- | packages/linux/linux-bd-neon-2.6_2.6.22.bb | 48 | ||||
-rw-r--r-- | packages/linux/linux.inc | 5 | ||||
-rw-r--r-- | packages/linux/linux_2.6.22.bb | 9 |
5 files changed, 95 insertions, 0 deletions
diff --git a/packages/linux/linux-bd-neon-2.6-2.6.22/.mtn2git_empty b/packages/linux/linux-bd-neon-2.6-2.6.22/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux/linux-bd-neon-2.6-2.6.22/.mtn2git_empty diff --git a/packages/linux/linux-bd-neon-2.6-2.6.22/neon-jffs2-config.patch b/packages/linux/linux-bd-neon-2.6-2.6.22/neon-jffs2-config.patch new file mode 100644 index 0000000000..958eda0200 --- /dev/null +++ b/packages/linux/linux-bd-neon-2.6-2.6.22/neon-jffs2-config.patch @@ -0,0 +1,33 @@ +--- linux-2.6.22/arch/arm/configs/neon_defconfig-o 2007-08-23 19:49:52.000000000 +0200 ++++ linux-2.6.22/arch/arm/configs/neon_defconfig 2007-08-23 19:50:16.000000000 +0200 +@@ -171,7 +171,8 @@ + # CONFIG_PREEMPT is not set + # CONFIG_NO_IDLE_HZ is not set + CONFIG_HZ=100 +-# CONFIG_AEABI is not set ++CONFIG_AEABI=y ++CONFIG_OABI_COMPAT=y + # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set + CONFIG_SELECT_MEMORY_MODEL=y + CONFIG_FLATMEM_MANUAL=y +@@ -1131,7 +1132,7 @@ + CONFIG_PROC_FS=y + CONFIG_PROC_SYSCTL=y + CONFIG_SYSFS=y +-# CONFIG_TMPFS is not set ++CONFIG_TMPFS=y + # CONFIG_HUGETLB_PAGE is not set + CONFIG_RAMFS=y + # CONFIG_CONFIGFS_FS is not set +@@ -1147,7 +1148,10 @@ + # CONFIG_BFS_FS is not set + # CONFIG_EFS_FS is not set + # CONFIG_JFFS_FS is not set +-# CONFIG_JFFS2_FS is not set ++CONFIG_JFFS2_FS=y ++CONFIG_JFFS2_FS_DEBUG=0 ++CONFIG_JFFS2_FS_WRITEBUFFER=y ++CONFIG_JFFS2_SUMMARY=y + CONFIG_CRAMFS=y + # CONFIG_VXFS_FS is not set + # CONFIG_HPFS_FS is not set diff --git a/packages/linux/linux-bd-neon-2.6_2.6.22.bb b/packages/linux/linux-bd-neon-2.6_2.6.22.bb new file mode 100644 index 0000000000..6d2472935f --- /dev/null +++ b/packages/linux/linux-bd-neon-2.6_2.6.22.bb @@ -0,0 +1,48 @@ +DESCRIPTION = "2.6 Linux Kernel for Boundary Devices NEON Board" +SECTION = "kernel" +HOMEPAGE = "N/A" +LICENSE = "GPL" +DEPENDS += "uboot-utils" + +PR = "r1" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.22.tar.bz2 \ + http://www.boundarydevices.com/boundary-2.6.22-2007-07-22.patch.bz2;patch=1 \ + file://neon-jffs2-config.patch;patch=1" + +S = "${WORKDIR}/linux-2.6.22" + +inherit kernel + +KERNEL_IMAGETYPE = "zImage" +FILES_kernel-image = "" +ALLOW_EMPTY = "1" + +do_configure() { + cp arch/arm/configs/neon_defconfig .config || die "No default configuration for ${MACHINE} available." + +# if [ "${TARGET_OS}" == "linux-gnueabi" -o "${TARGET_OS}" == "linux-uclibcgnueabi" ]; then +# echo "CONFIG_AEABI=y" >> ${S}/.config +# echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config +# else +# echo "# CONFIG_AEABI is not set" >> ${S}/.config +# echo "# CONFIG_OABI_COMPAT is not set" >> ${S}/.config +# fi + + yes '' | oe_runmake oldconfig +} + +do_deploy() { + install -d ${DEPLOY_DIR_IMAGE} + install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${PV}-${PR}-${MACHINE}.bin + tar -cvzf ${DEPLOY_DIR_IMAGE}/modules-${KERNEL_RELEASE}-${PR}-${MACHINE}.tgz -C ${D} lib + ${OBJCOPY} -O binary -R .note -R .comment -S vmlinux linux.bin + rm -f linux.bin.gz + gzip -9 linux.bin + ${STAGING_BINDIR_NATIVE}/mkimage -A arm -O linux -T kernel -C gzip -a a0008000 -e a0008000 -n "Boundary Devices NEON" -d linux.bin.gz ${DEPLOY_DIR_IMAGE}/uImage-${PV}-${PR}-${MACHINE}.bin + rm -f linux.bin.gz +} + +do_deploy[dirs] = "${S}" + +addtask deploy before do_package after do_install diff --git a/packages/linux/linux.inc b/packages/linux/linux.inc index ecb45661ed..2c267fb7eb 100644 --- a/packages/linux/linux.inc +++ b/packages/linux/linux.inc @@ -111,6 +111,7 @@ do_install_prepend() { UBOOT_ENTRYPOINT ?= "20008000" KERNEL_IMAGE_BASE_NAME = "${KERNEL_IMAGETYPE}-${PV}-${PR}-${MACHINE}-${DATETIME}" +KERNEL_IMAGE_SYMLINK_NAME = "${KERNEL_IMAGETYPE}-${MACHINE}" do_deploy() { install -d ${DEPLOY_DIR_IMAGE} @@ -130,6 +131,10 @@ do_deploy() { rm -f linux.bin.gz fi fi + + cd ${DEPLOY_DIR_IMAGE} + rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.bin + ln -sf ${KERNEL_IMAGE_BASE_NAME}.bin ${KERNEL_IMAGE_SYMLINK_NAME}.bin } do_deploy[dirs] = "${S}" diff --git a/packages/linux/linux_2.6.22.bb b/packages/linux/linux_2.6.22.bb index b33274d8bf..c493d05b8b 100644 --- a/packages/linux/linux_2.6.22.bb +++ b/packages/linux/linux_2.6.22.bb @@ -51,6 +51,15 @@ python do_compulab_image() { fo.write(size_s) fo.write(image_data) fo.close() + + os.chdir(deploy_dir) + link_file = bb.data.expand('${KERNEL_IMAGE_SYMLINK_NAME}', d) + '.cmx270' + img_file = bb.data.expand('${KERNEL_IMAGE_BASE_NAME}', d) + '.cmx270' + try: + os.unlink(link_file) + except: + pass + os.symlink(img_file, link_file) } addtask compulab_image after do_deploy before do_package |