[HTC Pico (Explorer)] kirmaniarslan:
#THIS GUIDE IS ONLY FOR ADVANCED USERS, WHO KNOW HOW TO COMPILE AND MAKE MODIFICATIONS TO KERNEL AND MODIFYING VARIOUS PARAMETERS IN RAMDISK IN THE RAMDISK LEVEL #

Hey Folks this guide will tell you how to add pll2 Oc by cute_prince for Dual booting On Both Primary and Secondary.

YOU MUST USE ATLEAST CLASS 6 OR ABOVE SDCARD WITH MINIMUM 8GB CAPACITY

First you need 3 EXT4 partitions on SD-card, using Minitool partition wizard :

Partition Order :

Around 700 MB - SD-EXT / SD-SYSTEM (ext4 format)

Note : For Roms Like Sense 4.1 , Sense 4 lite , and Miui 5 which supports Sd-EXT Should Make 2 Gb SD-EXT

Around 1 GB (or can be less) - SD-DATA (ext4 format),

Around 1 GB (can be less) SD-CACHE (ext4 format)

All partitions should be Primary

Now making kernel level Changes :

------------------------------------------------

Step 1- open the defconfig of your kernel source and make this change in it

Enable LBDAF (for multiple partitions to work)

CONFIG_LBDAF=y

Now compile the kernel.

For Primary Rom :

---------------------------

Ramdisk level changes:

Step 2- Now edit Init.rc in a kernel :

# System Partition

mount yaffs2 mtd@system /system
mount yaffs2 mtd@system /system rw remount

# For Sense 4.1 or Sense 4 lite or any rom which Support SD-EXT

[COLOR="RoyalBlue"]# Mount SD-EXT
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
mount ext4 /dev/block/mmcblk0p2 /sd-ext nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

# For /data :

find this line :

mount yaffs2 mtd@userdata /data nosuid nodev

Now replace it with :

[COLOR="RoyalBlue"]# Mount SD-DATA
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
mount ext4 /dev/block/mmcblk0p3 /data nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

# For /Cache

Find this line :

mount yaffs2 mtd@cache /cache nosuid nodev

Replace it with :

[COLOR="RoyalBlue"]# Mount SD-CACHE
wait /dev/block/mmcblk0p4
wait /dev/block/mmcblk0p4
wait /dev/block/mmcblk0p4
wait /dev/block/mmcblk0p4
mount ext4 /dev/block/mmcblk0p4 /cache nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

That's it now pack the ramdisk with the kernel you made earlier.

For Secondary Rom :

-----------------------------

Ramdisk level changes:

All modifications are performed on init.rc file.

Step 1- Search for this line :

mount yaffs2 mtd@system /system
mount yaffs2 mtd@system /system ro remount

# For System

Replace it with this :

[COLOR="Navy"]# Mount SD-SYSTEM
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
wait /dev/block/mmcblk0p2
mount ext4 /dev/block/mmcblk0p2 /system
mount ext4 /dev/block/mmcblk0p2 /system ro remount[/COLOR]

Step 2 - find this line :

mount yaffs2 mtd@userdata /data nosuid nodev

# For /Data :

Now replace it with :

[COLOR="navy"]# Mount SD-DATA
wait /dev/block/mmcblk0p4
wait /dev/block/mmcblk0p4
wait /dev/block/mmcblk0p4
wait /dev/block/mmcblk0p4
mount ext4 /dev/block/mmcblk0p4 /data nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

# For Cache :

Step 3- Find this line :

mount yaffs2 mtd@cache /cache nosuid nodev

Replace it with :

[COLOR="navy"]# Mount SD-CACHE
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
wait /dev/block/mmcblk0p3
mount ext4 /dev/block/mmcblk0p3 /cache nosuid nodev noatime nodiratime barrier=0 data=ordered commit=15 noauto_da_alloc nouser_xattr errors=continue[/COLOR]

That's it now pack the ramdisk with the kernel you made earlier

Now the Updater-script changes

Step 1- one the updater-script of the ROM find these lines :

format("yaffs2", "MTD", "system", "0", "/system");
mount("yaffs2", "MTD", "system", "/system");
package_extract_dir("system", "/system");

Replace them with these:

[COLOR="navy"]run_program("/sbin/busybox", "mount", "-t", "auto", "/dev/block/mmcblk0p2", "/system");
run_program("/sbin/busybox", "rm", "-rf", "/system/*");
package_extract_dir("system", "/system");[/COLOR]

That's it you've Successfully added support for pll2 Oc on both Primary and Secondary Rom ..!!

NOTE : THIS MAY WORK OR MAY NOT WORK I AM NOT RESPONSIBLE FOR ANY DAMAGE

Hitting Thanks Will Take 1 Sec Of Your Life