summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/list_modules.pm3
-rw-r--r--kernel/modules.pl35
2 files changed, 18 insertions, 20 deletions
diff --git a/kernel/list_modules.pm b/kernel/list_modules.pm
index c4ee7674d..63a382012 100644
--- a/kernel/list_modules.pm
+++ b/kernel/list_modules.pm
@@ -332,7 +332,8 @@ our %l = (
other => [
qw(defxx ide-floppy ide-tape loop lp nbd sg st),
qw(parport_pc parport_serial),
- qw(btaudio mmc_block),
+ qw(btaudio),
+ qw(mmc_block sdhci-acpi), # eMMC
'cryptoloop',
if_(arch() =~ /sparc/, 'openprom'),
diff --git a/kernel/modules.pl b/kernel/modules.pl
index b64c92fa2..70d6ed0bd 100644
--- a/kernel/modules.pl
+++ b/kernel/modules.pl
@@ -41,36 +41,33 @@ sub modules() {
@nls_modules, map { category2modules($_) } split(' ', $images_cat);
}
-sub get_firmwares() {
+sub list_needed_modules {
my ($kern_ver) = @_;
- foreach (all("all.kernels/$kern_ver/modules")) {
- foreach(`/sbin/modinfo -Ffirmware "all.kernels/$kern_ver/modules/$_"`) {
- mkdir_p(dirname("all.kernels/$kern_ver/firmware/$_"));
- eval { cp_af("/lib/firmware/$_", "all.kernels/$kern_ver/firmware/$_"); };
- }
- }
-}
-
-sub remove_unneeded_modules {
- my ($kern_ver) = @_;
-
- load_dependencies("all.kernels/$kern_ver/modules.dep");
+ load_dependencies("/lib/modules/$kern_ver/modules.dep");
my @all = modules();
my @all_with_deps = map { dependencies_closure($_) } @all;
- my %wanted_modules = map { (list_modules::modname2filename($_) . ".ko.xz" => 1) } @all_with_deps;
- foreach (all("all.kernels/$kern_ver/modules")) {
- $wanted_modules{$_} or unlink "all.kernels/$kern_ver/modules/$_";
+ my %wanted_modules = map { (list_modules::modname2filename($_) => 1) } @all_with_deps;
+ foreach (`find /lib/modules/$kern_ver -name '*.ko.?z'`) {
+ my $modfile = basename($_);
+ $modfile =~ s/\.ko\.xz//;
+ $wanted_modules{$modfile} and print "$modfile\n";
}
}
-sub make_modules_per_image {
+sub list_fake_modules {
my ($kern_ver) = @_;
- my $dir = "all.kernels/$kern_ver/modules";
+ load_dependencies("/lib/modules/$kern_ver/modules.dep");
- system("cd $dir ; tar cf ../all_modules.tar *.ko.*") == 0 or die "tar failed\n";
+ my @all = map { category2modules($_) } split(' ', 'multimedia/*');
+ my %wanted_modules = map { (list_modules::modname2filename($_) => 1) } @all;
+ foreach (`find /lib/modules/$kern_ver -name '*.ko.?z'`) {
+ my $modfile = basename($_);
+ $modfile =~ s/\.ko\.xz//;
+ $wanted_modules{$modfile} and print "$modfile\n";
+ }
}
sub get_main_modules() {