You may have found yourself cursing the smartphone gods if you picked up a Nexus 6P handset only to have it eventually develop an annoying habit of endlessly rebooting. Known as the Bootloop of Death, users tried in vain to find a solution, but no amount of flashing, re-flashing, and wiping affected handsets seemed to cure whatever was ailing the phone. That led to the belief that a hardware issue was the culprit, not software, and there is now (finally) a fix in place.
The random reboot issue popped up around the end of 2016, with users taking to forums and social media to complain about the issue. This is not to be confused with the premature shutdown bug that led to a class action lawsuit against Google and Huawei. In that instance, a software bug was causing the phone to misread and misrepresent battery life. That situation also led to reboot loops, though apparently it was a separate issue.
In this case, the culprit seems to be a flaw within a big cluster of the Nexus 6P handset's Qualcomm Snapdragon 810 system-on-chip (SoC). The end around is to disable the faulty cluster so that the Nexus 6P boot up as normal and actually reach the lockscreen. This requires flashing modified files that were compiled by XDA member XCnathan32 and XDA senior member rchtk (fist bump to both of them).
If you are unable to get your busted Nexus 6P fixed or don't want to pay whatever the fee might be, you can try following these steps to revive your phone. Just be warned that you'll be disabling the A57 performance cores, leaving just the A53 little cores. Still, it's better than having a non-functioning device.
To start with, you need to download the latest ADB and Fastboot binaries, then extract them to a folder on your PC. Assuming you're on Windows, you'll also need to download and install the Google USB driver. Next, download N2G48B_4Cores.img and save it to the same directory where you place the ADB and Fastboot binaries.
At this point you have a couple of options before moving to the next step. If you want to use TWRP recovery on your fixed Nexus 6P, you will need to use a modified version—twrp3_1_1_4Cores.img. Save this to the directory where your ADB and Fastboot binaries are located. The other option is to overclock your fixed Nexus 6P. To do so, you'll need to flash a modified version of XDA Recognized Developer flar2's Elemental X Kernel—EX4_1_1_4Cores.zip. Save this to your downloads directory.
Moving on, now is the time to plug your Nexus 6P into your PC. Next, open up a command prompt in the same directory where your ADB and Fastboot binaries are located (hold down shift, right-click, and select "open command prompt here"). in the command prompt, enter the command fastboot devices. You should see your device's serial number—if not, reinstall the drivers.
To flash the modified images, you need an unlocked bootloader. If it's not locked, enter the command fastboot flashing unlock then use the volume and power keys to confirm that you want to unlock the bootloader. Doing this will wipe your phone's storage clean, so keep that in mind.
To flash the modified boot image, enter the command fastboot flash boot N2G48B_4Cores.img (if you want to flash TWRP, enter fastboot flash recovery twrp3_1_1_4Cores.img). Now type fastboot reboot to reboot your phone. Give it a few minutes, at which point you should eventually see your lockscreen.
If you opted to improve performance and you flashed TWRP, copy the modified Elemental X kernel over to your phone's storage, boot into TWRP, and flash the custom kernel. This will give you the option to overclock the little cluster for a bit of added performance.