diff options
author | Jonathan Bauer | 2012-11-28 17:11:33 +0100 |
---|---|---|
committer | Jonathan Bauer | 2012-11-28 17:11:33 +0100 |
commit | 289865536ee00866446aea79539efe484be0ea77 (patch) | |
tree | 633203a44c7c037ce00ff661496c424141ed5c5c /src/boot-env | |
parent | Fix for shared folders setting. (diff) | |
download | core-289865536ee00866446aea79539efe484be0ea77.tar.gz core-289865536ee00866446aea79539efe484be0ea77.tar.xz core-289865536ee00866446aea79539efe484be0ea77.zip |
fix for missing firmware modules
Diffstat (limited to 'src/boot-env')
-rw-r--r-- | src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm b/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm index 9fd2c8bc..e23dc40f 100644 --- a/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm +++ b/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm @@ -278,20 +278,15 @@ sub _copyKernelModules # build a list of required firmwares out of the list of modules - not # totally optimal my @firmwares; - $self->addCMD("mkdir -p $self->{'build-path'}/lib/firmware"); - $self->addCMD("ln -s . $self->{'build-path'}/lib/firmware/$self->{'kernel-version'}"); + $self->addCMD("mkdir -p $self->{'build-path'}/lib/firmware/$self->{'kernel-version'}"); foreach my $moduleToBeCopied(%modulesToBeCopied) { $moduleToBeCopied =~ /.*\/(.*?)$/; # implies usage of switch vlog(1,$1); switch ($1){ - # nic modules fw case "bnx2.ko" {push @firmwares, split ' ', "bnx2/"} case "bnx2x.ko" {push @firmwares, split ' ', "bnx2x/"} case "e100.ko" {push @firmwares, split ' ', "e100"} - case "r8169.ko" {push @firmwares, split ' ', "rtl_nic/"} - case "tg3.ko" {push @firmwares, split ' ', "tigon/"} - # wifi fw case "iwlwifi" { push @firmwares, split ' ', "iwlwifi-3945-1.ucode iwlwifi-3945-2.ucode iwlwifi-4965-1.ucode iwlwifi-4965-2.ucode iwlwifi-5000-1.ucode" @@ -300,6 +295,8 @@ sub _copyKernelModules case "radeon.ko" {push @firmwares, split ' ', "radeon/"} case "mga.ko" {push @firmwares, split ' ', "matrox/"} case "r128.ko" {push @firmwares, split ' ', "r128/"} + case "r8169.ko" {push @firmwares, split ' ', "rtl_nic/"} + case "tg3.ko" {push @firmwares, split ' ', "tigon/"} } } # copy all the firmwares that we think are required @@ -310,16 +307,18 @@ sub _copyKernelModules my $alternative_source = followLink( "$self->{'root-path'}/lib/firmware/$firmwareToBeCopied", $self->{'root-path'} ); - my $target = "$self->{'build-path'}/lib/firmware/"; if (-e $source){ + my $target = "$self->{'build-path'}/lib/firmware/$self->{'kernel-version'}/"; + $self->addCMD("cp -pr --dereference $source $target"); + } else { + vlog(3,"unable to find $source for copying purposes"); } - elsif (-e $alternative_source){ + if (-e $alternative_source){ + my $target = "$self->{'build-path'}/lib/firmware/"; + $self->addCMD("cp -pr --dereference $alternative_source $target"); } - else { - vlog(3,"unable to find $source for copying purposes"); - } } # copy all the modules that we think are required |