summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mageia.org>2012-01-04 18:31:48 +0000
committerThierry Vignaud <tv@mageia.org>2012-01-04 18:31:48 +0000
commitb028f9b7a39efdc6fafce0b60269432ac299aace (patch)
tree234f058df4e3b9bcae1c8d5b148a50b8f0c09815 /lib
parent5e8b0144e8105bab4da933d05ad53543943c97a1 (diff)
downloaddrakx-kbd-mouse-x11-b028f9b7a39efdc6fafce0b60269432ac299aace.tar
drakx-kbd-mouse-x11-b028f9b7a39efdc6fafce0b60269432ac299aace.tar.gz
drakx-kbd-mouse-x11-b028f9b7a39efdc6fafce0b60269432ac299aace.tar.bz2
drakx-kbd-mouse-x11-b028f9b7a39efdc6fafce0b60269432ac299aace.tar.xz
drakx-kbd-mouse-x11-b028f9b7a39efdc6fafce0b60269432ac299aace.zip
(readCardsDB,handle_DRIVER2_NO_SSE) handle new DRIVER2_NEEDS_SSE keyword
this enables to handle drivers needing SSE (aka nvidia-current) in a more generic way, not depending on having DRIVER2_NO_SSE keyword) this is needed as DRIVER2_NO_SSE will be commented out since nvidia96xx doesn't support x11-server-1.11.x
Diffstat (limited to 'lib')
-rw-r--r--lib/Xconfig/card.pm1
-rw-r--r--lib/Xconfig/proprietary.pm7
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/Xconfig/card.pm b/lib/Xconfig/card.pm
index 133dd08..01cb9ea 100644
--- a/lib/Xconfig/card.pm
+++ b/lib/Xconfig/card.pm
@@ -496,6 +496,7 @@ sub readCardsDB {
CHIPSET => sub { $card->{Chipset} = $val },
DRIVER => sub { $card->{Driver} = $val },
DRIVER2 => sub { $card->{Driver2} = $val },
+ DRIVER2_NEEDS_SSE => sub { $card->{DRIVER2_NEEDS_SSE} = 1 },
DRIVER2_NO_SSE => sub { $card->{DRIVER2_NO_SSE} = $val },
NEEDVIDEORAM => sub { $card->{needVideoRam} = 1 },
DRI_GLX => sub { $card->{DRI_GLX} = 1 if $card->{Driver} },
diff --git a/lib/Xconfig/proprietary.pm b/lib/Xconfig/proprietary.pm
index 350a116..8fd701f 100644
--- a/lib/Xconfig/proprietary.pm
+++ b/lib/Xconfig/proprietary.pm
@@ -37,12 +37,13 @@ sub install_matrox_hal {
sub handle_DRIVER2_NO_SSE {
my ($card) = @_;
- $card->{DRIVER2_NO_SSE} or return;
+ $card->{DRIVER2_NO_SSE} || $card->{DRIVER2_NEEDS_SSE} or return;
require detect_devices;
if (!detect_devices::has_cpu_flag('sse')) {
- log::l("$card->{Driver2} need a processor featuring SSE, switching back to $card->{DRIVER2_NO_SSE}");
- $card->{Driver2} = $card->{DRIVER2_NO_SSE};
+ my $driver = $card->{DRIVER2_NEEDS_SSE} ? $card->{DRIVER} : $card->{DRIVER2_NO_SSE};
+ log::l("$card->{Driver2} need a processor featuring SSE, switching back to $driver");
+ $card->{Driver2} = $driver;
}
}