diff --git a/xCAT-server/lib/xcat/plugins/sles.pm b/xCAT-server/lib/xcat/plugins/sles.pm index 3fb45e46f..ce22e536c 100755 --- a/xCAT-server/lib/xcat/plugins/sles.pm +++ b/xCAT-server/lib/xcat/plugins/sles.pm @@ -1010,6 +1010,11 @@ sub mkinstall and -r "$pkgdir/1/boot/i386/loader/linux" and -r "$pkgdir/1/boot/i386/loader/initrd" ) + or ( + $arch eq "ppc64le" + and -r "$pkgdir/1/boot/ppc64le/linux" + and -r "$pkgdir/1/boot/ppc64le/initrd" + ) or ($arch =~ /ppc/ and -r "$pkgdir/1/suseboot/inst64") ) { @@ -1050,6 +1055,12 @@ sub mkinstall copy("$pkgdir/1/boot/i386/loader/initrd", "$tftppath"); @dd_drivers = &insert_dd($callback, $os, $arch, "$tftppath/initrd", "$tftppath/linux", $driverupdatesrc, $netdrivers, $osupdir, $ignorekernelchk); } + } elsif ($arch eq "ppc64le") { + unless ($noupdateinitrd) { + copy("$pkgdir/1/boot/$arch/linux", "$tftppath"); + copy("$pkgdir/1/boot/$arch/initrd", "$tftppath"); + @dd_drivers = &insert_dd($callback, $os, $arch, "$tftppath/initrd", "$tftppath/linux", $driverupdatesrc, $netdrivers, $osupdir, $ignorekernelchk); + } } elsif ($arch =~ /ppc/) { @@ -1231,7 +1242,7 @@ sub mkinstall my $kernelpath; my $initrdpath; - if ($arch =~ /x86/) + if ($arch =~ /x86/ or $arch eq "ppc64le") { $kernelpath = "$rtftppath/linux"; $initrdpath = "$rtftppath/initrd"; @@ -1732,6 +1743,9 @@ sub copycd { $darch = "x86"; } + elsif ($darch and ($darch eq "ppc64le" or $darch eq "ppc64el")) { + $darch = "ppc64le"; + } elsif ($darch and $darch =~ /ppc/) { $darch = "ppc64";