| #!/bin/sh |
| |
| start() { |
| echo "ti-gfx: starting pvr 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 )) |
| |
| modprobe pvrsrvkm |
| modprobe omaplfb |
| modprobe bufferclass_ti |
| |
| pvr_maj=$(awk '$2=="pvrsrvkm" { print $1; }' /proc/devices) |
| rm -f /dev/pvrsrvkm |
| |
| mknod /dev/pvrsrvkm c $pvr_maj 0 |
| chmod 600 /dev/pvrsrvkm |
| |
| if ! /usr/bin/pvrsrvctl --start --no-module; then |
| echo "ti-gfx: unable to start server" |
| fi |
| } |
| |
| stop() { |
| echo "ti-gfx: stopping pvr driver" |
| |
| rmmod bufferclass_ti |
| rmmod omaplfb |
| rmmod pvrsrvkm |
| } |
| |
| case "$1" in |
| start) |
| start |
| ;; |
| stop) |
| stop |
| ;; |
| restart) |
| stop |
| start |
| ;; |
| *) |
| echo "ti-gfx: Please use start, stop, or restart." |
| exit 1 |
| ;; |
| esac |