LS980ZVA - All you need to know!

Search This thread

savoca

Inactive Recognized Developer
Oct 28, 2011
1,715
5,298
Pasadena
downloads.codefi.re
Google Pixel 7
Thanks to @Shelnutt2 if you took the ZVA ota and you want a custom recovery, FreeGee from the play store now supports automatically downgrading your bootloader and installing a recovery!

If you want a ZVA radio on an AOSP ROM, you can use the latest AOSP builds of dr87's kernel or Furnace to work.
No more downgrading radio to ZV8 for AOSP ROMs


Before I step into the details, here's a little history..

WARNING: If you don't understand adb or root, then you shouldn't even be here, you probably shouldn't have even rooted. Make sure you COMPLETELY understand this post before doing ANYTHING. I'm using caps like a wild maniac because if you do something out of order or you do something wrong you WILL brick your device, and you have to use a .tot to bring yourself back to stock. The kind of brick you could create here kills your boot and recovery partitions. Be careful.

Code:
LS980ZV7 (Initial Release)
LS980ZV8 (Security Update)
LS980ZVA (Sprint Spark and loki-killer)

Loki: Our device uses a bootloader called an "aboot" which must validate the boot and recovery partitions before they can be booted.
We are allowed to use custom boot images (ROMs + Kernels) and recoveries because of loki. Loki is a program that patches our "Unoffical" boot or recovery images before they are installed, this is usually done in the .zip during flash, which is why most people don't worry about it.

LS980ZVA (Spark Update)

This update does 2 major things, patch loki, and add tri-band capabilities.

If you take the update, you will NOT loose the ability to ever use a custom ROM. We just need to downgrade the "aboot" to the exploitable ZV7 aboot.

You can find that "aboot" here -> zv7-aboot

After rooting, (use ioroot21) you can put the zv7-aboot.img on your sdcard, and open terminal emulator. Issue this command:
Code:
dd if=/path/to/your/zv7-aboot.img of=/dev/block/platform/msm_sdcc.1/by-name/aboot
(You can also use adb if you prefer)

After you have downgraded your aboot, you will need a custom recovery. Download Flashify off the Google Play market (or use FreeGee to make the process faster) and place this file on your sdcard. twrp_2.6.3.3_loki-ls980.img
Open flashify, select recovery image, and find that .img, I have already loki'd this image, so you don't need to worry about it not working. Just be sure that you have downgraded your aboot first!

At the moment, the ZVA radio that came with your ota has completely broken compatability with all other non-ZVA ROMs, so if you want to install CM/PA/AOKP/DerpG2/OptimusDE, you will need to downgrade your radio to non-Spark ZV8/7, just flash this file in your newly installed recovery.

Now you're safe to flash any ROM!

AOSP/LS980ZV8/7

If you want to try the new radio (Spark), there's some things you need to be aware of, (when available) flashing youdug's stock ZVA ROM will NOT give you spark out of the box. You will need the new ZVA radio for this. You can find that here

You can only use twrp to install this radio. And it will ONLY work on ZVA ROMS. Do NOT install this radio over CM/PA, you will brick.

After you have verified that you are running a ZVA ROM, you have flashed the radio, and you notice no errors, you may boot.
Notice, your bootloader is now loki-proof, and your recovery will no longer work. if you wan't to go back to AOSP or any other non-ZVA ROM, you MUST first flash the ZV8 Radio so that your ROM will boot.

Also, do not flash a ZV8 radio over a ZVA radio if you have already booted into a ZVA ROM. Only install the ZV8 radio before flashing a ZVA ROM or before switching to a non-ZVA ROM.

Devs working on the ZVA update: If you're including a custom kernel that modify's the official ZVA boot.img, you will need to include a few lines in your updater-script that patches the ZV7 aboot over the ZVA aboot. Then you can add the lines to loki your boot.img. We have to assume that the user is flashing your ROM on either radio. If you don't patch the aboot, the ZVA radio that the user "may" flash will not pass the boot.img from your ROM and the boot will fail, followed by the custom recovery. If you aren't careful, you WILL brick users.

Again, do NOT flash the radio before flashing the ZVA ROM, you WILL brick if you try to boot. Flash the ZVA ROM, verify that it boots, then flash the ZVA radio. If you want to go back to AOSP, follow the Spark guide above.

Thanks for help figuring this one out to @autoprime @garwynn @Shelnutt2 @Dougie2187
 
Last edited:

dangambino

Senior Member
Feb 2, 2010
680
99
baltimore
Did you really need to quote the whole OP? I don't think it's worth it if you are not in a Spark area.

Sent from my LG-LS980 using xda app-developers app

