Kernel für PS3 bauen
Wie man einen neuen Kernel für seine PS3 baut, der dann leider nicht funktioniert:
git installieren.
Aktuelle Kernel-Sourcen holen:
Der Kernel soll in 64-Bit gebaut werden. Der gcc von YDL unterstützt dies bereits, der aus dem Gentoo-Satge4-Archiv nicht. Aber das Archiv bringt einen power64-compiler mit, den wir als Cross-Compiler eintragen können. Wir suchen in der Makefile also die Zeile CROSS_COMPILE= und fügen ein powerpc64-unknown-linux-gnu- hinzu.
Grundkonfiguration:
Device Tree Complier installieren:
Den Kernel bauen und installieren:
kboot.conf anpassen:
(Achtung: der Video-Mode sollte natürlich richtig gesetzt werden. 6 bedeutet zB normales PAL 576i)
Und dann bekommen wir beim Booten eine Kernel Panic: Attempted to kill init! Schade, irgendwie... Ich poste das hier trotzdem mal, vielleicht haben ander Leute ja mehr Glück!
git installieren.
- Gentoo: emerge -v git
- YDL: Keine Ahnung!
Aktuelle Kernel-Sourcen holen:
- cd /usr/src
- git clone git://git.kernel.org/pub/scm/linux/kernel/git/geoff/ps3-linux.git ps3-linux
- ln -s ps3-linux linux
- cd linux
Der Kernel soll in 64-Bit gebaut werden. Der gcc von YDL unterstützt dies bereits, der aus dem Gentoo-Satge4-Archiv nicht. Aber das Archiv bringt einen power64-compiler mit, den wir als Cross-Compiler eintragen können. Wir suchen in der Makefile also die Zeile CROSS_COMPILE= und fügen ein powerpc64-unknown-linux-gnu- hinzu.
- joe Makefile
Grundkonfiguration:
- make ps3_defconfig
- make menuconfig (oder xconfig oder was-auch-immer-config)
Device Tree Complier installieren:
- cd ..
- git clone git://www.jdl.com/software/dtc.git dtc
- cd dtc
- make
- cp dtc /usr/local/bin
Den Kernel bauen und installieren:
- cd ../linux
- make && make modules_install
- cp vmlinux /boot/vmlinux-ps3
- cd /boot
- strip vmlinux-ps3
kboot.conf anpassen:
- joe /etc/kboot.conf
eine funktionierende Konfiguration kopieren, umbenennen und anpassen; ungefähr so:
git="/dev/sda1:/vmlinux-ps3 root=/dev/sda2 init=/sbin/init video=ps3fb:mode:6 rhgb"
(Achtung: der Video-Mode sollte natürlich richtig gesetzt werden. 6 bedeutet zB normales PAL 576i)
Und dann bekommen wir beim Booten eine Kernel Panic: Attempted to kill init! Schade, irgendwie... Ich poste das hier trotzdem mal, vielleicht haben ander Leute ja mehr Glück!