summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-rp.inc
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:14:24 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:29:45 +0100
commit29d6678fd546377459ef75cf54abeef5b969b5cf (patch)
tree8edd65790e37a00d01c3f203f773fe4b5012db18 /meta/recipes-kernel/linux/linux-rp.inc
parentda49de6885ee1bc424e70bc02f21f6ab920efb55 (diff)
downloadpoky-29d6678fd546377459ef75cf54abeef5b969b5cf.tar.gz
Major layout change to the packages directory
Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/recipes-kernel/linux/linux-rp.inc')
-rw-r--r--meta/recipes-kernel/linux/linux-rp.inc167
1 files changed, 167 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-rp.inc b/meta/recipes-kernel/linux/linux-rp.inc
new file mode 100644
index 0000000000..8b86bdee1f
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-rp.inc
@@ -0,0 +1,167 @@
1DESCRIPTION = "2.6 Linux Development Kernel for Zaurus devices and iPAQ hx2750."
2SECTION = "kernel"
3LICENSE = "GPL"
4
5inherit kernel
6
7DEPENDS_append_collie = " bc-native"
8RPROVIDES_kernel-base += "hostap-modules"
9
10DOSRC = "http://www.do13.de/openzaurus/patches"
11RPSRC = "http://www.rpsys.net/openzaurus/patches/archive"
12JLSRC = "http://www.cs.wisc.edu/~lenz/zaurus/files"
13BASRC = "http://www.orca.cx/zaurus/patches"
14CHSRC = "http://oz.drigon.com/patches"
15TKSRC = "http://www.informatik.hu-berlin.de/~tkunze/zaurus/patches"
16
17COMPATIBLE_HOST = "(arm|i.86|mips).*-linux"
18COMPATIBLE_MACHINE = '(collie|poodle|c7x0|akita|spitz|tosa|hx2000|qemuarm|qemux86|qemumips|bootcdx86|htcuniversal|zylonite)'
19
20KERNEL_CUSTOM_NAME ?= ""
21KERNEL_DEPLOY_NAME ?= "${KERNEL_IMAGETYPE}-${PV}-${KERNEL_CUSTOM_NAME}${MACHINE}-${DATETIME}.bin"
22KERNEL_SYMLINK_NAME ?= "${KERNEL_IMAGETYPE}-${KERNEL_CUSTOM_NAME}${MACHINE}.bin"
23KERNEL_DEFCONFIG ?= "defconfig-${MACHINE}"
24
25CMDLINE_CON = "console=ttyS0,115200n8 console=tty1 noinitrd"
26CMDLINE_CON_collie = "console=ttySA0,115200n8 console=tty1 noinitrd"
27CMDLINE_CON_qemuarm = "console=ttyAMA0,115200n8 console=tty1 noinitrd"
28CMDLINE_CON_zylonite = "console=ttyS0,38400"
29CMDLINE_ROOT ?= "root=/dev/mtdblock2 rootfstype=jffs2"
30CMDLINE_ROOT_spitz ?= "root=/dev/hda1 rootfstype=ext3 rootdelay=1 rw"
31#CMDLINE_ROOT_spitz = "root=/dev/mmcblk0p2 rootfstype=ext2 rootdelay=3 rw"
32CMDLINE_OTHER = "dyntick=enable"
33CMDLINE_DEBUG = '${@base_contains("IMAGE_FEATURES", "debug-tweaks", "debug", "quiet", d)}'
34
35##############################################################
36# Configure memory/ramdisk split for collie
37#
38export mem = '${@bb.data.getVar("COLLIE_MEMORY_SIZE",d,1) or "64"}'
39export rd = '${@bb.data.getVar("COLLIE_RAMDISK_SIZE",d,1) or "0"}'
40
41CMDLINE_MEM_collie = "mem=${mem}M"
42CMDLINE_MEM_zylonite = "mem=64M"
43CMDLINE_ROTATE_spitz = "fbcon=rotate:1"
44CMDLINE_ROTATE_akita = "fbcon=rotate:1"
45CMDLINE_ROTATE_collie = "fbcon=rotate:1"
46CMDLINE_ROTATE_poodle = "fbcon=rotate:1"
47CMDLINE = "${CMDLINE_CON} ${CMDLINE_ROOT} ${CMDLINE_MEM} ${CMDLINE_ROTATE} ${CMDLINE_OTHER} ${CMDLINE_DEBUG}"
48
49###############################################################
50# module configs specific to this kernel
51#
52module_autoload_pxaficp_ir = "pxaficp_ir"
53module_autoload_snd-pcm-oss = "snd-pcm-oss"
54module_autoload_pcmcia_core = "pcmcia_core"
55module_autoload_pxa2xx_cs = "pxa2xx_cs"
56module_autoload_ohci-hcd_tosa = "ohci-hcd"
57module_autoload_snd-soc-corgi_c7x0 = "snd-soc-corgi"
58module_autoload_snd-soc-spitz_akita = "snd-soc-spitz"
59module_autoload_snd-soc-spitz_spitz = "snd-soc-spitz"
60module_autoload_snd-soc-poodle_poodle = "snd-soc-poodle"
61module_autoload_locomo-spi_collie = "locomo-spi"
62module_autoload_mmc_block_collie = "mmc_block"
63module_autoload_mmc_spi = "mmc-spi"
64module_autoload_locomokbd_collie = "locomokbd"
65module_autoload_sa1100-cs_collie = "sa1100_cs"
66module_autoload_collie-ts_collie = "collie-ts"
67module_autoload_leds-locomo_collie = "leds-locomo"
68module_autoload_power_collie = "power"
69
70do_configure() {
71 rm -f ${S}/.config
72
73 if [ "${MACHINE}" = "tosa" ]; then
74 gcc_version=`${KERNEL_CC} -dumpversion`
75 if [ "${gcc_version}" = "4.0.1" ] || [ "${gcc_version}" = "4.0.2" ]; then
76 die "tosa kernel wont work with gcc 4.0.x"
77 fi
78 fi
79
80 if [ ! -e ${WORKDIR}/${KERNEL_DEFCONFIG} ]; then
81 die "No default configuration for ${MACHINE} available."
82 fi
83
84 if [ "${MACHINE}" = "collie" ]; then
85 mempos=`echo "obase=16; $mem * 1024 * 1024" | bc`
86 rdsize=`echo "$rd * 1024" | bc`
87 total=`expr $mem + $rd`
88 addr=`echo "obase=16; ibase=16; C0000000 + $mempos" | bc`
89 if [ "$rd" = "0" ]
90 then
91 echo "No RAMDISK"
92 echo "# CONFIG_MTD_MTDRAM_SA1100 is not set" >> ${S}/.config
93 else
94 echo "RAMDIR = $rdsize on $addr"
95 echo "CONFIG_MTD_MTDRAM_SA1100=y" >> ${S}/.config
96 echo "CONFIG_MTDRAM_TOTAL_SIZE=$rdsize" >> ${S}/.config
97 echo "CONFIG_MTDRAM_ERASE_SIZE=1" >> ${S}/.config
98 echo "CONFIG_MTDRAM_ABS_POS=$addr" >> ${S}/.config
99 fi
100 fi
101
102 echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >> ${S}/.config
103
104 if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
105 echo "CONFIG_AEABI=y" >> ${S}/.config
106 if [ "${MACHINE}" = "qemuarm" -o "${MACHINE}" = "qemuarmv6" -o "${MACHINE}" = "qemuarmv7" -o ]; then
107 echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
108 else
109 echo "# CONFIG_OABI_COMPAT is not set" >> ${S}/.config
110 fi
111 else
112 echo "# CONFIG_AEABI is not set" >> ${S}/.config
113 echo "# CONFIG_OABI_COMPAT is not set" >> ${S}/.config
114 fi
115
116 if [ "${DISTRO}" = "poky" -a "${MACHINE}" != "collie" ]; then
117 echo "CONFIG_LOGO=y" >> ${S}/.config
118 echo "CONFIG_LOGO_OHAND_CLUT224=y" >> ${S}/.config
119 echo "# CONFIG_LOGO_OZ240_CLUT224 is not set" >> ${S}/.config
120 echo "# CONFIG_LOGO_OZ480_CLUT224 is not set" >> ${S}/.config
121 echo "# CONFIG_LOGO_OZ640_CLUT224 is not set" >> ${S}/.config
122 echo "# CONFIG_LOGO_LINUX_CLUT224 is not set" >> ${S}/.config
123 else
124 echo "# CONFIG_LOGO is not set" >> ${S}/.config
125 echo "# CONFIG_LOGO_OHAND_CLUT224 is not set" >> ${S}/.config
126 echo "# CONFIG_LOGO_LINUX_CLUT224 is not set" >> ${S}/.config
127 echo "# CONFIG_LOGO_OZ240_CLUT224 is not set" >> ${S}/.config
128 echo "# CONFIG_LOGO_OZ480_CLUT224 is not set" >> ${S}/.config
129 echo "# CONFIG_LOGO_OZ640_CLUT224 is not set" >> ${S}/.config
130 fi
131
132 sed -e '/CONFIG_AEABI/d' \
133 -e '/CONFIG_OABI_COMPAT=/d' \
134 -e '/CONFIG_CMDLINE=/d' \
135 -e '/CONFIG_MTD_MTDRAM_SA1100=/d' \
136 -e '/CONFIG_MTDRAM_TOTAL_SIZE=/d' \
137 -e '/CONFIG_MTDRAM_ERASE_SIZE=/d' \
138 -e '/CONFIG_MTDRAM_ABS_POS=/d' \
139 -e '/CONFIG_LOGO=/d' \
140 -e '/CONFIG_LOGO_LINUX_CLUT224=/d' \
141 -e '/CONFIG_LOGO_OHAND_CLUT224=/d' \
142 -e '/CONFIG_LOGO_OZ240_CLUT224=/d' \
143 -e '/CONFIG_LOGO_OZ480_CLUT224=/d' \
144 -e '/CONFIG_LOGO_OZ640_CLUT224=/d' \
145 '${WORKDIR}/${KERNEL_DEFCONFIG}' >>'${S}/.config'
146
147 yes '' | oe_runmake oldconfig
148}
149
150do_bootkern() {
151 echo "Copying Kernel"
152 scp ${DEPLOY_DIR_IMAGE}/${KERNEL_SYMLINK_NAME} root@${TARGET_DEVICE_IP}:/zImage-bootkern
153 echo "Copying Modules"
154 scp ${DEPLOY_DIR_IMAGE}/modules-${KERNEL_VERSION}-${MACHINE}.tgz root@${TARGET_DEVICE_IP}:/
155 echo "Unpacking Modules"
156 ssh root@${TARGET_DEVICE_IP} "cd /; tar -xvzf modules-${KERNEL_VERSION}-${MACHINE}.tgz; rm modules-${KERNEL_VERSION}-${MACHINE}.tgz"
157 echo "Loading Kernel into kexec"
158 ssh root@${TARGET_DEVICE_IP} "/usr/sbin/kexec -l /zImage-bootkern"
159 echo "Launching kernel"
160 ssh root@${TARGET_DEVICE_IP} "/usr/sbin/kexec -f -e"
161}
162addtask bootkern after do_deploy
163do_bootkern[nostamp] = "1"
164
165# wlan-ng stuff need compiled kernel sources
166do_rm_work() {
167}