522484184ba9a163225b8f4c478da5d1c9becfce
[vuplus_openembedded] / packages / linux / linux-openmoko.inc
1 ##############################################################
2 # kernel image parameters. It resides on a seperate flash partition
3 #
4 KERNEL_IMAGETYPE = "uImage"
5 UBOOT_ENTRYPOINT = "30008000"
6
7 COMPATIBLE_HOST = "arm.*-linux"
8 COMPATIBLE_MACHINE = "om-gta01|om-gta02|om-gta03"
9
10 KERNEL_IMAGETYPE_om-gta03 = "zImage"
11
12 CMDLINE = "unused -- bootloader passes ATAG list"
13
14 ###############################################################
15 # module configs specific to this kernel
16 #
17
18 # usb
19 module_autoload_ohci-hcd = "ohci-hcd"
20 module_autoload_hci_usb = "hci_usb"
21 module_autoload_g_ether = "g_ether"
22 # audio (GTA01)
23 module_autoload_snd-soc-neo1973-wm8753 = "snd-soc-neo1973-wm8753"
24 # audio (GTA02)
25 module_autoload_snd-soc-neo1973-gta02-wm8753 = "snd-soc-neo1973-gta02-wm8753"
26 # audio (GTA03)
27 module_autoload_snd-soc-neo1973-gta02-wm8753 = ""
28 # sd/mmc
29 module_autoload_s3cmci = "s3cmci"
30
31 ################################################################
32 # extra stuff we need for openmoko that is not in linux.inc
33 #
34
35 # fix deconfig if we're on GTA01
36 do_configure_prepend() {
37         install -m 0644 ${WORKDIR}/defconfig-oe ${WORKDIR}/defconfig
38         if [ ${MACHINE} == "om-gta01" ]; then
39                 echo -n "fixing up configuration for Openmoko GTA01..."
40                 sed -i -e s,CONFIG_S3C_LOWLEVEL_UART_PORT=2,CONFIG_S3C_LOWLEVEL_UART_PORT=0, ${WORKDIR}/defconfig
41                 sed -i -e s,CONFIG_DEBUG_S3C_UART=2,CONFIG_DEBUG_S3C_UART=0, ${WORKDIR}/defconfig
42                 echo "done"
43         fi
44         if [ ${MACHINE} == "om-gta02" ]; then
45                 echo -n "fixing up configuration for Openmoko GTA02..."
46                 echo "done"
47         fi                                                                       
48 }
49
50 # symlink the latest uImage (should go to linux.inc IMO)
51 do_deploy_append() {
52         rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.bin
53         ln -sf ${DEPLOY_DIR_IMAGE}/uImage-${PV}-${PR}-${MACHINE_ARCH}.bin ${DEPLOY_DIR_IMAGE}/uImage-${MACHINE_ARCH}-latest.bin
54 }
55
56 # opkg flash update service
57 RDEPENDS_kernel-image += "mtd-utils"
58
59 pkg_postinst_kernel-image () {
60
61 # Get the lastest root file system value of boot args
62 boot_arg=`cat /proc/cmdline |tr " " "\n"|grep "root=" |tail -n 1`
63 has_mtdblock=`echo $boot_arg |grep mtdblock`
64
65 if test "x$D" != "x"; then
66         exit 1
67 elif test "empty$has_mtdblock" != "empty"; then
68         if [ -f ${sysconfdir}/default/flashkernel ] ; then
69                 echo "Upgrading Kernel in Flash"
70                 echo "DO NOT stop this process"
71
72                 MTD_KERNEL_PARTITION=`cat /proc/mtd | grep kernel | cut -d':' -f1`
73                 MTD_KERNEL_PARTITION=/dev/$MTD_KERNEL_PARTITION
74
75                 if [ "x$MTD_KERNEL_PARTITION" = "x" ] ; then
76                         exit 1
77                 fi
78
79                 if [ ! -f /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ] ; then
80                         exit 1
81                 fi
82
83                 ${bindir}/flash_eraseall $MTD_KERNEL_PARTITION
84                 ${bindir}/nandwrite -p $MTD_KERNEL_PARTITION /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION}
85         else
86                 touch ${sysconfdir}/default/flashkernel
87         fi
88 else
89         echo "You are not booting from NAND, don't flash kernel into mtdblock."
90 fi
91 }
92