1 ##############################################################
2 # kernel image parameters. It resides on a seperate flash partition
4 KERNEL_IMAGETYPE = "uImage"
5 UBOOT_ENTRYPOINT = "30008000"
7 COMPATIBLE_HOST = "arm.*-linux"
8 COMPATIBLE_MACHINE = "om-gta01|om-gta02|om-3d7k"
10 KERNEL_IMAGE_SYMLINK_NAME_om-gta01 = "uImage-GTA01.bin"
11 KERNEL_IMAGE_SYMLINK_NAME_om-gta02 = "uImage-GTA02.bin"
12 KERNEL_IMAGE_SYMLINK_NAME_om-3d7k = "uImage-OM3D7K.bin"
14 CMDLINE = "unused -- bootloader passes ATAG list"
16 # Do keep OABI compat for om-gta01 to keep the gllin binary working
17 ARM_KEEP_OABI_om-gta01 = "1"
19 # Make sure not to use thumb[-interworking]
20 ARM_INSTRUCTION_SET = "arm"
21 THUMB_INTERWORKING = "no"
23 ###############################################################
24 # module configs specific to this kernel
28 module_autoload_ohci-hcd = "ohci-hcd"
29 module_autoload_hci_usb = "hci_usb"
30 module_autoload_g_ether = "g_ether"
31 module_autoload_ppp_generic = "ppp_generic"
32 # snd modules module_autoload_snd-soc-neo1973-*-wm8753 are in machine.conf
34 module_autoload_s3cmci = "s3cmci"
36 ################################################################
37 # extra stuff we need for openmoko that is not in linux.inc
40 # fix deconfig if we're on GTA01
41 do_configure_prepend() {
42 install -m 0644 ${WORKDIR}/defconfig-oe ${WORKDIR}/defconfig
43 if [ ${MACHINE} == "om-gta01" ]; then
44 echo -n "fixing up configuration for Openmoko GTA01..."
45 sed -i -e s,CONFIG_S3C_LOWLEVEL_UART_PORT=2,CONFIG_S3C_LOWLEVEL_UART_PORT=0, ${WORKDIR}/defconfig
46 sed -i -e s,CONFIG_DEBUG_S3C_UART=2,CONFIG_DEBUG_S3C_UART=0, ${WORKDIR}/defconfig
49 if [ ${MACHINE} == "om-gta02" ]; then
50 echo -n "fixing up configuration for Openmoko GTA02..."
55 # symlink the latest uImage (should go to linux.inc IMO)
57 rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.bin
58 ln -sf ${DEPLOY_DIR_IMAGE}/uImage-${PV}-${PR}-${MACHINE_ARCH}.bin ${DEPLOY_DIR_IMAGE}/uImage-${MACHINE_ARCH}-latest.bin
61 # opkg flash update service
62 RDEPENDS_kernel-image += "mtd-utils"
64 pkg_postinst_kernel-image () {
66 # Get the lastest root file system value of boot args
67 boot_arg=`cat /proc/cmdline |tr " " "\n"|grep "root=" |tail -n 1`
68 has_mtdblock=`echo $boot_arg |grep mtdblock`
70 if test "x$D" != "x"; then
72 elif test "empty$has_mtdblock" != "empty"; then
73 if [ -f ${sysconfdir}/default/flashkernel ] ; then
74 echo "Upgrading Kernel in Flash"
75 echo "DO NOT stop this process"
77 MTD_KERNEL_PARTITION=`cat /proc/mtd | grep kernel | cut -d':' -f1`
78 MTD_KERNEL_PARTITION=/dev/$MTD_KERNEL_PARTITION
80 if [ "x$MTD_KERNEL_PARTITION" = "x" ] ; then
84 if [ ! -f /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ] ; then
88 ${bindir}/flash_eraseall $MTD_KERNEL_PARTITION
89 ${bindir}/nandwrite -p $MTD_KERNEL_PARTITION /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION}
91 touch ${sysconfdir}/default/flashkernel
94 echo "You are not booting from NAND, don't flash kernel into mtdblock."