[Galaxy S II Q&A, Help & Troubleshooting] invalidtarget:
[SOLVED] Issue was NAND write corruption. Fixed with repartition.

Hello everyone, I figured that after all I went through to try and fix this that I wanted to let you all know what was wrong and how I fixed it.

Basically, the problem was that my NAND write memory had corrupted-- How this happened is unknown to me, but it could have been caused by a number of things... Anyway, in order to fix this I flashed the proper PIT file for my phone (through Odin v3.04) with repartition checked, followed by a stock Kernel and Firmware. After flashing to stock, I was still unable to get past the boot logo however so I also flashed the recovery file for my GT-I9100M, which in turn helped my phone to completely unbrick into Gingerbread! From here I was able to flash again and upgrade to JB on a modded ROM (I used CM). After which, I unlocked via an

OLD VERSION OF GALAXY_S UNLOCK

, since the NEW version wont work on a JB phone, for whatever reason (note, this was in Jan/ Feb of 2013 and may be fixed by the time someone else tries it.)

End result: Phone has been Repartitioned (no bootloader flashing was required for this issue, just the *CORRECT* PIT file), Unbricked, Updated to JB via CM flash, and then unlocked via an old version of Galaxy_S Unlock. ALL of these files were found in the xda forums, so I wont host them or post download links (and I've forgotten the threads I found most in.. bah) but I can let you know the file names of what I used:

For my 16GB SGS2 Virgin/SaskTel/Bell GT-I9100:

PIT File (found a Frankenstein version of the one I needed): i9100_16GB_u1_02_20110310_emmc_EXT4-stock.pit

*(search forums for pits-i9100_16GB for the 16GB pit, the 32GB one should also be in the SAME thread if you need that one instead!)*

Stock GB Firmware: GT-I9100M_BMC_I9100MUGKG2_I9100MBMCKG2_I9100MUGKG2.tar

*(zipped as GT-I9100M_BMC_I9100MUGKG2_I9100MBMCKG2_I9100MUGKG2 and I believe it should be findable by searching for the CANADIAN bell/virgin/sasktel gt-i9100 thread)*

Stock GB Kernel: Kernel_I9100MUGKG2 *(Found in the same thread as the stock firmware)*

SamRecovery package: I9100MUGLD3_I9100MBMCLD3_I9100MXXLD3_HOME.tar

* (can be found by searching for "NAND corruption" in a guide on unbricking)*

(Before starting I flashed the stock kernel just to be safe, I'm not sure if this is important or not in repartitioning but this is what I did anyway and it worked for me!)

***NOTE: When flashing PIT files, MAKE SURE YOU HAVE THE PROPER ONE FOR YOUR PHONE! This includes matching phone internal SD to the pit (ie 16GB phones will have a different partition file than a 32GB, and they AREN'T interchangeable)

Process:

1) Flash STOCK Kernel; reboot phone and Odin (close and reopen, I've found that Odin doesn't like to flash more than once at a time for me lol)

2) Reopen Odin and check 'Re-partition' and flash the .pit file via the PIT box. Close Odin and reboot phone back into Download Mode.

3a) Flash the STOCK Firmware, reboot phone and Odin.

3b) Flash SamRecovery package if your phone doesn't get past the boot logo, or has a boot-loop, etc. (I flashed it because I couldn't pass the boot logo, though flashing it for good measure wont hurt anyway.)

4a) Phone has been unbricked into Gingerbread! From here, you can install a modded ROM or should even be able to connect to KIES again and update stock should you want to keep your phone at stock settings.

*(I flashed the newest Siyah kernel for the root, then installed the latest Cyanogen Mod for the GT-i9100. End result changed my phone from a GT-I9100M to a GT-I9100 on the download screen lol, but they are basically the same anyway. IMO there should be less hastle keeping it as a GT-I9100.)

*5) If you want / need to unlock your newly reborn device, update it to Jellybean and download the older version of Galaxy_S Unlock (which is located on these forums somewhere... Search for "unlock JB phone Galaxy_S unlock" and you should be fine.)

Voila, you should be in possession of a freshly fixed device! This is what worked for me, so I wanted to share how I fixed it. I also made myself a little USB jug to reset my counter, though you can use whatever method pleases you (or you can just leave it if you dont care about it :))

In closing, I'd like to thank everyone who helped me in this thread; your input was invaluable and I appreciate the time you all took to reply.

Thank you!

IVT