Package: src:debian-installer
Tags: patch
Hi,
Would you have any news/comments about the patch attached in this bug?
We would like to switch the kernel on ppc64el to vmlinuz starting with
3.16 (introduction of zImage support for 64el).
I am attaching an interdiff for that, on top of the previous patch,
and a full debdiff for your convenience.
I could successfully build d-i on ppc64el w/ those changes (plus adding
a build-dep on grub-ieee1275-bin, apparently missed, for grub-mknetdir),
on the debdiff.
$ tar tf debian-installer-images_20140802ppc64el1_ppc64el.tar.gz |
fgrep vmlinu
./installer-ppc64el/20140802ppc64el1/images/cdrom/vmlinuz
./installer-ppc64el/20140802ppc64el1/images/netboot/debian-installer/ppc64el/vmlinuz
The respective bug on the linux source package has been filled on
Debian #759389 (and Ubuntu LP #1358920).
Thanks!
--
Mauricio Faria de Oliveira
IBM Linux Technology Center
diff -u b/build/config/ppc64el.cfg b/build/config/ppc64el.cfg
--- b/build/config/ppc64el.cfg
+++ b/build/config/ppc64el.cfg
@@ -3,10 +3,10 @@
MKLIBS = mklibs-copy
KERNELMAJOR = 2.6
-BASEVERSION = 3.14-1
+BASEVERSION = 3.16-1
KERNELVERSION = $(BASEVERSION)-powerpc64le
KERNEL_FLAVOUR = di
-KERNELNAME = vmlinux
+KERNELNAME = vmlinuz
KERNELIMAGEVERSION = $(KERNELVERSION)
GRUB_CFG_CDROM = boot/ppc64el/grub-cdrom.cfg
@@ -26,11 +26,11 @@
$(TEMP_CD_TREE)/ppc/chrp \
$(TEMP_CD_TREE)/install
- cp $(TEMP_KERNEL) $(TEMP_CD_TREE)/install/vmlinux
+ cp $(TEMP_KERNEL) $(TEMP_CD_TREE)/install/vmlinuz
cp $(TEMP_INITRD) $(TEMP_CD_TREE)/install/initrd.gz
bootvars-subst \
- KERNEL /install/vmlinux \
+ KERNEL /install/vmlinuz \
INITRD /install/initrd.gz \
< $(GRUB_CFG_CDROM) > $(TEMP_CD_TREE)/boot/grub/grub.cfg
@@ -47,7 +47,7 @@
$(TEMP_CD_INFO_DIR)/ppc/chrp
bootvars-subst \
- KERNEL /install/vmlinux \
+ KERNEL /install/vmlinuz \
INITRD /install/initrd.gz \
< $(GRUB_CFG_CDROM) > $(TEMP_CD_INFO_DIR)/boot/grub/grub.cfg
grub-mkimage -O powerpc-ieee1275 -p '(ieee1275/cdrom)/boot/grub' \
@@ -65,7 +65,7 @@
cp $(TEMP_KERNEL) $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)
bootvars-subst \
- KERNEL $(NETBOOT_PATH)/vmlinux \
+ KERNEL $(NETBOOT_PATH)/vmlinuz \
INITRD $(NETBOOT_PATH)/initrd.gz \
< $(GRUB_CFG_NETBOOT) > $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)/grub.cfg
if [ -n "$(SPLASH_PNG)" ]; then \
diff -Nru debian-installer-20140802/build/boot/ppc64el/grub-cdrom.cfg
debian-installer-20140802ppc64el1/build/boot/ppc64el/grub-cdrom.cfg
--- debian-installer-20140802/build/boot/ppc64el/grub-cdrom.cfg 1970-01-01
00:00:00.000000000 +0000
+++ debian-installer-20140802ppc64el1/build/boot/ppc64el/grub-cdrom.cfg
2014-08-26 22:50:39.000000000 +0000
@@ -0,0 +1,11 @@
+set timeout=-1
+
+menuentry "Install" {
+ linux ${KERNEL} -- quiet
+ initrd ${INITRD}
+}
+
+menuentry "Rescue mode" {
+ linux ${KERNEL} rescue/enable=true -- quiet
+ initrd ${INITRD}
+}
diff -Nru debian-installer-20140802/build/config/ppc64el/cdrom.cfg
debian-installer-20140802ppc64el1/build/config/ppc64el/cdrom.cfg
--- debian-installer-20140802/build/config/ppc64el/cdrom.cfg 1970-01-01
00:00:00.000000000 +0000
+++ debian-installer-20140802ppc64el1/build/config/ppc64el/cdrom.cfg
2014-08-26 22:50:39.000000000 +0000
@@ -0,0 +1,8 @@
+MEDIA_TYPE = CD-ROM
+
+TARGET = $(INITRD) $(KERNEL) $(DEBIAN_CD_INFO)
+EXTRANAME = $(MEDIUM)/
+
+MANIFEST-KERNEL = "kernel for use with mkisofs to build a CD"
+MANIFEST-INITRD = "initrd for use with mkisofs to build a CD"
+MANIFEST-DEBIAN_CD_INFO = "mkisofs config files for CD"
diff -Nru debian-installer-20140802/build/config/ppc64el/netboot.cfg
debian-installer-20140802ppc64el1/build/config/ppc64el/netboot.cfg
--- debian-installer-20140802/build/config/ppc64el/netboot.cfg 1970-01-01
00:00:00.000000000 +0000
+++ debian-installer-20140802ppc64el1/build/config/ppc64el/netboot.cfg
2014-08-26 22:50:39.000000000 +0000
@@ -0,0 +1,9 @@
+MEDIA_TYPE = netboot image
+
+NETBOOT_DIR_TARGETS = $(TEMP_INITRD) $(TEMP_KERNEL)
+TARGET = $(NETBOOT_DIR) $(NETBOOT_TAR) $(MINIISO)
+EXTRANAME = $(MEDIUM)/
+
+MANIFEST-NETBOOT_DIR = "boot directory for tftp server"
+MANIFEST-NETBOOT_TAR = "tarball of boot directory"
+MANIFEST-MINIISO = "tiny CD image that boots the netboot installer"
diff -Nru debian-installer-20140802/build/config/ppc64el.cfg
debian-installer-20140802ppc64el1/build/config/ppc64el.cfg
--- debian-installer-20140802/build/config/ppc64el.cfg 1970-01-01
00:00:00.000000000 +0000
+++ debian-installer-20140802ppc64el1/build/config/ppc64el.cfg 2014-08-26
22:57:13.000000000 +0000
@@ -0,0 +1,76 @@
+MEDIUM_SUPPORTED = netboot cdrom
+
+MKLIBS = mklibs-copy
+
+KERNELMAJOR = 2.6
+BASEVERSION = 3.16-1
+KERNELVERSION = $(BASEVERSION)-powerpc64le
+KERNEL_FLAVOUR = di
+KERNELNAME = vmlinuz
+KERNELIMAGEVERSION = $(KERNELVERSION)
+
+GRUB_CFG_CDROM = boot/ppc64el/grub-cdrom.cfg
+GRUB_CFG_NETBOOT=boot/ppc64el/grub-cdrom.cfg
+
+GRUB_MODULES = linux normal
+GRUB_MODULES_CDROM = iso9660
+
+arch_boot_screens:
+arch_tree:
+
+# Miniature CD image using GRUB, with only an initrd, no udebs or debs.
+.PHONY: arch_miniiso
+arch_miniiso: $(TEMP_INITRD) $(TEMP_KERNEL) $(TREE)
+ -rm -f $(TEMP_CD_TREE)/*
+ mkdir -p $(TEMP_CD_TREE)/boot/grub/powerpc-ieee1275 \
+ $(TEMP_CD_TREE)/ppc/chrp \
+ $(TEMP_CD_TREE)/install
+
+ cp $(TEMP_KERNEL) $(TEMP_CD_TREE)/install/vmlinuz
+ cp $(TEMP_INITRD) $(TEMP_CD_TREE)/install/initrd.gz
+
+ bootvars-subst \
+ KERNEL /install/vmlinuz \
+ INITRD /install/initrd.gz \
+ < $(GRUB_CFG_CDROM) > $(TEMP_CD_TREE)/boot/grub/grub.cfg
+
+ cp -p /usr/lib/grub/powerpc-ieee1275/bootinfo.txt \
+ $(TEMP_CD_TREE)/ppc/
+
+ grub-mkrescue --output=$(TEMP_MINIISO) $(TEMP_CD_TREE)
+
+# genisoimage CD info directory, including GRUB and configuration files.
+.PHONY: arch_cd_info_dir
+arch_cd_info_dir:
+ rm -rf $(TEMP_CD_INFO_DIR)
+ mkdir -p $(TEMP_CD_INFO_DIR)/boot/grub/powerpc-ieee1275 \
+ $(TEMP_CD_INFO_DIR)/ppc/chrp
+
+ bootvars-subst \
+ KERNEL /install/vmlinuz \
+ INITRD /install/initrd.gz \
+ < $(GRUB_CFG_CDROM) > $(TEMP_CD_INFO_DIR)/boot/grub/grub.cfg
+ grub-mkimage -O powerpc-ieee1275 -p '(ieee1275/cdrom)/boot/grub' \
+ -o $(TEMP_CD_INFO_DIR)/boot/grub/powerpc.elf \
+ $(GRUB_MODULES) $(GRUB_MODULES_CDROM)
+ cp -p /usr/lib/grub/powerpc-ieee1275/bootinfo.txt \
+ $(TEMP_CD_INFO_DIR)/ppc/
+
+# Netboot files
+.PHONY: arch_netboot_dir
+arch_netboot_dir:
+ -rm -f $(TEMP_NETBOOT_DIR)
+ mkdir -p $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)
+ cp $(TEMP_INITRD) $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)
+ cp $(TEMP_KERNEL) $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)
+
+ bootvars-subst \
+ KERNEL $(NETBOOT_PATH)/vmlinuz \
+ INITRD $(NETBOOT_PATH)/initrd.gz \
+ < $(GRUB_CFG_NETBOOT) > $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)/grub.cfg
+ if [ -n "$(SPLASH_PNG)" ]; then \
+ cp $(SPLASH_PNG)
$(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)/splash.png; \
+ fi
+
+ grub-mknetdir --net-directory=$(TEMP_NETBOOT_DIR) \
+ --subdir=$(NETBOOT_PATH)
diff -Nru debian-installer-20140802/build/pkg-lists/netboot/ppc64el.cfg
debian-installer-20140802ppc64el1/build/pkg-lists/netboot/ppc64el.cfg
--- debian-installer-20140802/build/pkg-lists/netboot/ppc64el.cfg
1970-01-01 00:00:00.000000000 +0000
+++ debian-installer-20140802ppc64el1/build/pkg-lists/netboot/ppc64el.cfg
2014-08-26 22:50:39.000000000 +0000
@@ -0,0 +1,29 @@
+input-modules-${kernel:Version}
+console-setup-pc-ekmap
+nic-modules-${kernel:Version}
+#nic-pcmcia-modules-${kernel:Version}
+#pcmcia-modules-${kernel:Version}
+mountmedia
+media-retriever
+usb-storage-modules-${kernel:Version}
+pcmciautils-udeb
+#fb-modules-${kernel:Version}
+usb-modules-${kernel:Version}
+virtio-modules-${kernel:Version}
+
+console-setup-udeb
+kbd-udeb
+bogl-bterm-udeb
+hw-detect
+ethdetect
+netcfg
+
+# brltty
+brltty-udeb
+serial-modules-${kernel:Version}
+usb-serial-modules-${kernel:Version} ?
+uinput-modules-${kernel:Version} ?
+
+# IBM Power hypervisor modules, only available on powerpc64.
+hypervisor-modules-${kernel:Version} ?
+fancontrol-modules-${kernel:Version} ?
diff -Nru debian-installer-20140802/debian/changelog
debian-installer-20140802ppc64el1/debian/changelog
--- debian-installer-20140802/debian/changelog 2014-08-02 00:59:36.000000000
+0000
+++ debian-installer-20140802ppc64el1/debian/changelog 2014-08-26
22:49:46.000000000 +0000
@@ -1,3 +1,10 @@
+debian-installer (20140802ppc64el1) UNRELEASED; urgency=medium
+
+ * Add ppc64el support; thanks, Frederic Bonnard (Closes: #754093)
+ - Switch to vmlinuz kernel (from vmlinux).
+ - Build-Depend on grub-ieee1275-bin on ppc64el.
+
+ -- Mauricio Faria de Oliveira <mauri...@linux.vnet.ibm.com> Tue, 26 Aug 2014
22:47:23 +0000
+
debian-installer (20140802) unstable; urgency=low
[ Cyril Brulebois ]
diff -Nru debian-installer-20140802/debian/control
debian-installer-20140802ppc64el1/debian/control
--- debian-installer-20140802/debian/control 2014-08-02 00:09:06.000000000
+0000
+++ debian-installer-20140802ppc64el1/debian/control 2014-08-26
23:09:00.000000000 +0000
@@ -164,6 +164,9 @@
# Used for architectures hosted on debian-ports.org
librsvg2-bin [any-amd64 any-i386],
# Used to convert splash SVG to splash PNG during build
+ grub-ieee1275-bin [ppc64el],
+# IEEE1275 bootloader support.
+
Package: debian-installer
Architecture: any