Merge commit 'upload/vuplus-1.6' into vuplus-1.6
[vuplus_openembedded] / conf / machine / dm7025.conf
1 #@TYPE: Machine
2 #@NAME: Dreambox DM 7025
3 #@DESCRIPTION: Machine configuration for the Dreambox DM 7025
4
5 #set distro pr to a because of change from 2.6.32 to 2.6.12.6
6 #but online update doesnt work because of squashfs/jffs2 unionfs and not enough flash
7 #so a complete reflash is always needed on dm7025 when the DISTRO_PR changes!
8 DISTRO_PR = "a"
9
10 PREFERRED_VERSION_linux-dm7025 = "2.6.12.6"
11 PREFERRED_VERSION_linux-libc-headers = "2.6.12.0"
12 PREFERRED_VERSION_wpa-supplicant = "0.5.10"
13 PREFERRED_VERSION_unionfs-modules = "1.1.5"
14 IMAGE_DEV_MANAGER = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', ' ', 'udev', d)}"
15
16 EXTRA_IMAGEDEPENDS += "\
17         ${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', 'unionfs-modules hotplug-ng', 'squashfs-tools-native', d)} \
18         klibc  \
19         dreambox-boottool \
20 "
21
22 #needed for wpa-supplicant
23 COMBINED_FEATURES_append = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', '', 'nl80211', d)}"
24
25 #JAVA_mipsel = ",java"
26
27 #take care when you do changes on MACHINE_ESSENTIAL_EXTRA_RDEPENDS/RRECOMMENDS you have to increment the recipes/tasks/task-boot.bb PR
28
29 MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "\
30         kernel-module-squashfs \
31         ${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', 'unionfs-modules hotplug-ng', 'kernel-module-unionfs \
32                 kernel-module-ext3 \
33                 kernel-module-nls-iso8859-15 \
34                 kernel-module-nls-iso8859-1 \
35                 kernel-module-nls-cp437 \
36                 kernel-module-nls-cp850 \
37                 kernel-module-nls-utf8', d)} \
38         kernel-module-loop \
39         dreambox-boottool \
40 "
41
42 MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS = "\
43         kernel-module-cifs \
44         kernel-module-exportfs \
45         kernel-module-ext2 \
46         kernel-module-reiserfs \
47         kernel-module-xfs \
48 "
49
50 KV = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', '2.6.12.6', '${PREFERRED_VERSION_linux-dm7025}-1.3-dm7025', d)}"
51 UNIONFS = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', 'unionfs.ko', 'unionfs', d)}"
52 MKSQUASHFS_PARAM = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', '-le', '-comp lzma', d)}"
53
54 UNLZMA_CMD = "${@base_contains('PREFERRED_VERSION_linux-dm7025', '2.6.12.6', '', \
55         'mv ${IMAGE_ROOTFS}/lib/modules/${KV}/kernel/lib/decompress_unlzma.ko \
56         ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/lib;', d)}"
57
58 EXTRA_IMAGECMD_jffs2 = " --eraseblock=0x4000 -n -l "
59 IMAGE_CMD_jffs2 = "\
60         install -d ${DEPLOY_DIR_IMAGE}/boot_tmp; \
61         for i in bin dev mnt/flash mnt/squashfs mnt/root; \
62         do \
63                 install -d ${IMAGE_ROOTFS}/boot/$i; \
64         done; \
65         install -d ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/fs; \
66         install -d ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/drivers/block; \
67         install -d ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/lib; \
68         mv ${IMAGE_ROOTFS}/lib/modules/${KV}/kernel/fs/squashfs \
69                 ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/fs; \
70         mv ${IMAGE_ROOTFS}/lib/modules/${KV}/kernel/fs/${UNIONFS} \
71                 ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/fs; \
72         mv ${IMAGE_ROOTFS}/lib/modules/${KV}/kernel/drivers/block/loop.ko \
73                 ${IMAGE_ROOTFS}/boot/lib/modules/${KV}/kernel/drivers/block; \
74         ${UNLZMA_CMD} \
75         mknod -m 660 ${IMAGE_ROOTFS}/boot/dev/console c 5 1; \
76         mknod -m 660 ${IMAGE_ROOTFS}/boot/dev/null c 1 3; \
77         mknod -m 660 ${IMAGE_ROOTFS}/boot/dev/mtdblock3 b 31 3; \
78         mknod -m 660 ${IMAGE_ROOTFS}/boot/dev/loop0 b 7 0; \
79         mkfs.jffs2 \
80                 --root=${IMAGE_ROOTFS}/boot \
81                 --faketime \
82                 --disable-compressor=lzo \
83                 --compression-mode=size \
84                 --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.boot.jffs2 \
85                 ${EXTRA_IMAGECMD}; \
86         rm -rf ${DEPLOY_DIR_IMAGE}/boot_tmp; \
87         mv ${IMAGE_ROOTFS}/boot ${DEPLOY_DIR_IMAGE}/boot_tmp; \
88         install -d ${IMAGE_ROOTFS}/boot; \
89         \
90         install -d ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta; \
91         cd ${IMAGE_ROOTFS}; \
92         for i in `find -maxdepth 3 -name enigma2 | xargs`; \
93         do \
94                 install -d ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/${i%%/enigma2}; \
95                 mv $i ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/${i%%/enigma2}; \
96         done; \
97         for i in `find -type d -name extra | xargs`; \
98         do \
99                 install -d ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/${i%%/extra}; \
100                 mv $i ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/${i%%/extra}; \
101         done; \
102         mv usr/bin/gst* ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/usr/bin; \
103         mv usr/lib/*gst* ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/usr/lib; \
104         sed -i 's/^\/dev\/mtdblock2/\/dev\/root/;' ${IMAGE_ROOTFS}/etc/fstab; \
105         mksquashfs ${IMAGE_ROOTFS}/* ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/squashfs \
106                 ${MKSQUASHFS_PARAM} -root-owned -noappend; \
107         \
108         mkfs.jffs2 \
109                 --root=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME} \
110                 --faketime \
111                 --disable-compressor=lzo \
112                 --compression-mode=size \
113                 --output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
114                 ${EXTRA_IMAGECMD}; \
115         for i in ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}/delta/*; \ 
116                 do cp -R $i ${IMAGE_ROOTFS}; done; \
117         rm -rf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}; \
118         rm -rf ${IMAGE_ROOTFS}/boot; \
119         mv ${DEPLOY_DIR_IMAGE}/boot_tmp ${IMAGE_ROOTFS}/boot; \
120         buildimage ${STAGING_LIBDIR}/dreambox-secondstage/main.bin.gz \
121                 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.boot.jffs2 \
122                 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
123                 ${MACHINE} \
124                 > ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.nfi"
125
126 MACHINE_FEATURES += "wifi"
127
128 require conf/machine/include/dreambox-mipsel.inc