archboot/lib/initcpio/hooks/arch_fb
2012-01-16 20:04:22 +01:00

30 lines
988 B
Text

# Created by Tobias Powalowski <tpowa@archlinux.org>
run_hook ()
{
if [ "$fbmodule" = "" ]; then
# check for kms
for fb in i915 nouveau radeon; do
for pci in $(/sbin/modinfo -F alias $fb | sed -e 's/\*/\.&/g'); do
if cat /sys/bus/pci/devices/*/modalias | grep -i $pci >/dev/null; then
msg ":: Switching to $fb kms mode..."
echo "options $fb modeset=1" >> /etc/modprobe.d/modprobe.conf
fbmodule="$fb"
else
echo "blacklist $fb" >> /etc/modprobe.d/framebuffer_blacklist.conf
fi
done
done
fi
# check for uvesafb
if [ "$(echo $uvesafb | grep "[0-9]*x[0-9]*-[0-9]*")" ]; then
msg ":: Switching to uvesafb mode..."
sed -i -e "s#options.*#options uvesafb mode_option=$uvesafb scroll=ywrap#g" /etc/modprobe.d/uvesafb.conf
fbmodule="uvesafb"
fi
# load correct module
if ! [ "$fbmodule" = "" ]; then
msg ":: Loading ${fbmodule}..."
modprobe -aq $fbmodule >/dev/null 2>&1
fi
}