[hbbtv/youtubetv] Fixed hanup bug and segmentation fault on 3rd-party images.
[vuplus_openembedded] / recipes / linux / handhelds-pxa_2.4.19-rmk6-pxa1-hh42.bb
1 SECTION = "kernel"
2 DESCRIPTION = "handhelds.org Linux kernel for PXA25x based devices."
3 LICENSE = "GPL"
4 #PR = "r1"
5
6
7 KERNEL_CCSUFFIX = "-3.3.4"
8 COMPATIBLE_HOST = "arm.*-linux"
9 COMPATIBLE_MACHINE = '(h3900|h5000)'
10
11
12 SRC_URI = "${HANDHELDS_CVS};module=linux/kernel;tag=${@'K' + bb.data.getVar('PV',d,1).replace('.', '-')} \
13            file://defconfig-${PACKAGE_ARCH} \
14            file://ipaq-hal.init \
15            file://linux-2.4-usb-gadget.patch;patch=1 \
16            file://usb-gadget-ether-compat.patch;patch=1 \
17            file://linux-2.4-no-short-loads.patch;patch=1 \
18            file://linux-2.4-cpufreq.patch;patch=1"
19
20 S = "${WORKDIR}/kernel"
21
22 inherit kernel update-rc.d
23
24 K_MAJOR = "${@bb.data.getVar('PV',d,1).split('-')[0].split('.')[0]}"
25 K_MINOR = "${@bb.data.getVar('PV',d,1).split('-')[0].split('.')[1]}"
26 K_MICRO = "${@bb.data.getVar('PV',d,1).split('-')[0].split('.')[2]}"
27 RMKV    = "${@bb.data.getVar('PV',d,1).split('-')[1].split('rmk')[-1]}"
28 PXAV    = "${@bb.data.getVar('PV',d,1).split('-')[2].split('pxa')[-1]}"
29 HHV     = "${@bb.data.getVar('PV',d,1).split('-')[3].split('hh')[-1]}"
30
31 KERNEL_PRIORITY = "${@'%d' % (int(bb.data.getVar('K_MAJOR',d,1)) * 100000000 + int(bb.data.getVar('K_MINOR',d,1)) * 1000000 + int(bb.data.getVar('K_MICRO',d,1)) * 10000 + int(bb.data.getVar('RMKV',d,1)) * 1000 + int(bb.data.getVar('PXAV',d,1)) * 100 + float(bb.data.getVar('HHV',d,1)))}"
32
33 module_conf_h3900_asic = "alias ipaq_hal_3900 h3900_asic"
34 module_conf_h5400_asic = "alias ipaq_hal_5400 h5400_asic"
35 module_conf_pxa_ir = "alias irda0 pxa_ir"
36 module_conf_i2c-algo-pxa = "options i2c-algo-pxa pxa_scan=0"
37 module_conf_pcmcia_core = "options pcmcia_core ignore_cis_vcc=1"
38 module_conf_ppp_async = "alias ppp0 ppp_async"
39 module_conf_orinoco_cs = "options orinoco_cs ignore_cis_vcc=1"
40 module_conf_hostap_cs = "options hostap_cs ignore_cis_vcc=1"
41 module_conf_hidp = "alias bt-prot-5 hidp"
42
43 module_autoload_h3600_ts = "h3600_ts"
44 module_autoload_apm = "apm"
45 module_autoload_af_packet = "af_packet"
46 module_autoload_usb-ohci-h5400 = "usb-ohci-h5400"
47 module_autoload_ppp_async = "ppp_async"
48 module_autoload_usb-eth = "usb-eth"
49 module_autoload_h5400_buzzer = "h5400_buzzer"
50 # breaks booting on first install of h3900 handhelds
51 #module_autoload_mmc_asic3 = "mmc_asic3"
52 module_autoload_mmc_h5400 = "mmc_h5400"
53 module_autoload_h5400-audio = "h5400-audio"
54 module_autoload_h3900-uda1380 = "h3900-uda1380"
55 module_autoload_sa1100-rtc = "sa1100-rtc"
56 module_autoload_ak4535 = "ak4535"
57 module_autoload_i2c-adap-pxa = "i2c-adap-pxa"
58
59 FILES_kernel += "/etc/init.d/ipaq-hal"
60 INITSCRIPT_NAME = "ipaq-hal"
61 INITSCRIPT_PARAMS = "start 21 S ."
62
63 # extra depends
64 RDEPENDS_kernel-module-h5400-audio = "kernel-module-ak4535 kernel-module-i2c-adap-pxa"
65 RDEPENDS_kernel-module-h3900-uda1380 = "kernel-module-uda1380 kernel-module-i2c-adap-pxa"
66
67 do_configure_prepend() {
68         install -m 0644 ${WORKDIR}/defconfig-${PACKAGE_ARCH} ${S}/.config
69 }
70
71 do_install_append() {
72         install -d ${D}${sysconfdir}/init.d
73         install ${WORKDIR}/ipaq-hal.init ${D}${sysconfdir}/init.d/ipaq-hal
74 }