s390: specify offset and size of the initrd for booting from CD

The old setup worked fine with an ext2 initrd but fails with an initramfs,
either because autodetection is different for initramfs or because of kernel
changes (I suspect the first).
This means that booting s390 from CD has not worked since sometime during the
Etch release cycle, even though support for booting from CD was only added
early in that cycle - ouch.

For booting with an initramfs initrd we apparently need to specify its
offset and size at specific memory locations.

Change is based on SuSE's CD boot. Many thanks to Adam Thornton, Mark Post
(of Novell) and Bastian Blank for providing the pointers to the missing bits.

This fixes booting from CD using the d390.ins file; tested in Hercules for
both Lenny (31-bit kernel) and Squeeze (64-bit kernel).
Booting from CD using the d390.tdf file may still be broken (if possible at
all) as I have no idea how to test that.
This commit is contained in:
Frans Pop 2009-10-11 18:12:06 +00:00
parent fbc97b97c6
commit d961fb7e0e
7 changed files with 21 additions and 0 deletions

View File

@ -1,4 +1,6 @@
* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server)
linux_vm 0x00000000
root.off 0x0001040c
root.siz 0x00010414
parmfile 0x00010480
root.bin 0x00800000

View File

@ -1,5 +1,7 @@
* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server with OCO-Modules)
linux_vm 0x00000000
root.off 0x0001040c
root.siz 0x00010414
parmfile 0x00010480
root.bin 0x00800000
oco.bin 0x00c00000

View File

@ -1,4 +1,6 @@
* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server)
linux_vm 0x00000000
root.off 0x0001040c
root.siz 0x00010414
parmfile 0x00010480
root.bin 0x00800000

View File

@ -1,5 +1,7 @@
* Debian GNU/Linux for S/390 (boot from CD-ROM or FTP-Server with OCO-Modules)
linux_vm 0x00000000
root.off 0x0001040c
root.siz 0x00010414
parmfile 0x00010480
root.bin 0x00800000
oco.bin 0x00c00000

5
debian/changelog vendored
View File

@ -41,6 +41,11 @@ debian-cd (3.1.3) UNRELEASED; urgency=low
* Fix link in README.html.in for lenny, and update squeeze to match.
Closes: #542191
[ Frans Pop ]
* s390: Add boot files specifying offset and size of the initrd for booting
from CD. Change is based on SuSE's CD boot. Many thanks to Adam Thornton,
Mark Post and Bastian Blank for providing the pointers to the missing bits.
-- Frans Pop <fjp@debian.org> Sun, 23 Aug 2009 08:59:25 +0200
debian-cd (3.1.2) unstable; urgency=low

View File

@ -87,6 +87,10 @@ done
# - d390oco.tdf : same, using object-code-only-modules-ramdisk (example)
cp $BASEDIR/data/$CODENAME/s390/d390* "$imagedir/"
# Create the files specifying offset and size of the initrd
perl -e "print pack('N', 0x800000)" >"$imagedir/root.off"
perl -e "print pack('N', -s '$imagedir/root.bin')" >"$imagedir/root.siz"
# Copy the README file
cp $BASEDIR/data/$CODENAME/s390/README.boot "boot$N/"

View File

@ -87,6 +87,10 @@ done
# - d390oco.tdf : same, using object-code-only-modules-ramdisk (example)
cp $BASEDIR/data/$CODENAME/s390/d390* "$imagedir/"
# Create the files specifying offset and size of the initrd
perl -e "print pack('N', 0x800000)" >"$imagedir/root.off"
perl -e "print pack('N', -s '$imagedir/root.bin')" >"$imagedir/root.siz"
# Copy the README file
cp $BASEDIR/data/$CODENAME/s390/README.boot "boot$N/"