summaryrefslogtreecommitdiff
path: root/linux/openzaurus_2.6.10-rc2.oe
blob: 6807f28b2c2d413d425e9e41206b64831d30edf5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
SECTION = "kernel"
DESCRIPTION = "2.6 Linux Development Kernel for Zaurus devices."
LICENSE = "GPL"
#KV = "${@oe.data.getVar('PV',d,True).split('-')[0]}"
KV = "${@oe.data.getVar('PV',d,True)}"

SRC_URI = "ftp://ftp.kernel.org/pub/linux/kernel/v2.6/testing/linux-${KV}.tar.gz \
#          http://www.cs.wisc.edu/~lenz/zaurus/files/patch-2.6.7-jl1.diff.gz;patch=1 \
# http://www.rpsys.net/openzaurus/${KV}/jl1/localversion.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/pxa-linking-bug.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/pxa-cpu.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/locomo_pm.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/locomo_devices.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/locomo_kbd.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/locomo_lcd.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/collie_uart.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/collie_batswitch.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/collie_pcmcia.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/sharp_mtd.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/collie_use_sharp_mtd.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/poodle_base.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jl1/poodle_fb.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/corgi_base-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/corgi_ssp-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/w100-r2.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/mtd_sharpsl-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/mtd_sharpsl_extra-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jffs2_longfilename-r0.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/mtd_sharpsl_map-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/jffs2_sync-r0.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/corgi_kbd-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/corgi_backlight-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/corgi_param-r1.patch;patch=1 \
http://www.rpsys.net/openzaurus/${KV}/corgi_ts-r1.patch;patch=1 \
file://defconfig-husky \
file://defconfig-collie \
file://defconfig-poodle "

SRC_URI_append_husky = "http://www.rpsys.net/openzaurus/${KV}/corgi_keymap-r0.patch;patch=1"
SRC_URI_append_collie = "http://www.rpsys.net/openzaurus/${KV}/jl1/collie_keymap.patch;patch=1"	   


S = "${WORKDIR}/linux-${KV}"

inherit kernel

#
# Compensate for sucky bootloader on all Sharp Zaurus models
#
FILES_kernel = ""
ALLOW_EMPTY = 1 
        
EXTRA_OEMAKE = ""
COMPATIBLE_HOST = "arm.*-linux"

#
# Create the kernel command line. 
#
CMDLINE_MTDPARTS_poodle   = "mtdparts=sharpsl-nand:7168k@0k(smf),22528k@7168k(root),-(home)"
CMDLINE_MTDPARTS_corgi    = "mtdparts=sharpsl-nand:7168k@0k(smf),25600k@7168k(root),-(home)"
CMDLINE_MTDPARTS_shepherd = "mtdparts=sharpsl-nand:7168k@0k(smf),25600k@7168k(root),-(home)"
CMDLINE_MTDPARTS_husky    = "mtdparts=sharpsl-nand:7168k@0k(smf),54272k@7168k(root),-(home)"
CMDLINE_MTDPARTS_tosa     = "mtdparts=sharpsl-nand:7168k@0k(smf),28672k@7168k(root),-(home) EQUIPMENT=2"

CMDLINE_MEM_collie		= "mem=32M"
CMDLINE_MEM_husky		= "mem=64M"

CMDLINE_CON = "console=ttyS0,115200n8 console=tty0 noinitrd"
CMDLINE_ROOT = "root=/dev/mtdblock2 rootfstype=jffs2 "

CMDLINE = "${CMDLINE_CON} ${CMDLINE_ROOT} ${CMDLINE_MTDPARTS} ${CMDLINE_MEM}"

do_configure() {
    
    install -m 0644 ${WORKDIR}/defconfig-${MACHINE} ${S}/.config || die "No default configuration for ${MACHINE} available."

    if [ "${MACHINE}" == "collie" ] 
    then
		mem="32"
		rd="32"
		mempos=`echo "obase=16; $mem * 1024 * 1024" | bc`
		rdsize=`echo "$rd * 1024" | bc`
		total=`expr $mem + $rd`
		addr=`echo "obase=16; ibase=16; C000000 + $mempos" | bc`
	 	if [ "$rd" == "0" ]
	 	then
			echo "# CONFIG_MTD_MTDRAM_SA1100 is not set" >> ${S}/.config
		else
			echo "CONFIG_MTD_MTDRAM_SA1100=y"           >> ${S}/.config
			echo "CONFIG_MTDRAM_TOTAL_SIZE=$rdsize"     >> ${S}/.config
			echo "CONFIG_MTDRAM_ERASE_SIZE=1"           >> ${S}/.config
			echo "CONFIG_MTDRAM_ABS_POS=$addr"          >> ${S}/.config
		fi
		
	fi
	echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >> ${S}/.config
    yes '' | oe_runmake oldconfig
}