[LG Optimus 3D] dreccon:
As of 28/12/2013, I no longer have this phone. My threads will stay open for all who want to assist others. I've had a great time being a member of the O3D community, so thank you all!

For questions, requests or any other remarks, please don't send me PM, I will not answer. Instead, please post properly in the thread, so that anybody can read and benefit or even assist.

Should I use GB or ICS custom recovery?

A lot of people have been asking which is the right recovery to use with their ROM. There is a lot of misconception in this area. Even the question in the title is wrong cause there's no such thing as a GB or ICS Recovery! So, let's clear things up:

It is important to know that recovery is independent of the Android version you are using. It only depends on the device you have (KitKat which has SELinux activated may need a newer recovery that supports this feature). ICS recoveries are

mistakenly

called that way because they are compatible with the ported SU760 partition layout which happened to be the first ICS for P920. So, to be correct, instead of GB and ICS, we should be calling them P920 and SU760 recoveries respectively.

To be more specific, SU760 (ICS) recoveries look for the Internal SD in partition 16 of the partition table, whereas P920 recoveries look for it in partition 15. This is actually the only difference between the two. All other functions are exactly the same. The problem is that if you use the wrong recovery, it won't be able to read your internal SD, simply because it will expect to find it in the wrong place!

Conclusion:

You use a P920 (GB) recovery no matter if you are running official LG Gingerbread, CM7, official LG ICS (v28b, v30a), CM10, CM10.1 etc. as long as you have a P920 partition table.

You use a SU760 (ICS) recovery only if you have a true Korean O3D, if you are using XBSA ported ICS, or any other ROM on top of that partition layout.

And one more thing: Xbsall's large partition layout is NOT SU760. It is standard P920, just larger!

2nd init recovery:

Now, since I mentioned Xbsall, to make things a little more complicated, I should mention that prerooted Xbsall's ROMs come equipped with Milaq's 2nd init recovery. This is "hacky" way to have recovery installed in the system partition instead of the normal recovery partition. This has the advantage that it is compatible with locked stock ICS bootloaders. So, if you have 2nd init recovery, you don't need to install Wkpark's bootloaders, but you must never format your System partition because you'll wipe your recovery with it!

Bootloaders:

This brings us to the bootloader discussion. GB bootloaders were unlocked, so there was no problem running custom recoveries or kernels. Stock ICS bootloaders (both P920 and SU760), on the other hand, are locked and won't accept any recovery (except 2nd init) or kernel other than stock. For this reason, if you have flashed ICS, you need to flash Wkpark's v1.25a unlocked bootloader. It doesn't matter what you flash first, as long as you flash both bootloader and recovery.

The trade with Wkpark's bootloaders is that, because they were built for the SU760 (Korean O3D), there are minor problems when using on the P920. When you shutdown your phone, it turns back on by itself. If you remove your battery, as soon as you put it back, the phone will turn on. You can only shut the phone off if you keep power pressed for about 10sec. Then, while the phone is finally off, if you plug it to a charger or to a PC via USB, it will turn back on! In my opinion, this is problem is really minor and having unlocked bootloaders is totally worth it!

RECOVERY LOOP:

Another problem that may arise from the use of custom bootloader and recoveries is the "Recovery Loop". If you use, for example, ROM Manager to Reboot to recovery or if you use the "Factory Reset" menu option in Android settings, your phone may keep rebooting to recovery, even if you select to reboot to system. This happens because the "Recovery Flag" doesn't get properly cleared. I don't know where this flag is located, so I can't force it to clear, but there is a workaround!

1. Download P920_ICS_RecoveryLoop_Breaker.zip to your computer. If you are using stock ICS (or a custom ROM with stock ICS Kernel) keep it as it is and jump to step 4

2. Unzip the loop breaker and replace the file "boot.img" with the one from the CustomROM.zip or the CustomKernel.zip you are using.

3. Zip up your modified LoopBreaker.

4. While your phone is in recovery, connect it via USB, select to mount SD to computer and copy the zip to the phone. Eject from computer.

-- (Alternatively, if you have a Card Reader, you may put your ExternalSD card directly to your PC and copy the file)

5. Flash the zip and reboot.

6. After you boot to Android, you need to flash your custom recovery again because this procedure has wiped it.

This workaround won't work without Wkpark's bootloader.

Big thanks to [MENTION=4487432]lzzar[/MENTION] for giving me the idea how to break the loop!

WARNING: THIS LOOP BREAKER IS FOR THE LG OPTIMUS 3D (P920/P925/SU760). USING IT ON ANY OTHER PHONE WITHOUT PROPER MODIFICATION WILL MOST PROBABLY BRICK IT!

Recently, XDA member [MENTION=5884163]kanish alexander ps[/MENTION] used the loop breaker on his P725 and it worked as expected. So, although I have no personal experience, I guess it is safe to use it on LG P720/P725s.

I hope I have helped you understand a few things about your phone. So, now that you have a better understanding, go ahead and flash the correct recovery and bootloader. One easy way is OS_Hacking's Tool.

Flash away folks!