[LG Optimus 2x] xavdeman:
So, I needed to use my old phone again because my new one went back to the shop for repairs. I spent hours trying to get the LG Optimus 2X to work again. In the current year (tm) there are multiple problems:

Nvidia's Tegra 2 chip, which powers the LG Optimus 2X (P990) smartphone doesn't support NEON code (per Wikipedia: "Tegra 2's Cortex A9 implementation does not include ARM's SIMD extension, NEON.")

During 2017, Google added NEON code to Google Play Services - a background process which is automatically updated when the Google Play Store is active. There are hundreds of complaints about this in the Google Product Forums: https://productforums.google.com/forum/#!topic/play/uX3Xqk2gi_k and going by that thread, https://www.apkmirror.com/apk/google-inc/google-play-services/google-play-services-11-0-38-release/ is the last good version.

I don't know why, but somehow this is related to massive lag when using Optimus 2X roms like the LG stock ICS rom, and custom roms like TonyP's: https://xdaforums.com/showthread.php?t=2769730 (I tried both kernels). Also the AOSP keyboard started malfunctioning (closing repeatedly when typing).

According to TonyP there is no (theoretical?) reason why NEON code should cause lag (only crashes), see bulletpoint 4 at https://xdaforums.com/showpost.php?p=57920187&postcount=21 - but in practice it does.

Maybe it's related to the fact that Google Play Services now uses 121 MB as opposed to the 4,26 MB of the NEON-less version?

LG Mobile Support servers are down. This means that going back to stock and getting stock LG basebands and firmware is now much harder than it needs to be.

Because this phone is so old, a lot of links in this XDA Developers forum are dead. This includes all links to Gooserver, TonyP's server etc. This is why I will include a mirror for everything.

So after multiple hours of trial and error, here's what worked for me to get basic functionality without lag from this phone again.

Prerequisites:

1. You probably already have them installed, but install the latest LG USB drivers for the phone: https://www.lg.com/uk/support/support-mobile/lg-LGP990

2. Make sure you are on the V30A baseband (that is the latest version for Europe). You are probably on this baseband, but if not you can get it at http://www.handy-faq.de/forum/lg-op...al-firmware-der-provider-t207099/#post1469732 (the thread in XDA Developers forums only has dead links) (you only need LGP990AT-00-V30a-EUR-XXX-NOV-30-2012+0_CP.fls, which I've uploaded for you at Mega.nz). You can flash it using the instructions at step 5 below, using option 7 in the AIO-Toolkit.

Step 1: Get the last Cyanogenmod nightly (filename: cm-10.1-20140216-NIGHTLY-p990.zip) from the Archive.org torrent: https://archive.org/details/cmarchive_nighlies

Mirror: Direct magnet link / Mirror 2: Mega.nz.

Please be aware that Cyanogenmod uses the "old partition loadout" / "old bootloader". This will be relevant later.

Step 2: Get the Non-neon Gapps for Android 4.2 by TonyP, the version that changes the keyboard to a non-neon version, by Luk_Optimus (filename: gapps-jb-20130427-nonneon-tonyp-keyboard.zip). You can download it at https://xdaforums.com/showpost.php?p=42567546&postcount=15 . Mirror: Mega.nz

Step 3: Get the at All-In-One ToolKit v6.0 at https://xdaforums.com/showthread.php?t=2020737 . Mirror: Mega.nz

Step 4: Reboot Windows 10 using the startup option "Disable Driver Signature Enforcement", I used method 2 from https://www.lifewire.com/how-to-access-advanced-startup-options-in-windows-10-or-8-2626229 to show the Advanced Startup Options.

Step 5: Open AIO-Toolkit using the desktop shortcut, and after installing the NVFlash Recovery Drivers (option i), type in option 4 ( 4 - Repartition your device with preferred layout and bootloader ). Follow the instructions. Pick the options for the Old Bootloader and TWRP 2.6.0.0. instead of Clockworkmod. Allow AIO-Toolkit to fix the partition layout (it will ask you if you want to do this at the end).

Step 6: Boot to TWRP recovery. Insert the SDHC card containing Cyanogenmod and Non-Neon Gapps. Use the Install button. Flash both the Cyanogenmod and the Non-Neon Gapps you downloaded above.

Step 7: Boot the LG Optimus 2X. Enjoy. Don't forget to dismiss all dialogs asking you to "upgrade" your version of Google Play Services. For example when installing Whatsapp.

Remaining issues:

EDIT: Google Play Store will still sometimes try to update Google Play Services to version 12.8.74 without your consent. In that case, go to Settings -> Apps -> Downloaded and use the "Remove Updates" button on both Google Play Store and Google Play Services. This will return you to the working Non-Neon Gapps version you installed above.

WhatsApp requires Google Play Services to restore backups. Other applications will just not work: for example, MediaMonkey requires Google Play Services 12.4.51 or later, Tapatalk requires it too. Also, some apps are not compatible with non-Neon devices in their latest versions. I've noticed Firefox, Opera Mini (and its beta), Chrome (and its beta) don't work. So I'm still looking for a better browser than the built-in one.

Note: Sometimes the dev has published a Lite version that has less system requirements. For example: use Messenger Lite instead of Facebook Messenger. Messenger Lite, however, crashed when I tested voice calls. Whatsapp didn't, but the other party couldn't hear me.

Seems like some certificates / trusted Certificate Authorities may be missing, causing network errors when using the browser to visit HTTPS websites? All my other devices work fine on my WLAN.

If anyone needs additional instructions, please leave a reply :) If you have anything to add, also leave a reply!