The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Compiling Jolla kernel

From Mer Wiki
(Difference between revisions)
Jump to: navigation, search
(initial overview)
 
(9 intermediate revisions by one user not shown)
Line 2: Line 2:
  
 
==environment setup==
 
==environment setup==
- Setup Mer Platform SDK
+
* Setup Mer [[Platform SDK]]
- Setup sb2 target
+
- add python to sb2 target
+
  
 
==build kernel==
 
==build kernel==
- download kernel source from git or releases.sailfishos.org
+
* download source from [http://releases.sailfishos.org/sources releases.sailfishos.org]
- retrieve kernel config from /proc/config.gz on device
+
* extract tarball
  - use sb2 to build kernel
+
* cd into extracted dir
 +
* sb2 make sbj_defconfig
 +
* sb2 make kernel-adaptation-sbj
 +
 
 +
 
 +
* Script to build flashable boot.img
 +
 
 +
#!/bin/sh
 +
set -e
 +
BOOTIMG=boot.img
 +
  RAMDISKFILE=ramdisk-sailfish.img
 +
# Create ramdisk
 +
echo "Creating dummy ramdisk.."
 +
touch $RAMDISKFILE
 +
gzip -f $RAMDISKFILE
 +
echo "Creating $BOOTIMG.."
 +
KERNEL=arch/arm/boot/zImage
 +
mkbootimg --kernel $KERNEL --ramdisk ${RAMDISKFILE}.gz --cmdline "init=/sbin/preinit root=/dev/mmcblk0p28 rootfstype=btrfs noinitrd androidboot.hardware=qcom user_debug=31 ehci-hcd.park=3 maxcpus=2  ip=192.168.2.15::192.168.2.14:255.255.255.0::rndis0:off zcache" --base 0x80200000 --offset 0x02000000 --pagesize 2048 -o $BOOTIMG
 +
echo "Cleaning up.."
 +
rm $RAMDISKFILE*
 +
exit 0
  
 
==build kernel modules==
 
==build kernel modules==
 +
 +
==install boot.img on jolla phone==
 +
* install [http://wiki.cyanogenmod.org/w/Doc:_fastboot_intro fastboot] on pc
 +
* unlock bootloader from [https://jolla.zendesk.com/hc/en-us/articles/204709607-Jolla-Phone-How-do-I-use-the-Recovery-Mode- recovery mode]
 +
* Fastboot mode (volume down + put USB in)
 +
fastboot flash boot boot.img
 +
 +
* factory reset will save you from a bricked device from a bad kernel flash

Latest revision as of 18:27, 11 November 2015

work in progress...

Contents

[edit] environment setup

[edit] build kernel

  • download source from releases.sailfishos.org
  • extract tarball
  • cd into extracted dir
  • sb2 make sbj_defconfig
  • sb2 make kernel-adaptation-sbj


  • Script to build flashable boot.img
#!/bin/sh
set -e
BOOTIMG=boot.img
RAMDISKFILE=ramdisk-sailfish.img
# Create ramdisk
echo "Creating dummy ramdisk.."
touch $RAMDISKFILE
gzip -f $RAMDISKFILE
echo "Creating $BOOTIMG.."
KERNEL=arch/arm/boot/zImage 
mkbootimg --kernel $KERNEL --ramdisk ${RAMDISKFILE}.gz --cmdline "init=/sbin/preinit root=/dev/mmcblk0p28 rootfstype=btrfs noinitrd androidboot.hardware=qcom user_debug=31 ehci-hcd.park=3 maxcpus=2   ip=192.168.2.15::192.168.2.14:255.255.255.0::rndis0:off zcache" --base 0x80200000 --offset 0x02000000 --pagesize 2048 -o $BOOTIMG
echo "Cleaning up.."
rm $RAMDISKFILE*
exit 0

[edit] build kernel modules

[edit] install boot.img on jolla phone

fastboot flash boot boot.img
  • factory reset will save you from a bricked device from a bad kernel flash
Personal tools