summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/install2.pm17
-rw-r--r--perl-install/modules.pm1
-rwxr-xr-xupdate_kernel7
3 files changed, 22 insertions, 3 deletions
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index ccfe1e526..7c4a1faa9 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -303,6 +303,21 @@ sub exitInstall {
}
+sub start_i810fb {
+
+ my ($vga) = cat_('/proc/cmdline') =~ /vga=(\S+)/;
+ return if !$vga || listlength(cat_('/proc/fb'));
+
+ my %vga_to_xres = (0x311 => '640', 0x314 => '800', 0x317 => '1024');
+ my $xres = $vga_to_xres{$vga} || '800';
+
+ log::l("trying to load i810fb module with xres <$xres> (vga was <$vga>)");
+ eval { modules::load('i810fb', undef,
+ ("xres=$xres", 'hsync1=32', 'hsync2=48', 'vsync1=50', 'vsync2=70', #- this sucking i810fb does not accept floating point numbers in hsync!
+ 'vram=2', 'bpp=16', 'accel=1', 'mtrr=1', 'hwcur=1', 'xcon=4')) };
+}
+
+
#-######################################################################################
#- MAIN
#-######################################################################################
@@ -465,6 +480,8 @@ sub main {
$o->{lang} = lang::set($o->{lang}); #- mainly for defcfg
+ start_i810fb();
+
$o->{allowFB} = listlength(cat_("/proc/fb"));
my $VERSION = cat__(install_any::getFile("VERSION")) or do { print "VERSION file missing\n"; sleep 5 };
diff --git a/perl-install/modules.pm b/perl-install/modules.pm
index c48cf87ba..f5c6db304 100644
--- a/perl-install/modules.pm
+++ b/perl-install/modules.pm
@@ -391,6 +391,7 @@ if_(arch() !~ /^sparc/,
"buz" => "Zoran Corporation|ZR36057PQC Video cutting chipset",
"defxx" => "DEC|DEFPA",
"i810_rng" => "i810_rng",
+ "i810fb" => "i810fb",
"ide-floppy" => "ide-floppy",
"ide-scsi" => "ide-scsi",
"ide-tape" => "ide-tape",
diff --git a/update_kernel b/update_kernel
index 74c86c322..8a22ca68c 100755
--- a/update_kernel
+++ b/update_kernel
@@ -16,9 +16,10 @@ function create_marfile() {
needed=`cat modules.dep | perl -ne "print "'$1'" if /^$j: (.*)/"`
for k in $needed
do
- [ -z "`echo $* | grep $k`" ] \
- && [ -z "`echo $PCMCIA_COREMODULES | grep $k`" ] \
- && echo "WARNING! in $marfile, $k is missing (required by $i)"
+ [ -z "`echo $* | grep $k`" ] \
+ && [ -z "`echo $PCMCIA_COREMODULES | grep $k`" ] \
+ && echo "ERROR: in $marfile, $k is missing (required by $i)" \
+ && exit 1
done
done
$GIBASEDIR/mdk-stage1/mar/mar -c $marfile $(ls $*)