]>
Commit | Line | Data |
---|---|---|
3dd50160 | 1 | #!/bin/sh |
3dd50160 | 2 | # geninitrd mod: uvesafb |
6e49b0b1 | 3 | USE_V86D=${USE_V86D:-yes} |
3dd50160 ER |
4 | |
5 | # whether v86d should be installed | |
6 | need_uvesafb=no | |
7 | ||
72809931 ER |
8 | # setup geninitrd module |
9 | # @access public | |
10 | setup_mod_uvesafb() { | |
11 | v86d=$(find_tool $initrd_dir/v86d /sbin/v86d) | |
6e49b0b1 ER |
12 | |
13 | if [ ! -x "$v86d" ]; then | |
72809931 ER |
14 | USE_V86D=no |
15 | fi | |
16 | } | |
17 | ||
3dd50160 ER |
18 | # find modules for for fbsplash |
19 | # @access public | |
20 | find_modules_uvesafb() { | |
72809931 ER |
21 | if ! is_yes "$USE_V86D"; then |
22 | return | |
23 | fi | |
24 | ||
3dd50160 ER |
25 | # if we are adding uvesafb, we need v86d as well |
26 | local m | |
27 | for m in $MODULES; do | |
9b7cb6ba | 28 | if [[ "$m" = *uvesafb* ]]; then |
3dd50160 ER |
29 | need_uvesafb=yes |
30 | fi | |
31 | done | |
32 | } | |
33 | ||
34 | # generate initrd fragment | |
35 | # @access public | |
36 | initrd_gen_uvesafb() { | |
37 | if ! is_yes "$need_uvesafb"; then | |
38 | return | |
39 | fi | |
40 | ||
02ba8ab7 | 41 | verbose "initrd_gen_uvesafb" |
6b45dd6c AM |
42 | mknod -m 640 $DESTDIR/dev/mem c 1 1 |
43 | mknod -m 600 $DESTDIR/dev/tty1 c 4 1 | |
3dd50160 | 44 | inst_d /sbin |
72809931 | 45 | inst_exec $v86d /sbin |
3dd50160 | 46 | } |
6fadace4 ER |
47 | |
48 | initrd_gen_stop_uvesafb() { | |
49 | if ! is_yes "$need_uvesafb"; then | |
50 | return | |
51 | fi | |
52 | ||
53 | busybox_applet killall | |
54 | add_linuxrc <<-'EOF' | |
55 | killall v86d | |
56 | EOF | |
57 | } |