[Sony Xperia L] pinngguu:
This thread will guide you to flash a custom recovery, Root the device, flash custom ROMs. Firstly, read the entire post and then start your work.

I am a noob. But I have a little experience of rooting and flashing. This device gave me nightmares which are less than as compared to the Xperia Sola which I bricked some years back.

My device has a problem. It does not help install twrp with the traditional ways we know like we can see in the Official TWRP website using "dd" method, the Cyanogenmod link using fastboot commands, the Flashify method, the RecoveryApp method whose apk I never found and the Recovery Installer Utility.

I came to know that either my phone don't have the recovery partition or the phone is overriding all the commands.

Using fastboot commands would give the error like in this post.

Using Flashify would tell me there's no recovery partition found. Rashr would complete the flash process but after booting to recovery, there was no TWRP, just the stock Android recovery.

If you read carefully on the twrp page of XL, there's a line which caught my attention late enough.

Flashing custom kernels with flashtool is easy and they come with recovery pre-installed and lots of amazing stuff, but they won't do any good with the stock ROM. I've tried the Extended stock kernel, the Phantom Kernel and the Thunderzap 4.15.

After surfing the web and forums of other devices, I found that there is a chance I can fix things by updating/repairing software via PC Companion. But something happened and repair also failed.

I can't tell the reason why this happened. And I didn't store the logs. But with trial and error I found some workarounds.

Actual Methods start here

Rooting the device

If you only want to root your device for various reasons, then you will need nothing but a Rootkit. Check out this post about Rooting Xperia L.

But if you are planning to install custom ROMs for your device, then skip this rooting step. It won't be necessary for this condition.

Flashing custom recovery

*Try this method only if above-mentioned method fails*

1. Download TWRP 3.2.1 img. The 3.2.2 and 3.2.3 versions work perfectly but they caused the screen to flicker like hell on my device. Rename the file to 'twrp.img'

2. Download and install adb and fastboot drivers system-wide.

3. Connect your device to PC via USB cable and enabling USB-debugging mode.

4. Open Windows Powershell/Command Prompt in the twrp download directory by pressing Shift and clicking right mouse button.

5. Use fastboot command on stock ROM without root and Unlocked Bootloader. Instead of flashing twrp image to recovery, flash to boot. Use the code:

adb devices
adb reboot fastboot

Wait for device to boot into fastboot mode. A blue LED will flash when connected.​

fastboot flash boot twrp.img
fastboot reboot

After reboot, don't boot to system. Boot to recovery by pressing volume up repeatedly when pink LED glows. Stop when device vibrates and LED color changes

Flashing custom ROMs

Once the recovery is installed, everything becomes easy. you can find different custom ROMs on the device page here on XDA.

My favorite one is The resurrection Remix Nougat. It is stable enough to be your daily driver. You can head to that page and follow their instructions. But I will also provide steps here.

When in TWRP after the last step, move the downloaded zip file of the ROM and GApps you want to install to the storage of the device by simply connecting via USB.

After that, in TWRP click on Wipe->Advanced->Tick on System, Cache, Dalvik cache. Then Do swipe to begin wipe.

After wipe, go back to main menu. Tap on install, select from the list the ROM zip. then tap on Add more zips and select the GApps zip and then Swipe to start flashing.

After flashing, reboot to system. The first boot takes time. Don't panic if it won't boot.

Install TWRP to FOTAKernel

After booting to your new ROM, you can install the TWRP to your FOTAKernel.

This can be done as following:

Get the downloaded TWRP img file and push it to the device using command line. Open command prompt in the TWRP directory and type,

adb root
adb wait-for-device
adb push twrp.img /tmp/twrp.img

Now extract the TWRP image to the FOTA partition code,

adb shell dd if=/tmp/twrp.img of=/dev/block/platform/msm_sdcc.1/by-name/FOTAKernel

Now reboot to recovery

adb reboot recovery

Note that custom ROMs often come with Root access inbuilt. If your ROM happened to be not, and your ROM is based on Lollipop or later version of Android, you can root with Magisk. Just read carefully before proceeding.

Comments are welcome!