| #!/bin/sh -e |
| |
| install_driver() { |
| DRIVER=$1 |
| OPTS=$2 |
| |
| modprobe $DRIVER $OPTS |
| maj=$(awk "\$2==\"${DRIVER}\" { print \$1; }" /proc/devices) |
| |
| rm -f /dev/${DRIVER} |
| |
| mknod /dev/${DRIVER} c $maj 0 |
| chmod 600 /dev/${DRIVER} |
| } |
| |
| start() { |
| echo "mali: starting driver" |
| |
| BITSPERPIXEL="$(fbset | awk '/geom/ {print $6}')" |
| YRES="$(fbset | awk '/geom/ {print $3}')" |
| # Set RGBA ordering to something the drivers like |
| if [ "$BITSPERPIXEL" = "32" ] ; then |
| fbset -rgba 8/16,8/8,8/0,8/24 |
| fi |
| # Try to enable triple buffering when there's enough VRAM |
| fbset -vyres $(( YRES*3 )) |
| |
| install_driver mali |
| install_driver ump |
| } |
| |
| stop() { |
| echo "mali: stopping driver" |
| |
| rmmod ump |
| rmmod mali |
| } |
| |
| case "$1" in |
| start) |
| start |
| ;; |
| stop) |
| stop |
| ;; |
| restart) |
| stop |
| start |
| ;; |
| *) |
| echo "mali: Please use start, stop, or restart." |
| exit 1 |
| ;; |
| esac |