Background
I am not new to compiling kernels. I actually consider it quite basic. I have done it for many years on intel-based processors, an Apple iBook, and for my PS3 when using Sony's own OtherOS feature.Now with OtherOS++, things seem different and a whole lot more difficult. I always boot into a black screen with no network access. Here are the 2012-2013 chronicles.
Things that work
Here are the things that do work:- Pre-compiled kernels downloaded from ps3devwiki and unpacked
- Adding modules to the ps3devwiki kernel by replicating the original compiler revealed by cat /proc/version
- Booting the Red Ribbon live cd
- Booting the kha0S live cd
- My old pre-compiled monolithic kernel from 2008 - partially works
Things that don't work
Here are things that don't work:- Downloading and compiling the stock kernel from kernel.org
- The graf_chokolo kernel is no longer available for download
- Brewology's link for the graf_choloko 2.6 kernel appears to be set up for x86-64
- Copying the kernel and modules from the Red Ribbon livecd
- Cross compiling the stock kernel using the pdaXrom-ng toolchain
Attempted compilation steps
These have all been attempted on DebianBuilding the stock kernel on PS3
make mrpropermake ps3-defconfig
make menuconfig
make
make modules
su
make install # (also generates and installs dtbImage.ps3 and System.map),
make modules_install
make headers_install
Cross-compiling the stock or ps3-linux-3.9-rc5.tar.gz kernel on x86-64
export ARCH=powerpc export CONCURRENCY_LEVEL=4
make-kpkg --arch powerpc --cross-compile /opt/powerpc-ps3-linux/toolchain/bin/powerpc-ps3-linux- --rootcmd fakeroot --initrd --append-to-version -nabster --revision 20130504 kernel_image kernel_source kernel_headers
...and then install the resulting source, header and image debs on the PS3
Upcoming adventures in the PS3 kernel compilation saga
- Carry on trying kernels from http://git.kernel.org/cgit/linux/kernel/git/geoff/ps3-linux.git
- Get debian's update-initramfs
- Backup the root filesystem and overwrite with Red Ribbon
- Compile the kernel from a live cd environment e.g. pdaXrom
I've tried to compile the stock kernel on the ps3 on your page (the 3.9 and when i do "make install" i got the error "no rule to make dbtImage.ps3". Can you help me to have a kernel in my debian installation ? ;)
ReplyDeleteYou could try make ps3-defconfig if you haven't already. If not, then I am not sure how to stop this error. My attempt is not successful even when I don't get the error which you described, because it just boots into a black screen.
DeleteYou write "does not work": "Copying the kernel and modules from the Red Ribbon livecd"
ReplyDeleteAt least for me that worked: https://www.youtube.com/watch?v=huEkB_PkFHE
I so far have to agree all the other compile attempts and combinations fail for me, too.
Really a pity that people can not release and document the sources, would have been so easy to just grab the red ribbon collected patches. But their kernel source patch set is nowhere to be found, ... :-/
I compiled 4.18 from Geoff successfully (without any patches) on my PS3 with Debian Jessie/Red Ribbon Linux. I chose the .config from the old kernel.
ReplyDeleteMy machine does boot actually and shows many pinguins.
Unfortunately right after that I get the following output:
Loading, please wait...
error: unexpectedly disconnected from boot status daemon
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
Missing modules (cat /proc/modules: ls /dev)
ALERT! /dev/disk/by-uuid/[my hdd uuid] does not exist. Dropping to a shell!
modprobe: can't load module serio (kernel/drivers/input/serio/serio.ko): unknown symbol in module, or unknown parameter
modprobe: module ehci-pci not found in modules.dep
modprobe: module ehci-orion not found in modules.dep
modprobe: can't load module usb-common (kernel/drivers/usb/usb-common.ko): unknown symbol in module, or unknown parameter
modprobe: module uhci-hcd not found in modules.dep
Busybox v1.22.1
/bin/sh can't access tty: job control turned off
(initramfs)
That's quite a lot but to me the following happened:
1. it can't find my HDD
2. it can't load some modules
3. it can't find a shell at the end
Question: is my work trash or is it possible to get it to work?
As I chatted with Geoff recently he mentioned all kernels above 4.17 should boot on PS3 FAT models with OFW 3.15. Which is good news but as you know already "Red Ribbon" uses OtherOS++. Anyone got the kernel patches from back in the day and send me those, please? Could try another compile run with patched sources then.
Thanks in advance and hope to hear from you soon! Keep on! :-)