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