diff options
Diffstat (limited to 'perl-install/harddrake/data.pm')
-rw-r--r-- | perl-install/harddrake/data.pm | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/perl-install/harddrake/data.pm b/perl-install/harddrake/data.pm index afad37117..8d4d4de21 100644 --- a/perl-install/harddrake/data.pm +++ b/perl-install/harddrake/data.pm @@ -12,7 +12,7 @@ our ($version, $sbindir, $bindir) = ("10", "/usr/sbin", "/usr/bin"); my @devices = (detect_devices::probeall(), detect_devices::getSCSI()); foreach my $dev (@devices) { - # normalize device IDs for devices cthat came from mouse.pm: + # normalize device IDs for devices that came from mouse.pm: next if !defined $dev->{Synaptics}; foreach my $field (qw(vendor id subvendor subid)) { next if !defined $dev->{$field}; @@ -24,7 +24,7 @@ foreach my $dev (@devices) { sub unknown() { grep { $_->{media_type} !~ /BRIDGE|class\|Mouse|DISPLAY|Hub|MEMORY_RAM|MULTIMEDIA_(VIDEO|AUDIO|OTHER)|NETWORK|Printer|SERIAL_(USB|SMBUS)|STORAGE_(IDE|OTHER|RAID|SCSI)|SYSTEM_(OTHER|SDHCI)|tape|UPS/ && !member($_->{driver}, qw(cpia_usb cyber2000fb forcedeth ibmcam megaraid mod_quickcam nvnet ohci1394 ov511 ov518_decomp scanner ultracam usbvideo usbvision)) - && $_->{driver} !~ /^ISDN|Mouse:USB|Removable:zip|class\|Mouse|sata|www.linmodems.org/ + && $_->{driver} !~ /^ISDN|Mouse:USB|Removable:zip|class\|Mouse|sata|www.linmodems.org|kbd|mouse|sysrq|usbhid/ && $_->{type} ne 'network' && $_->{description} !~ /Alcatel|ADSL Modem/; } @devices; @@ -62,7 +62,8 @@ our @tree = string => N("SATA controllers"), icon => "ide_hd.png", configurator => "", - detector => sub { f(grep { $_->{driver} !~ /^pata/ } detect_devices::probe_category('disk/sata')) }, + detector => sub { f(grep { $_->{driver} !~ /^pata/ } detect_devices::probe_category('disk/sata')), + f(grep { $_->{description} =~ /AHCI/ } @devices) }, checked_on_boot => 1, }, @@ -302,7 +303,7 @@ our @tree = require list_modules; my @modules = list_modules::category2modules('multimedia/sound'); f(grep { $_->{media_type} =~ /MULTIMEDIA_AUDIO|PROCESSOR_CO/ || member($_->{driver}, @modules) - || $_->{description} =~ /PC Speaker/ } @devices); + || $_->{description} =~ /^\|?HDA |PC Speaker/ } @devices); }, checked_on_boot => 1, }, @@ -384,7 +385,7 @@ our @tree = string => N("Bluetooth devices"), icon => "hw_network.png", configurator => "", - detector => sub { f(detect_devices::probe_category('bus/bluetooth')), f(grep { $_->{description} =~ /Bluetooth Dongle/ } @$devices) }, + detector => sub { f(detect_devices::probe_category('bus/bluetooth')), f(grep { $_->{description} =~ /Bluetooth Dongle/ } @devices) }, checked_on_boot => 1, }, @@ -399,7 +400,8 @@ our @tree = f(grep { $_->{media_type} && $_->{media_type} =~ /^NETWORK/ || $_->{type} && $_->{type} eq 'network' - || member($_->{driver}, @net_modules); + || member($_->{driver}, @net_modules) + || $_->{description} =~ /WLAN/; } @devices); }, checked_on_boot => 1, @@ -432,7 +434,7 @@ our @tree = string => N("Memory"), icon => "hw-memory.png", configurator => "", - detector => sub { grep { member($_->{name}, 'Cache', 'Memory Module') } detect_devices::dmidecode() }, + detector => sub { grep { member($_->{name}, 'Cache', 'Memory Module') || $_->{name} eq 'Memory Device' && $_->{Size} ne 'No Module Installed' } detect_devices::dmidecode() }, checked_on_boot => 0, }, @@ -475,9 +477,9 @@ our @tree = icon => "hw-keyboard.png", configurator => "$sbindir/keyboarddrake", detector => sub { - f(grep { $_->{description} =~ /Keyboard/i || $_->{media_type} =~ /Subclass\|Keyboard/i || + f(grep { $_->{description} =~ /Keyboard/i || $_->{media_type} =~ /Keyboard/i || # USB devices are filtered out since we already catch them through probeall(): - $_->{bus} ne 'usb' && $_->{driver} =~ /^event|kbd/ && $_->{description} !~ /PC Speaker/; + $_->{bus} ne 'usb' && $_->{driver} =~ /^event|kbd|^usbhid/ && $_->{description} !~ /PC Speaker/; } @devices); }, checked_on_boot => 0, @@ -570,9 +572,7 @@ sub custom_id { N("cpu # ") . $device->{processor} . ": " . $device->{'model name'} : $device->{"Socket Designation"} ? "$device->{name} (" . $device->{"Socket Designation"} . ")" : - $device->{name} ? $device->{name} : - (($device->{description}) ? $device->{description} : - (($device->{Vendor}) ? $device->{Vendor} : $str))); + $device->{name} || $device->{description} || $device->{Vendor} || $str); } 1; |