[Cbe-oss-dev] A simple PS3 question...

Durga Choudhury dpchoudh at gmail.com
Thu Oct 14 07:23:22 EST 2010


Hi Jim

Thanks for the response. Yes, I did run a 'make ps3-defconfig' before
running a 'make'; otherwise the kernel does not even build. More
specifically, here are the steps I took:

1. make ps3-defconfig

2. make menuconfig ---> Made some minor changes like turning on PREEMPT
flag, exporting the kernel config via /proc/config.gz etc. Nothing I did
here should generate an unbootable kernel; but if there are gotcha's here,
please let me know because this is the first time I am trying to build a
kernel for the PS3 and it is not going very well as you can see.

3. make -j 4 // To take advantage of the 2 PPE cores.

4. sudo make modules_install

5. sudo make install

These are exactly the steps I take to build and install a kernel on a PC
running Fedora Core x.

The 'make install' step placed a vmlinux (i.e. uncompressed image) in the
/boot directory and did not change the yaboot.conf file. Notice that the
Fedora kernels for PS3 are compressed images and they do change the
/boot/yaboot.conf when installed by the yum updater and on a PC the 'make
install' step changes /boot/grub/grub.conf file automatically to add the new
kernel as a boot option.

One question that I have is: why do the steps 1-5 above, when executed on a
PC, generates a compressed image whereas on a PS3 generates an uncompressed
image?

And the ultimate question is: How do I build a stock kernel for a PS3 that
is already running a Fedora-11 installation? The kernel I am trying to build
is the latest stable release (2.6.35, I believe)

Thanks and regards
Durga

On Wed, Oct 13, 2010 at 3:52 PM, Jim Paris <jim at jtan.com> wrote:

> Durga Choudhury wrote:
> > Hi
> >
> > I have a simple question I am really hoping you will be able to answer.
> >
> > I have Fedora 12 installed on my PS3. This installs the yaboot
> > bootloader and the stock kernel, of course. The yaboot bootloader
> > expects a compressed kernel, i.e. a vmlinuz file.
> >
> > However, (native) compiling the stock kernel on the PS3 creates an
> > uncompressed kernel, i.e. a vmlinux file. From a brief web search it
> > looks like this is the correct file format on PPC64 architecture, but
> > then yaboot refuses to boot it. Even the 'make install' process does
> > not automatically insert the new entry in /boot/yaboot/yaboot.conf, as
> > it does in the PC architecture by modifying /boot/grub.conf. I tried
> > manually editing the yaboot.conf file to make an entry for the new
> > kernel (and the associated Ramdisk etc), but the bootloader simply
> > hangs while trying to boot the uncompressed kernel.
> >
> > My simple question is: how do I compile the stock kernel that I can
> > boot with a Fedora installed yaboot boot loader, or, generate a
> > vmlinuz compressed kernel file?
>
> The PS3 doesn't use yaboot.  The PS3 uses a Linux-based bootloader
> like kboot or petitboot, which are capable of reading a yaboot.conf
> for compatibility with existing installers.
>
> Generally a bootloader doesn't care if the format is compressed or
> not.  Code at the beginning of the kernel image handles the
> decompression, independent of the bootloader.  Specifically, kexec
> should be able to handle vmlinux or bzImage just fine.
>
> If your kernel is hanging during boot, it's most likely to be a
> configuration problem.  Did you start with "make ps3_defconfig"?
>
> -jim
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/cbe-oss-dev/attachments/20101013/40b906eb/attachment.html>


More information about the cbe-oss-dev mailing list