4 # fbset: Sets up fbcon video modes.
7 # chkconfig: 2345 69 31
8 # description: fbset is a utility with which fbcons video modes can be read \
11 # config: /etc/sysconfig/fbset
13 # Source function library
14 . /etc/rc.d/init.d/functions
17 if [ -f /etc/sysconfig/fbset ]; then
18 . /etc/sysconfig/fbset
23 if [ -n "${FBMODULE}" ]; then
24 _modprobe single $FBMODULE
30 # Setting default depth
31 if [ -n "${DEPTH}" ]; then
32 DEPTH_options="-depth ${DEPTH}"
35 if [ -z "${FBDEV_NUM}" ]; then
39 # See how we were called.
42 # Check if service is already running?
43 if [ ! -f /var/lock/subsys/fbset ]; then
45 # Check if we have framebuffer in kernel.
46 if [ -f /proc/fb ]; then
47 # /proc files show as files with size=0, this is a workaround.
48 cat /proc/fb | grep -q "." || try_load
50 # if not, then try to load specified kernel module
54 if [ -n "${FBMODE_default}" ]; then
55 show "Setting default video mode"
58 # check if devfs (workaround: -a option don't work at all)
59 if [ -d /dev/vc ]; then
60 if [ -z "$FBTERMINALS" ]; then
62 "`ls /dev/vc/* | sed 's|/dev/vc/||g'`"
64 FBDEV=`echo /dev/fb/${FBDEV_NUM}`
66 if [ -z "$FBTERMINALS" ]; then
68 "`cat /etc/inittab | grep '^[0-9]*:' | cut -f1 -d:`"
70 FBDEV=`echo /dev/fb${FBDEV_NUM}`
73 for cons in $FBTERMINALS; do
74 /usr/bin/open -c $cons -- /usr/bin/fbset -fb \
75 $FBDEV ${DEPTH_options} $FBMODE_default
76 /usr/bin/con2fb $FBDEV $cons
80 touch /var/lock/subsys/fbset
82 msg_already_running fbset
86 if [ -f /var/lock/subsys/fbset ]; then
87 rm -f /var/lock/subsys/fbset
93 # Check if we have framebuffer in kernel.
94 if [ -f /proc/fb ]; then
95 # /proc files show as files with size=0, this is a workaround.
96 cat /proc/fb | grep -q "." && nls "Frame buffer present." && exit 0
97 nls "Frame buffer not present."
100 nls "Frame buffer not present."
104 restart|force-reload)
110 msg_usage "$0 {start|stop|restart|force-reload|status}"