summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/modules.pl5
-rw-r--r--mdk-stage1/mount.c2
-rw-r--r--perl-install/modules.pm1
3 files changed, 5 insertions, 3 deletions
diff --git a/kernel/modules.pl b/kernel/modules.pl
index 0491e0c09..de6ce1b7b 100644
--- a/kernel/modules.pl
+++ b/kernel/modules.pl
@@ -37,7 +37,8 @@ my ($f, @para) = @ARGV;
$::{$f}->(@para);
sub modules() {
- map { category2modules($_) } split(' ', $images_cat);
+ my @nls_modules = ('nls_cp437', 'nls_iso8859_1');
+ @nls_modules, map { category2modules($_) } split(' ', $images_cat);
}
sub remove_unneeded_modules {
@@ -73,8 +74,6 @@ sub filter_modules_dep {
my ($module, @deps) = map { m!.*/(.*)\.k?o(\.gz)$! && $1 } $f, split(' ', $d);
if (member($module, 'plip', 'ppa', 'imm')) {
@deps = map { $_ eq 'parport' ? 'parport_pc' : $_ } @deps;
- } elsif ($module eq 'vfat') {
- push @deps, 'nls_cp437', 'nls_iso8859-1';
}
join(' ', "$module:", @deps);
} @l;
diff --git a/mdk-stage1/mount.c b/mdk-stage1/mount.c
index 41fbb99f2..4967a2a6b 100644
--- a/mdk-stage1/mount.c
+++ b/mdk-stage1/mount.c
@@ -193,6 +193,8 @@ int my_mount(char *dev, char *location, char *fs, int force_rw)
#ifndef DISABLE_MEDIAS
if (!strcmp(fs, "vfat")) {
+ my_insmod("nls_cp437", ANY_DRIVER_TYPE, NULL, 1);
+ my_insmod("nls_iso8859_1", ANY_DRIVER_TYPE, NULL, 1);
my_insmod("vfat", ANY_DRIVER_TYPE, NULL, 1);
opts = "check=relaxed";
}
diff --git a/perl-install/modules.pm b/perl-install/modules.pm
index 7be63f2c8..d6e9e10fb 100644
--- a/perl-install/modules.pm
+++ b/perl-install/modules.pm
@@ -90,6 +90,7 @@ sub load_with_options {
my ($l, $h_options) = @_;
my @l = map {
+ if_($_ eq 'vfat', 'nls_cp437', 'nls_iso8859_1'),
dependencies_closure(cond_mapping_24_26($_));
} @$l;