summaryrefslogtreecommitdiffstats
path: root/initramfs/initrd-stuff/bin/hwautocfg
diff options
context:
space:
mode:
authorDirk von Suchodoletz2007-12-08 20:17:07 +0100
committerDirk von Suchodoletz2007-12-08 20:17:07 +0100
commit6d120c66bdf031ccf35a0f54ca4c7da164187951 (patch)
tree815a4294689ba95d980f5a53182fd172e83e0842 /initramfs/initrd-stuff/bin/hwautocfg
parentTool for patching Intel chip video BIOS. (diff)
downloadcore-6d120c66bdf031ccf35a0f54ca4c7da164187951.tar.gz
core-6d120c66bdf031ccf35a0f54ca4c7da164187951.tar.xz
core-6d120c66bdf031ccf35a0f54ca4c7da164187951.zip
This should setup proper X screen resolutions on machines with Intel based
graphic adaptors (non vesa modes) git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1427 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'initramfs/initrd-stuff/bin/hwautocfg')
-rwxr-xr-xinitramfs/initrd-stuff/bin/hwautocfg14
1 files changed, 10 insertions, 4 deletions
diff --git a/initramfs/initrd-stuff/bin/hwautocfg b/initramfs/initrd-stuff/bin/hwautocfg
index 7512718f..a9029575 100755
--- a/initramfs/initrd-stuff/bin/hwautocfg
+++ b/initramfs/initrd-stuff/bin/hwautocfg
@@ -267,10 +267,16 @@ if [ ! -f /rootfs${D_XF86CONFFILE#/mnt} ] ; then
error "${xcfg_keyb}" nonfatal
fi
sed "s/XKEYBOARD/${XKEYBOARD}/" -i $xfc
- # check for kind of xorg module used
- # if intel
- # 915resolution -l|sed -n "/32 bits/p" > /tmp/ires
- # match existing and set missing resolutions
+ # check for kind of xorg module used and patch the i8,9XX VGA BIOS if needed
+ if strinfile '"i810"' $xfc && [ -f /tmp/res ] ; then
+ highres=$(sort -run /tmp/res|grep -i x -m 1)
+ 915resolution -l|sed -n "s/Mode //;/32 bits/p" > /tmp/915res
+ strinfile ${highres} /tmp/915res || {
+ 915resolution $(grep -i x -m 1 /tmp/915res|sed "s/\ :.*//") $(echo \
+ $highres|sed "s/x/\ /") 2>&1 >/dev/null;
+ # for some reason that does not work for a Dell laptop with i855 chipset
+ 915resolution 3c $(echo $highres|sed "s/x/\ /") 2>&1 >/dev/null; }
+ fi
fi
# if any new device appeared up to now