Petitboot: Difference between revisions
No edit summary |
No edit summary |
||
Line 39: | Line 39: | ||
# clone my ps3-jupiter fork on github | # clone my ps3-jupiter fork on github | ||
# enable base system -> wireless-tools, kernel modules-> wireless drivers -> kmod-ps3-jupiter, and Network -> wpa-supplicant(if needed see WPA below) as builtin (*) in menuconfig | # enable base system -> wireless-tools, kernel modules-> wireless drivers -> kmod-ps3-jupiter, and Network -> wpa-supplicant(if needed see WPA below) as builtin (*) in menuconfig | ||
# enable wireless-extensions as builtin (*) in kernel_menuconfig | # enable networking support->wireless -> wireless-extensions as builtin (*) in kernel_menuconfig (you should highlight wireless to make all the other options appear) | ||
# apply kexec script patch (http://pastie.org/2627401) | |||
(If you choose (M) it will be compiled but not included in the dtbImage. Useful for debugging a module that hangs the kernel :D) | (If you choose (M) it will be compiled but not included in the dtbImage. Useful for debugging a module that hangs the kernel :D) | ||
Line 48: | Line 49: | ||
$ make menuconfig | $ make menuconfig | ||
$ make kernel_menuconfig | $ make kernel_menuconfig | ||
$ cd target/linux/ps3/petitboot/base-files/etc/init.d | |||
$ nano kexec.patch | |||
$ patch < kexec.patch | |||
===WPA=== | ===WPA=== | ||
Line 79: | Line 83: | ||
<pre>At this moment, the officiel GIT server is down : | <pre>At this moment, the officiel GIT server is down : | ||
$ git clone git:// | $ git clone git://foxbrew.org/ps3linux/petitboot/openwrt.git | ||
$ git clone git://foxbrew.org/ps3linux/petitboot/openwrt_packages.git | |||
$ git clone git:// | |||
$ cd openwrt/package | $ cd openwrt/package |
Revision as of 06:24, 3 October 2011
Crossreference: gitbrew.org::Petitboot
Petitboot
Setup Buildroot
First thing we need to do is setup our buildroot. Most of this is ripped from how-to's around the nets.
- Install Dependencies:
$ sudo apt-get install quilt build-essential subversion libncurses5-dev zlib1g-dev gawk flex
- Clone Gits:
$ mkdir petitboot $ cd petitboot $ git clone git://foxbrew.org/ps3linux/petitboot/openwrt.git $ git clone git://foxbrew.org/ps3linux/petitboot/openwrt_packages.git
- Link packages:
packages to link are in the file ps3_petitboot_howto
- Copy the configuration:
$ cp ps3_petitboot_config .config
- Build:
The first time you build, a cross-compiling toolchain will be downloaded and built. This takes a very long time. Subsequent builds are much quicker (~10 minutes).$ make V=99
EXTRAS
WIFI(SLIMS)
you can use / to search in menuconfig (thanks jevin)
- cd into package folder
- clone my ps3-jupiter fork on github
- enable base system -> wireless-tools, kernel modules-> wireless drivers -> kmod-ps3-jupiter, and Network -> wpa-supplicant(if needed see WPA below) as builtin (*) in menuconfig
- enable networking support->wireless -> wireless-extensions as builtin (*) in kernel_menuconfig (you should highlight wireless to make all the other options appear)
- apply kexec script patch (http://pastie.org/2627401)
(If you choose (M) it will be compiled but not included in the dtbImage. Useful for debugging a module that hangs the kernel :D)
$ cd package $ git clone git://github.com/DirtyJerz/ps3-jupiter.git $ cd .. $ make menuconfig $ make kernel_menuconfig $ cd target/linux/ps3/petitboot/base-files/etc/init.d $ nano kexec.patch $ patch < kexec.patch
WPA
If you use WPA2 as I do, you can apply these patchs to package/base-files to enable a the generation of a wpa_supplicant.conf file. It will also add 2 lines to rc.local to automatically connect to your router on boot.
Makefile.patch - http://pastie.org/2624949 image-config.in.patch - http://pastie.org/2624956
put those files in package/base-files and apply the patches with
$ patch < Makefile.patch $ patch < image-config.in.patch
you can now enter your SSID and wpa2 PSK in menuconfig and wpa_supplicant.conf will be added to /etc in petitboot.
Compiling petitboot (graf's method)
- I use petitboot to install and boot Linux from internal HDD of my PS3.
- With petitboot, you will be able to install/boot a Linux kernel from USB, HDD, BD or network.
- Compiling petitboot takes a very long time ( actually, it take a long time during the very first compilation, because it compile the powerpc64 toolchain too, but after that, is you re-launch another compilation, it's "fast" )
- On my Arch Linux x86 it doesn't build without patches
- I created a new openwrt git repository which contains my patches and PS3 NOR and VFLASH block device drivers
At this moment, the officiel GIT server is down : $ git clone git://foxbrew.org/ps3linux/petitboot/openwrt.git $ git clone git://foxbrew.org/ps3linux/petitboot/openwrt_packages.git $ cd openwrt/package $ ln -s ../../openwrt_packages/libs/jpeg jpeg $ ln -s ../../openwrt_packages/libs/libpng libpng $ ln -s ../../openwrt_packages/libs/libtwin libtwin $ ln -s ../../openwrt_packages/utils/ps3-utils ps3-utils $ ln -s ../../openwrt_packages/utils/petitboot petitboot $ ln -s ../../openwrt_packages/utils/bzip2 bzip2 $ ln -s ../../openwrt_packages/utils/sed sed $ ln -s ../../openwrt_packages/utils/tar tar $ ln -s ../../openwrt_packages/utils/less less $ ln -s ../../openwrt_packages/net/dhcpcd dhcpcd $ ln -s ../../openwrt_packages/net/wget wget $ ln -s ../../openwrt_packages/utils/coreutils coreutils # link here more packages if you want to $ ln -sf ../../openwrt_packages/utils/bc bc $ ln -sf ../../openwrt_packages/utils/sg3-utils sg3-utils $ ln -sf ../../openwrt_packages/utils/cifsmount cifsmount $ ln -sf ../../openwrt_packages/net/nmap nmap $ ln -sf ../../openwrt_packages/net/ncftp ncftp $ ln -sf ../../openwrt_packages/mail/mutt mutt $ ln -sf ../../openwrt_packages/devel/make make $ ln -sf ../../openwrt_packages/devel/patch patch $ ln -sf ../../openwrt_packages/libs/db47 db47 $ ln -sf ../../openwrt_packages/libs/gdbm gdbm $ ln -sf ../../openwrt_packages/libs/libxml2 libxml2 $ cd .. $ cp ps3_petitboot_config_minimal .config $ make menuconfig $ make kernel_menuconfig $ make V=99
Source: graf_chokolo @ http://ps3wiki.lan.st/index.php/Petitboot