Playstation 2 RTE Bootloader HOW-TO

Gray Carper

Director of Technology
xRhino, Inc.

Copyright Notice

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being Copyright, with no Front-Cover Texts and with no Back-Cover Texts.

A copy of the GNU Free Documentation License is available on the World Wide Web at http://www.gnu.org/copyleft/fdl.html. You can also obtain it by writing to the


Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston
MA
02111-1307
USA

Revision History
Revision 1.0May 29th, 2002gc
Initial version.
Revision 1.1June 3rd, 2002ms
Converted entire document to docbook format and added a section on the p2lboot.opt file.
Revision 1.2June 14th, 2002gc
p2lboot.opt (the display and prevent sections) and p2lboot.cnf (the initrd_image and sbios_version sections) information has been updated.

Abstract

This HOW-TO describes the different bootloader configuration options available to Sony Playstation 2 Linux users. This document is intended to provide information on configuration and now the bootloading process, which remains a proprietary and closed process.


Table of Contents

The boot configuration file - p2lboot.cnf
The PS2RTE bootloader options file - p2lboot.opt
Other files

The boot configuration file - p2lboot.cnf

A typical p2lboot.cnf file may look something like this:

    "Linux" vmlinux "" 203 /dev/hda1 "crtmode=ntsc3,60" PS2 Linux
    "Linux - initrd" vmlinux  initrdgz.img   203 /dev/hda1 "crtmode=ntsc3,60" PS2 Linux with bootstrapping initrd
    "Linux - single user"   vmlinux "" 203 /dev/hda1 "crtmode=ntsc3,60 single" PS2 Linux in single user mode
    "Linux - emergency"    vmlinux "" 203 /dev/hda1 "crtmode=ntsc3,60 emergency" PS2 Linux in recovery mode
   

The entries (which are limited to 52 within a single p2lboot.cnf file), have a very specific format:

    menu_display_name kernel_image initrd_image sbios_version root_device kernel_command_line boot_description
  

Configuration file options

menu_display_name
Specifies the text to use as a menu item in the bootable configurations list. This should be less than 12 characters in length and may contain spaces.
kernel_image
The name of the file on the memory card that is the bootable kernel image.
initrd_image
If you are using an initial ramdisk, the name of the ramdisk image should be specified.

Warning

As of the 2.2.x series kernels, once the initial ramdisk image is loaded into memory, it is never freed. Therefore, if you have a compressed image of 5MB and it uncompresses to 10MB, you will only have 18MB available to you in Linux (32MB - 10MB - 5MB = 18MB).
sbios_version
It appears that this is the SBIOS version to use for Linux kernel IOP interaction. More testing must be done for verification, though. The typical value is "203".
root_device
The device node that specifies the root filesystem. This works much like most Linux distributions and is passed in as a kernel command line option.
kernel_command_line
If you want to pass kernel options to configure the kernel during boot, you can place them here. Options are in the key=value pair form common to the Linux kernel.
boot_description
A more verbose bootable configuration description than the menu_display_name allows can be placed as the last section of each line.

The PS2RTE bootloader options file - p2lboot.opt

A typical p2lboot.opt file may look something like this:


    timeout=
    display=ntsc
    prevent=Linux%mc0:/BWLINUX/vmlinux%
   

timeout
The timeout value gives the number of seconds to wait before booting the option that is described by the prevent field.
display
The display signal format. This is used to initialize the bootloader screen and, via the crtmode kernel parameter, the Linux console. Possible values are vga, ntsc, and pal.
prevent
The default boot option. The first part of the '%' separated value is the menu_display_name in the p2lboot.cnf file followed by the absolute path to the kernel_image.

Other files

There are usually two other files that are kept on the memory card along with the bootloader configuration files; icon.sys and penguin.ico The format and purpose of both files are covered by Sony Non-Disclosure and thus cannot be discussed.