Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
PSVita Linux build instructions

0) Solder UART0 pins

  1. Check here for the pinout. You will also need a 1.8V level shifter.

1) Install an ARMv7 cross-compiler

  1. Go to https://toolchains.bootlin.com
  2. Select arch: armv7-eabihf
  3. Select libc: glibc
  4. Download bleeding-edge
  5. Uncompress it (for example to /opt)
  6. Add the bin/directory of the toolchain to $PATH
    • In my case: export PATH=$PATH:/opt/armv7-eabihf--glibc--bleeding-edge-2018.11-1/bin

2) Build Buildroot

  1. git clone git://git.buildroot.net/buildroot
  2. Download and copy this Buildroot .config to buildroot/.config
  3. cd buildroot && make -j4
  4. This will generate output/images/rootfs.cpio.xz

3) Build Linux

  1. git clone git@github.com:xerpi/linux_vita.git
  2. cd linux && cp ../buildroot/output/images/rootfs.cpio.xz linux/ .
  3. make ARCH=arm vita_defconfig
  4. make ARCH=arm CROSS_COMPILE=arm-linux- -j8
  5. make ARCH=arm CROSS_COMPILE=arm-linux- vita.dtb
  6. This will generate arch/arm/boot/zImage and arch/arm/boot/dts/vita.dtb

4) Build vita-linux-loader

  1. Install vitasdk
  2. git clone git@github.com:xerpi/vita-linux-loader.git
  3. cd vita-linux-loader && make
  4. This will generate linuxloader.skprx

5) Build and install the Plugin Loader VPK

  1. git clone git@bitbucket.org:xerpi/vita_plugin_loader.git
  2. cd vita_plugin_loader && mkdir build && cd build && cmake .. && make
  3. Install plugin_loader.vpk

6) Boot Linux

  1. Copy linuxloader.skprx to ux0:data/tai/kplugin.skprx
    • Configurable in vita_plugin_loader/main.c:13
  2. Copy linux/arch/arm/boot/zImage to ux0:/linux/zImage
  3. Copy linux/arch/arm/boot/dts/vita.dtb to ux0:/linux/vita.dtb
  4. Launch the Plugin Loader VPK

More information

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.