I've seen much longer quotes quoted. Anyway so there's no benefit...cuz its only launched in 11 cities. although I'm getgi g late from band 25 and 41 not 26 though. I enables them.....
 

savoca

Inactive Recognized Developer
Oct 28, 2011
1,715
5,298
Pasadena
downloads.codefi.re
Google Pixel 7
If you're not in a Spark area, don't even bother. You're temporarily flashing to a non-exploitable aboot and you have to downgrade to go back to any other non-ZVA rom.

What I like to do is flash the ZV8 radio and then the ZVA ROM, that way I don't need to mess with my aboot and I can go flash AOSP whenever I want.
 

mrrogers1

Senior Member
Jun 30, 2007
3,052
2,525
NEEEEBRASKA
If you're not in a Spark area, don't even bother. You're temporarily flashing to a non-exploitable aboot and you have to downgrade to go back to any other non-ZVA rom.

What I like to do is flash the ZV8 radio and then the ZVA ROM, that way I don't need to mess with my aboot and I can go flash AOSP whenever I want.

Perfectly said and Thank you (in words, not just XDA thanks) for this.

Sent from my LG-LS980 using Tapatalk
 
  • Like
Reactions: Lrod0175 and savoca

ericdabbs

Senior Member
Jun 28, 2007
1,137
324
Los Angeles
After rooting, (use ioroot21) you can put the zv7-aboot.img on your sdcard, and open terminal emulator. Issue this command:
Code:
dd if=/path/to/your/zv7-aboot.img of=/dev/block/platform/msm_sdcc.1/by-name/aboot
(You can also use adb if you prefer)

After you have downgraded your aboot, you will need a custom recovery. Download Flashify off the Google Play market (or use FreeGee to make the process faster) and place this file on your sdcard. twrp_2.6.3.3_loki-ls980.img
Open flashify, select recovery image, and find that .img, I have already loki'd this image, so you don't need to worry about it not working. Just be sure that you have downgraded your aboot first!

Was just curious if these instructions work for adb to flash zv7-aboot.img on your PC. Can you confirm if this works? I just think its just easier to flash the zv7-aboot.img on your PC since you can copy and paste the command into command prompt than have to type it manually on the terminal emulator on your phone. I think its less prone for error.

