From 52d7a2de5518ccb7eef3225383bad2711a3695bb Mon Sep 17 00:00:00 2001 From: Stew Benedict Date: Tue, 20 Mar 2001 21:36:09 +0000 Subject: make_boot_img: add routine for - PPC any.pm: double "Append" entry in expert mode for yaboot.conf - PPC install_steps_interactive: setup dmasound - PPC modules.pm: load Mac hardware modules - PPC --- make_boot_img | 54 +++++++++++++++++++++++++++++-- perl-install/any.pm | 2 +- perl-install/install_steps_interactive.pm | 2 +- perl-install/modules.pm | 19 ++++++++++- 4 files changed, 71 insertions(+), 6 deletions(-) diff --git a/make_boot_img b/make_boot_img index 52a432e19..0900801b4 100755 --- a/make_boot_img +++ b/make_boot_img @@ -320,9 +320,57 @@ image=/vmlinux$I.gz sub boot_img_ppc { my ($mnt, $img) = @_; - # Here's a quick hack... just to give the script somethign to do. :) - # We do not yet have a set way of making bootable images. - _ "cp $type.rdz $img"; + my $dir = "/export"; + my $boot = "boot"; #- non-absolute pathname only! + _ "mkdir -p $dir/$boot"; + _ "cp -f vmlinux $dir/$boot/vmlinux"; + _ "cp -f all.rdz $dir/boot/all.gz"; + _ "cp -f tools/ppc/yaboot $dir/boot/yaboot"; + + output("$dir/$boot/yaboot.conf", " +init-message = \"\\nWelcome to Mandrake Linux PPC!\\nHit for boot options.\\n\\n\" +timeout = 150 +default = install-novideo + +image = cd:,\\\\\\\\vmlinux + label = install-novideo + initrd = cd:,\\\\\\\\all.gz + initrd-size = 32000 + append = \" video=ofonly\" + +image = cd:,\\\\\\\\vmlinux + label = install-atyfb + initrd = cd:,\\\\\\\\all.gz + initrd-size = 32000 + append = \" video=atyfb:vmode:17\" + +image = cd:,\\\\\\\\vmlinux + label = install-aty128fb + initrd = cd:,\\\\\\\\all.gz + initrd-size = 32000 + append = \" video=aty128fb:vmode:17\" + +image = cd:,\\\\\\\\vmlinux + label = install-text + initrd = cd:,\\\\\\\\all.gz + initrd-size = 32000 + append = \" text\" + +image = cd:,\\\\\\\\vmlinux + label = rescue + initrd = cd:,\\\\\\\\all.gz + initrd-size = 32000 + append = \" rescue\" +"); + #- seem to need 2 yaboot.conf, one in the root, and one in boot + _ "cp -f $dir/boot/yaboot.conf $dir/yaboot.conf"; + + output("$dir/$boot/README", " +To Build a Bootable CD-ROM, do: +cd /tools/ppc +./mkINSTALLCD /export ppc-cd.img +"); + } sub output { diff --git a/perl-install/any.pm b/perl-install/any.pm index 260983fa8..d015e5897 100644 --- a/perl-install/any.pm +++ b/perl-install/any.pm @@ -281,7 +281,7 @@ if (arch() !~ /ppc/) { @l ); if ($e->{type} eq "image") { @l = ({ label => _("Label"), val => \$e->{label} }, - $::expert ? @l[1..4] : @l[1..2], { label => _("Append"), val => \$e->{append} } , + $::expert ? @l[1..4] : (@l[1..2], { label => _("Append"), val => \$e->{append} }) , if_($::expert, { label => _("Initrd-size"), val => \$e->{initrdsize}, list => [ '', '4096', '8192', '16384', '24576' ] }), if_($::expert, $l[5]), { label => _("NoVideo"), val => \$e->{novideo}, type => 'bool' }, diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm index 874099d14..62c1ba7b5 100644 --- a/perl-install/install_steps_interactive.pm +++ b/perl-install/install_steps_interactive.pm @@ -789,7 +789,7 @@ sub summary { } grep { $_->{driver} eq 'hisax' } detect_devices::probeall()), (map { { label => _("Sound card"), val => $_->{description} } - } modules::get_that_type('sound')), + } arch() !~ /ppc/ ? modules::get_that_type('sound') : modules::load_thiskind('sound')), (map { { label => _("TV card"), val => $_->{description} } } grep { $_->{driver} eq 'bttv' } detect_devices::probeall()), diff --git a/perl-install/modules.pm b/perl-install/modules.pm index a93c79c02..092320cc1 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -84,6 +84,10 @@ arch() =~ /^sparc/ ? ( "de4x5" => "Digital 425,434,435,450,500", "rtl8139" => "RealTek RTL8129/8139", "8139too" => "Realtek RTL-8139", +arch() =~ /ppc/ ? ( + "mace" => "Apple PowerMac Ethernet", + "bmac" => "Apple G3 Ethernet", + "gmac" => "Apple G4/iBook Ethernet") : (), }], [ 'net_raw', { "8390" => "8390", @@ -138,6 +142,9 @@ arch() =~ /^sparc/ ? ( "pci2000" => "Perceptive Solutions PCI-2000", # TODO "qlogicisp" => "Qlogic ISP", "sym53c8xx" => "Symbios 53c8xx", +arch() =~ /ppc/ ? ( + "mesh" => "Apple Internal SCSI", + "mac53c94" => "Apple External SCSI") : (), }], [ 'scsi_raw', { "scsi_mod" => "scsi_mod", @@ -213,6 +220,8 @@ arch() !~ /^sparc/ ? ( "snd-card-trident" => "Silicon Integrated Systems [SiS]|7018 PCI Audio", "snd-card-via686a" => "VIA Technologies|VT82C686 [Apollo Super AC97/Audio]", "snd-card-ymfpci" => "Yamaha Corporation|YMF-740", +) : arch() =~ /ppc/ ? ( + "dmasound" => "Amiga or PowerMac DMA sound", ) : (), }], [ 'pcmcia', { @@ -441,6 +450,10 @@ sub load { add_alias($_, $name) foreach difference2([ detect_devices::getNet() ], \@netdev); } + if ($type eq 'sound' && arch() =~ /ppc/) { + add_alias($type, $name); + } + when_load($name, $type, @options); } sub load_multi { @@ -629,7 +642,11 @@ sub load_thiskind { } get_that_type($type), $type =~ /scsi/ && arch() !~ /sparc/ ? (map { +{ driver => $_, description => $_, try => 1 } } - detect_devices::usbZips() ? "usb-storage" : (), "imm", "ppa") : (); + detect_devices::usbZips() ? "usb-storage" : (), arch() =~ /ppc/ ? ("mesh", "mac53c94",) : ("imm", "ppa",)) : + $type =~ /net/ && arch() =~ /ppc/ ? + (map { +{ driver => $_, description => $_, try => 1 } } ("bmac", "gmac", "pmac",)) : + $type =~ /sound/ && arch() =~ /ppc/ ? + (map { +{ driver => $_, description => $_, try => 1 } } "dmasound") : (); } sub get_that_type { -- cgit v1.2.1