]> git.pld-linux.org Git - packages/afbinit.git/blame - afbinit.init
- use http://ftp.debian.org/ url
[packages/afbinit.git] / afbinit.init
CommitLineData
c7ba4d69 1#!/bin/sh
2#
3# afbinit firmware loader for Elite 3D cards
4#
5# chkconfig: 2345 90 10
6#
7# description: Load microcode at boottime to all detected Elite3D
8# graphics cards.
9#
10
11# Source function library
12. /etc/rc.d/init.d/functions
13
14UCODE=/lib/firmware/afb.ucode
15LOADER=/usr/sbin/afbinit
16
17ARCH=$(uname -m)
18# If this is not sparc64, get out of here.
19if [ "$ARCH" != "sparc64" ]; then
2b45ea60 20 echo "$ARCH cannot have AFB"
c7ba4d69 21 return 1
22fi
23
2b45ea60 24# The microcode must exist.
c7ba4d69 25if [ ! -f $UCODE ]; then
26 echo "Missing microcode"
27 return 1
28fi
29
30# Make FB device list.
31afb_devs=$(awk '/Elite/ {printf "fb%d\n",$1}' /proc/fb)
32if [ -z "$afb_devs" ]; then
33 echo "No AFB detected"
34 return 1
35fi
36
37start()
38{
39 # Load microcode onto each card.
40 for afb in $afb_devs; do
41 show "Starting afbinit for $afb device "
42 busy
43 $LOADER /dev/$afb $UCODE > /dev/null
44 RETVAL=$?
45 [ $RETVAL -eq 0 ] && ok || fail
46 done
47}
48
2b45ea60 49RETVAL=0
c7ba4d69 50case "$1" in
2b45ea60 51 start|restart|try-restart|reload|force-reload)
c7ba4d69 52 start
53 ;;
54 stop)
55 ;;
2b45ea60
JB
56 status)
57 echo "AFB devices present: $afb_devs"
58 ;;
c7ba4d69 59 *)
2b45ea60 60 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload}"
c7ba4d69 61 exit 3
62 ;;
63esac
2b45ea60 64exit $RETVAL
This page took 0.072723 seconds and 4 git commands to generate.