Alternative method to flash zv7-aboot.img using ADB method for Windows users. Should be similar steps for Mac users using a terminal window.
  • Download the zv7-aboot.img file and place the zv7-aboot.img in the ioroot 21 folder location.
  • Hold shift and right click in a blank area of the ioroot 21 folder on your PC and select "open command window here"
  • Type adb push zv7-aboot.img /sdcard/
  • Type adb shell
  • (If you do not see a # type su and hit enter so that you see the #)
  • Type dd if=/sdcard/zv7-aboot.img of=/dev/block/platform/msm_sdcc.1/by-name/aboot
 
Last edited:

UCLA1

Senior Member
Sep 14, 2012
80
13
Stock Rooted with TWRP

I am so sorry if this is a noob question but can I take this Spark update on my stock rooted with TWRP and then use this method to restore root and recovery. And will my phone still have all my apps. I will make a backup and transfer it to the PC though Thanks
 

savoca

Inactive Recognized Developer
Oct 28, 2011
1,715
5,298
Pasadena
downloads.codefi.re
Google Pixel 7
I am so sorry if this is a noob question but can I take this Spark update on my stock rooted with TWRP and then use this method to restore root and recovery. And will my phone still have all my apps. I will make a backup and transfer it to the PC though Thanks

You're good. But if you've ever uninstalled a system app the OTA will fail.
 
  • Like
Reactions: UCLA1

mchlbenner

Senior Member
Jul 1, 2008
3,381
842
You're good. But if you've ever uninstalled a system app the OTA will fail.

Just wondering if update fail do you have to go back to stock.
In the other thread right by this one their are two updates that what im talking about.
Thanks

Sent from my LG-LS980 using xda premium
 

rvalenzuel9

New member
Mar 9, 2013
4
0
Need help

i had a stock rom with twrp rooted and ran the update but it sent me to TWRP. I tried doing a nandroid restore but after i reboot the system it still sends me back to TWRP what can i do?
 

Geezio

Senior Member
Aug 20, 2012
56
29
Houston
Hello so I also was stock rooted took the ota and it's been stuck on the Sprint boot logo with the fancy spark emblem all day I don't know what to do because I do not any longer have a recovery some help ,direction prayer all that would be much apreciated thanks.
 
Last edited:

mrrogers1

Senior Member
Jun 30, 2007
3,052
2,525
NEEEEBRASKA
Hello so I also was stock rooted took the ota and it's been stuck on the Sprint boot logo with the fancy spark emblem all day I don't know what to do because I do not any longer have a recovery some help ,direction prayer all that would be much apreciated thanks.

Geez.... Did you read any of the posts right above yours? Need to try somethings out that others have and look in other threads.

Sent from my LG-LS980 using Tapatalk
 

Top Liked Posts

  • There are no posts matching your filters.
  • 48
    Thanks to @Shelnutt2 if you took the ZVA ota and you want a custom recovery, FreeGee from the play store now supports automatically downgrading your bootloader and installing a recovery!

    If you want a ZVA radio on an AOSP ROM, you can use the latest AOSP builds of dr87's kernel or Furnace to work.
    No more downgrading radio to ZV8 for AOSP ROMs


    Before I step into the details, here's a little history..

    WARNING: If you don't understand adb or root, then you shouldn't even be here, you probably shouldn't have even rooted. Make sure you COMPLETELY understand this post before doing ANYTHING. I'm using caps like a wild maniac because if you do something out of order or you do something wrong you WILL brick your device, and you have to use a .tot to bring yourself back to stock. The kind of brick you could create here kills your boot and recovery partitions. Be careful.

    Code:
    LS980ZV7 (Initial Release)
    LS980ZV8 (Security Update)
    LS980ZVA (Sprint Spark and loki-killer)

    Loki: Our device uses a bootloader called an "aboot" which must validate the boot and recovery partitions before they can be booted.
    We are allowed to use custom boot images (ROMs + Kernels) and recoveries because of loki. Loki is a program that patches our "Unoffical" boot or recovery images before they are installed, this is usually done in the .zip during flash, which is why most people don't worry about it.

    LS980ZVA (Spark Update)

    This update does 2 major things, patch loki, and add tri-band capabilities.

    If you take the update, you will NOT loose the ability to ever use a custom ROM. We just need to downgrade the "aboot" to the exploitable ZV7 aboot.

    You can find that "aboot" here -> zv7-aboot

    After rooting, (use ioroot21) you can put the zv7-aboot.img on your sdcard, and open terminal emulator. Issue this command:
    Code:
    dd if=/path/to/your/zv7-aboot.img of=/dev/block/platform/msm_sdcc.1/by-name/aboot
    (You can also use adb if you prefer)

    After you have downgraded your aboot, you will need a custom recovery. Download Flashify off the Google Play market (or use FreeGee to make the process faster) and place this file on your sdcard. twrp_2.6.3.3_loki-ls980.img
    Open flashify, select recovery image, and find that .img, I have already loki'd this image, so you don't need to worry about it not working. Just be sure that you have downgraded your aboot first!

    At the moment, the ZVA radio that came with your ota has completely broken compatability with all other non-ZVA ROMs, so if you want to install CM/PA/AOKP/DerpG2/OptimusDE, you will need to downgrade your radio to non-Spark ZV8/7, just flash this file in your newly installed recovery.

    Now you're safe to flash any ROM!

    AOSP/LS980ZV8/7

    If you want to try the new radio (Spark), there's some things you need to be aware of, (when available) flashing youdug's stock ZVA ROM will NOT give you spark out of the box. You will need the new ZVA radio for this. You can find that here

    You can only use twrp to install this radio. And it will ONLY work on ZVA ROMS. Do NOT install this radio over CM/PA, you will brick.

    After you have verified that you are running a ZVA ROM, you have flashed the radio, and you notice no errors, you may boot.
    Notice, your bootloader is now loki-proof, and your recovery will no longer work. if you wan't to go back to AOSP or any other non-ZVA ROM, you MUST first flash the ZV8 Radio so that your ROM will boot.

    Also, do not flash a ZV8 radio over a ZVA radio if you have already booted into a ZVA ROM. Only install the ZV8 radio before flashing a ZVA ROM or before switching to a non-ZVA ROM.

    Devs working on the ZVA update: If you're including a custom kernel that modify's the official ZVA boot.img, you will need to include a few lines in your updater-script that patches the ZV7 aboot over the ZVA aboot. Then you can add the lines to loki your boot.img. We have to assume that the user is flashing your ROM on either radio. If you don't patch the aboot, the ZVA radio that the user "may" flash will not pass the boot.img from your ROM and the boot will fail, followed by the custom recovery. If you aren't careful, you WILL brick users.

    Again, do NOT flash the radio before flashing the ZVA ROM, you WILL brick if you try to boot. Flash the ZVA ROM, verify that it boots, then flash the ZVA radio. If you want to go back to AOSP, follow the Spark guide above.

    Thanks for help figuring this one out to @autoprime @garwynn @Shelnutt2 @Dougie2187
    6
    I believe this works but you will lose your recovery,

    Sent from my LG-LS980 using xda premium

    As Savoca states above...

    Flash that you will either:
    A) Get ZVA - Loose recovery and have a loki-proof aboot
    B) Fail - Nothing happens
    C) Be forced to run a .tot if the ROM doesn't boot. Since you will loose your custom recovery if the flash does not fail.


    It's bad practice to just go flashing up something in which the origin, author NOR true use is even known or posted. :eek:

    If Savoca posted something and said, "I made this and it should work, I did it, this is what happened and why" then sure, that's one thing BUT the mystery zip, while the intention of sharing was good, it's only adding more noise and unknowns to the equation for people to sift through.

    Savoca has clearly and plainly stated in the OP what needs to be done and how to do it. These other mystery (if it'll work or even what it will do) work arounds honestly have no place in this thread but that's just my opinion and you know what they say about those.
    5
    Youdug's rom is everything except for the radio. Which means it includes the new aboot. Which means, yes you DO need to downgrade if you want to be able to flash files in recovery.


    No. The radio includes the aboot.


    Savoca

    I swear i've read your post over and over. Is downgrading aboot only required if you took the ota or is it required even if you're flashing youdugs rom and radio separately?

    Sent from my LG-LS980 using xda app-developers app

    ---------- Post added at 05:26 AM ---------- Previous post was at 05:22 AM ----------

    Meaning the full update from Sprint includes the new Loki proof bootloader. Surely the rom update does nothing to the bootloader right?

    Sent from my LG-LS980 using xda app-developers app


    His ROM is safe to flash whenever. The radio part (if you want spark) requires all the extra steps, and must be done post-install of his ROM.


    Sorry, I'm a bit slow on the uptake here, so please bear with me. I just want to verify I have this correct in a step-by-step fashion:

    To upgrade to spark from ZV8 with TWRP:
    1) In TWRP, flash youdug's ZVA ROM
    2) Do a normal reboot into ZVA ROM, then verify that the software version is ZVA
    3) Reboot back to TWRP, then flash the ZVA radio
    4) Downgrade aboot to ZV7 aboot using the image you provided and entering the terminal command in the OP
    5) Use Flashify to reinstall TWRP
    6) Now I can flash stuff like Xposed, camera mods, etc., just not other ROMs without some adjustment as below.

    To go back to ZV8 or to flash AOSP, etc.:
    1) In TWRP, flash ZV8 radio, but do NOT reboot.
    2) In the same TWRP session, after flashing ZV8 radio, flash ZV8 ROM or AOSP rom etc.
    3) Reboot and good to go?

    Thanks for the incredible work you guys are doing here.

    Perfect. Except step 5 isn't necessary. After flashing the radio you have the new aboot which disables custom recoveries. Your recovery is still there, it just can't be accessed. After you downgrade the aboot, you can hop right back into recovery no problem.

    Sent from my LG-LS980 using XDA Premium 4 mobile app
    5
    Members, please keep the Off Topic/Off Topic pic's clear from the thread. And I highly suggest for those that are not familiar, do your homework and read...read...read...
    As with all Development, this is at your own risk, if you are not "smart enough" or have done your/or any homework, do not just jump into tweaking/rooting/flashing your device... But it is your $$$, so if you are one of those that just jump in without reading, do not come back and say I have issues.

    Thanks & Thread Cleaned of OT
    4
    After rooting, (use ioroot21) you can put the zv7-aboot.img on your sdcard, and open terminal emulator. Issue this command:
    Code:
    dd if=/path/to/your/zv7-aboot.img of=/dev/block/platform/msm_sdcc.1/by-name/aboot
    (You can also use adb if you prefer)

    After you have downgraded your aboot, you will need a custom recovery. Download Flashify off the Google Play market (or use FreeGee to make the process faster) and place this file on your sdcard. twrp_2.6.3.3_loki-ls980.img
    Open flashify, select recovery image, and find that .img, I have already loki'd this image, so you don't need to worry about it not working. Just be sure that you have downgraded your aboot first!

    Was just curious if these instructions work for adb to flash zv7-aboot.img on your PC. Can you confirm if this works? I just think its just easier to flash the zv7-aboot.img on your PC since you can copy and paste the command into command prompt than have to type it manually on the terminal emulator on your phone. I think its less prone for error.

    Alternative method to flash zv7-aboot.img using ADB method for Windows users. Should be similar steps for Mac users using a terminal window.
    • Download the zv7-aboot.img file and place the zv7-aboot.img in the ioroot 21 folder location.
    • Hold shift and right click in a blank area of the ioroot 21 folder on your PC and select "open command window here"
    • Type adb push zv7-aboot.img /sdcard/
    • Type adb shell
    • (If you do not see a # type su and hit enter so that you see the #)
    • Type dd if=/sdcard/zv7-aboot.img of=/dev/block/platform/msm_sdcc.1/by-name/aboot