[ROM + KERNEL][LS997 - ZV6] OBAR Revamped [5/03] | 7.0.1 | Kernel [5/15] |

Search This thread

SaintZ93

Senior Member
Welcome to: The One Bad Ass ROM

Hello everyone, I would like to present OBAR (One Bad Ass ROM) a ROM that I successfully built for the Note 4 is now on our LG, well for Sprint at-least. So here it is, a Stock, de-bloated, modified ROM that is based off of ZV6 to bring the absolute best performance and battery life to your phone! Hope you guys enjoy! :) EDIT (5/02): As of now we have our very own OBAR Kernel,
I'd like to let you know all about it so seek the second post :p

Stock Specifications:
  • Based On Stock LS997ZV6 (Nougat - 7.0.1)
  • Our Very Own OBAR Kernel! (See second post for details)
  • Rooted & Busy Boxed
  • De-Bloated
  • Magisk or SuperSU Compatible (SuperSU built in)
  • No Sprint Bloat

OBAR Features:
  • Enabled High Independence Mode
  • Enabled Guest Features (Max: 5)
  • Enabled Hotspot
  • Added Build.Prop Tweaks
  • Added Custom Kernel Adiutor
  • Fixed Data On Boot
  • Improved Net Speeds
  • Improved Scrolling Speeds
  • Improved RAM Management
  • Insane Battery Life
  • Insane init.qcom.post_boot Modifications (Improves Overall Performance/Battery/Stability)
  • And more I forgot...

Install:
  • Download
  • Transfer To Phone
  • Reboot To Recovery
  • Wipe System, Data, Cache, Dalvik Cache (x3)
  • Format System (Backup Your Internal Storage First)
  • Install Stock OBAR Rom
  • Wait About 15 min To Boot
  • Enjoy :)

Downloads:
After Install: (Recommended)
  • Initial boot will boot twice.
  • Please allow about 15 minutes to boot up after initial boot. (Due to it being deodexed)
  • Recommended to wait up to five minutes on initial boot before doing anything, then do a full restart.
  • To get back Developer Options go in to Settings, About Phone and rapidly tap Build Number until it says your a developer.

Important Notes:
  • Yes there is static on boot.
  • For those who get stuck in a "TWRP LOOP" see here.
  • Don't ask if this will work on other variants I will ignore your question. I will not support other variants with this ROM, sorry. Sprint only. You can always flash it and find out.

Credits:
  • @me2151 - For the Official LS997ZV6 Base and root method of course!
  • @svadev - For the SVA Deodexing tool!
  • @Ticklefish - For the TickleMyAndroid Tool!
  • @DTDMike - For the ability to enable High Independence Mode.
  • @ashirviskas - For enabling the dual speaker mod.
  • @warBeard_actual - For the crazy init.qcom.post_boot Modifications
  • @Team DevDigitel - For a working base and great help!
  • @freeza - For teaching me how to build my first kernel!
  • @BackCheck - Major help with figuring out how to get the kernel to fully work properly!



Disclaimer: I do not and will not take any responsibility towards anything that happens to your phone after flashing.

XDA:DevDB Information
Stock LS997, ROM for the LG V20

Contributors
SaintZ93, me1212
ROM OS Version: 7.x Nougat
ROM Kernel: Linux 3.10.x
ROM Firmware Required: LS997
Based On: Stock

Version Information
Status: Stable
Current Stable Version: Release 1
Stable Release Date: 2017-03-26

Created 2017-02-09
Last Updated 2017-03-26
 

Attachments

  • Screenshot_2017-03-26-02-44-39.png
    Screenshot_2017-03-26-02-44-39.png
    193.2 KB · Views: 3,582
  • Screenshot_2017-03-26-02-44-45.png
    Screenshot_2017-03-26-02-44-45.png
    123.1 KB · Views: 3,508
  • Screenshot_2017-03-26-12-11-15.png
    Screenshot_2017-03-26-12-11-15.png
    201.2 KB · Views: 3,502
Last edited:

SaintZ93

Senior Member
Okay guys OBAR now contains its own kernel! So I want to give you a bit of information that may help you to decide how you want to set up it up! I will always keep this post updated with all the latest version release information. Will label dates next to each new update to show what is new!

I/O Scheduler Information - GPU:
  • FIOPS - This is an IOPS based I/O scheduler. It will try to distribute IOPS equally among all processes in the system. It's mainly for Flash based storage.
  • SIO - The Simple I/O scheduler is an extremely simple scheduler, based on noop and deadline, that relies on deadlines to ensure fairness. The algorithm does not do any sorting but basic merging, trying to keep a minimum overhead. It is aimed mainly for aleatory access devices (eg: flash devices).
  • NOOP - The no-op I/O scheduler is a minimal scheduler that does basic merging and sorting. Its main uses include non-disk based block devices like memory devices, and specialised software or hardware environments that do their own scheduling and require only minimal assistance from the kernel.
  • DEADLINE - The deadline I/O scheduler is simple and compact. It will provide CSCAN service with FIFO expiration of requests, switching to a new point in the service tree and doing a batch of IO from there in case of expiry.
  • CFQ - The CFQ I/O scheduler tries to distribute bandwidth equally among all processes in the system. It should provide a fair and low latency working environment, suitable for both desktop and server systems.
  • BFQ - The BFQ I/O scheduler tries to distribute bandwidth among all processes according to their weights. It aims at distributing the bandwidth as desired, independently of the disk parameters and with any workload. It also tries to guarantee low latency to interactive and soft real-time applications. If compiled built-in (saying Y here), BFQ can be configured to support hierarchical scheduling.
  • BFQIO - Enable hierarchical scheduling in BFQ, using the cgroups filesystem interface. The name of the subsystem will be bfqio.
  • ZEN - FCFS, dispatches are back-inserted, deadlines ensure fairness. Should work best with devices where there is no travel delay.

Governor Information - CPU:
  • Simple Ondemand - Chooses frequency based on the recent load on the device. Works similar as ONDEMAND governor of CPUFREQ does. A device with Simple-Ondemand should be able to provide busy/total counter values that imply the usage rate. A device may provide tuned values to the governor with data field at devfreq_add_device().
  • Performance - Sets the frequency at the maximum available frequency. This governor always returns UINT_MAX as frequency so that the DEVFREQ framework returns the highest frequency available at any time.
  • Powersave - Sets the frequency at the minimum available frequency. This governor always returns 0 as frequency so that the DEVFREQ framework returns the lowest frequency available at any time.
  • Userspace - Sets the frequency at the user specified one. This governor returns the user configured frequency if there has been an input to /sys/devices/.../power/devfreq_set_freq. Otherwise, the governor does not change the frequnecy given at the initialization.
  • Blu_active - This allows you to get a full dynamic cpu frequency capable system by simply loading your cpufreq low-level hardware driver, using the 'interactive' governor for latency-sensitive workloads.
  • Nightmare (NEW 5/15) - This is a PegasusQ modified, less aggressive and more stable. A good compromise between performance and battery. In addition to the SoD is a prevention because it usually does not hotplug.
  • Darkness (NEW 5/15) - It's based on nightmare but more simple and fast, basic configs but very complex structure. It is an updated nightmare gov and improved stability, so far it is quite stable in tests.
  • Chill (NEW 5/15) - Use the CPUFreq governor 'chill' as default. This allows you to get a full dynamic frequency capable system by simply loading your cpufreq low-level hardware driver. A conservative based governor that aims to provide more aggressive battery savings while screen is off.
  • Dance Dance (NEW 5/15) - Based on conservative with some smartass features, it scales accordingly to conservatives laws. So it will start from the bottom, take a load sample, if it's above the upthreshold, ramp up only one speed at a time, and ramp down one at a time. It will automatically cap the off screen speeds to 245Mhz, and if your min freq is higher than 245mhz, it will reset the min to 120mhz while screen is off and restore it upon screen awakening, and still scale accordingly to conservatives laws. So it spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It is a performance focused governor but also blends with some battery savings.

Adreno Idler Information:
  • Enabled - Uses a different calculation method on top of Adreno TZ just for calculating frequency for idle to reduce the wasted power coming from stock Adreno TZ while maintaining high-performance.

Other Information:
  • Moved Core Control To Kernel - Moved core control from out-of-tree module into the kernel proper. Core control monitors load on CPUs and controls how many CPUs are available for the system to use at any point in time. This can help save power. Core control can be configured through sysfs interface.
  • Moved Core Control Trace Events To Scheduler
  • Added A Knob To Disable The core_ctl (Core Control) - The CPU hotplug tests does not work with core_ctl compiled statically into kernel. Provide an interface to disable the hotplug by core_ctl.
  • Enabled LZ4 Compression & Added ExFAT Filesystem
  • Fixed Various Issues

Source Code: https://github.com/SaintZ13/obar_kernel
 
Last edited:

Cubit33

Senior Member
Apr 1, 2011
92
21
Thanks for the new ROM! Does this add back the stock LG gallery and music player, or are those still removed?
 

cmdmoto

Senior Member
Nov 15, 2013
320
204
Texas
So glad to see you over here on the sprint V20 Saint! You always put out great ROMs and you never disappoint! Looking forward to this one.

BTW, mod it up!
 

kyhassen

Senior Member
Sep 23, 2010
847
85
New Hampshire
Mod the daylights out of it!! I been dying for a good one like that WETA rom but cant use it. Im always dying to try something new tho :D
 

Top Liked Posts

  • There are no posts matching your filters.
  • 21
    Welcome to: The One Bad Ass ROM

    Hello everyone, I would like to present OBAR (One Bad Ass ROM) a ROM that I successfully built for the Note 4 is now on our LG, well for Sprint at-least. So here it is, a Stock, de-bloated, modified ROM that is based off of ZV6 to bring the absolute best performance and battery life to your phone! Hope you guys enjoy! :) EDIT (5/02): As of now we have our very own OBAR Kernel,
    I'd like to let you know all about it so seek the second post :p

    Stock Specifications:
    • Based On Stock LS997ZV6 (Nougat - 7.0.1)
    • Our Very Own OBAR Kernel! (See second post for details)
    • Rooted & Busy Boxed
    • De-Bloated
    • Magisk or SuperSU Compatible (SuperSU built in)
    • No Sprint Bloat

    OBAR Features:
    • Enabled High Independence Mode
    • Enabled Guest Features (Max: 5)
    • Enabled Hotspot
    • Added Build.Prop Tweaks
    • Added Custom Kernel Adiutor
    • Fixed Data On Boot
    • Improved Net Speeds
    • Improved Scrolling Speeds
    • Improved RAM Management
    • Insane Battery Life
    • Insane init.qcom.post_boot Modifications (Improves Overall Performance/Battery/Stability)
    • And more I forgot...

    Install:
    • Download
    • Transfer To Phone
    • Reboot To Recovery
    • Wipe System, Data, Cache, Dalvik Cache (x3)
    • Format System (Backup Your Internal Storage First)
    • Install Stock OBAR Rom
    • Wait About 15 min To Boot
    • Enjoy :)

    Downloads:
    After Install: (Recommended)
    • Initial boot will boot twice.
    • Please allow about 15 minutes to boot up after initial boot. (Due to it being deodexed)
    • Recommended to wait up to five minutes on initial boot before doing anything, then do a full restart.
    • To get back Developer Options go in to Settings, About Phone and rapidly tap Build Number until it says your a developer.

    Important Notes:
    • Yes there is static on boot.
    • For those who get stuck in a "TWRP LOOP" see here.
    • Don't ask if this will work on other variants I will ignore your question. I will not support other variants with this ROM, sorry. Sprint only. You can always flash it and find out.

    Credits:
    • @me2151 - For the Official LS997ZV6 Base and root method of course!
    • @svadev - For the SVA Deodexing tool!
    • @Ticklefish - For the TickleMyAndroid Tool!
    • @DTDMike - For the ability to enable High Independence Mode.
    • @ashirviskas - For enabling the dual speaker mod.
    • @warBeard_actual - For the crazy init.qcom.post_boot Modifications
    • @Team DevDigitel - For a working base and great help!
    • @freeza - For teaching me how to build my first kernel!
    • @BackCheck - Major help with figuring out how to get the kernel to fully work properly!



    Disclaimer: I do not and will not take any responsibility towards anything that happens to your phone after flashing.

    XDA:DevDB Information
    Stock LS997, ROM for the LG V20

    Contributors
    SaintZ93, me1212
    ROM OS Version: 7.x Nougat
    ROM Kernel: Linux 3.10.x
    ROM Firmware Required: LS997
    Based On: Stock

    Version Information
    Status: Stable
    Current Stable Version: Release 1
    Stable Release Date: 2017-03-26

    Created 2017-02-09
    Last Updated 2017-03-26
    7
    Okay guys OBAR now contains its own kernel! So I want to give you a bit of information that may help you to decide how you want to set up it up! I will always keep this post updated with all the latest version release information. Will label dates next to each new update to show what is new!

    I/O Scheduler Information - GPU:
    • FIOPS - This is an IOPS based I/O scheduler. It will try to distribute IOPS equally among all processes in the system. It's mainly for Flash based storage.
    • SIO - The Simple I/O scheduler is an extremely simple scheduler, based on noop and deadline, that relies on deadlines to ensure fairness. The algorithm does not do any sorting but basic merging, trying to keep a minimum overhead. It is aimed mainly for aleatory access devices (eg: flash devices).
    • NOOP - The no-op I/O scheduler is a minimal scheduler that does basic merging and sorting. Its main uses include non-disk based block devices like memory devices, and specialised software or hardware environments that do their own scheduling and require only minimal assistance from the kernel.
    • DEADLINE - The deadline I/O scheduler is simple and compact. It will provide CSCAN service with FIFO expiration of requests, switching to a new point in the service tree and doing a batch of IO from there in case of expiry.
    • CFQ - The CFQ I/O scheduler tries to distribute bandwidth equally among all processes in the system. It should provide a fair and low latency working environment, suitable for both desktop and server systems.
    • BFQ - The BFQ I/O scheduler tries to distribute bandwidth among all processes according to their weights. It aims at distributing the bandwidth as desired, independently of the disk parameters and with any workload. It also tries to guarantee low latency to interactive and soft real-time applications. If compiled built-in (saying Y here), BFQ can be configured to support hierarchical scheduling.
    • BFQIO - Enable hierarchical scheduling in BFQ, using the cgroups filesystem interface. The name of the subsystem will be bfqio.
    • ZEN - FCFS, dispatches are back-inserted, deadlines ensure fairness. Should work best with devices where there is no travel delay.

    Governor Information - CPU:
    • Simple Ondemand - Chooses frequency based on the recent load on the device. Works similar as ONDEMAND governor of CPUFREQ does. A device with Simple-Ondemand should be able to provide busy/total counter values that imply the usage rate. A device may provide tuned values to the governor with data field at devfreq_add_device().
    • Performance - Sets the frequency at the maximum available frequency. This governor always returns UINT_MAX as frequency so that the DEVFREQ framework returns the highest frequency available at any time.
    • Powersave - Sets the frequency at the minimum available frequency. This governor always returns 0 as frequency so that the DEVFREQ framework returns the lowest frequency available at any time.
    • Userspace - Sets the frequency at the user specified one. This governor returns the user configured frequency if there has been an input to /sys/devices/.../power/devfreq_set_freq. Otherwise, the governor does not change the frequnecy given at the initialization.
    • Blu_active - This allows you to get a full dynamic cpu frequency capable system by simply loading your cpufreq low-level hardware driver, using the 'interactive' governor for latency-sensitive workloads.
    • Nightmare (NEW 5/15) - This is a PegasusQ modified, less aggressive and more stable. A good compromise between performance and battery. In addition to the SoD is a prevention because it usually does not hotplug.
    • Darkness (NEW 5/15) - It's based on nightmare but more simple and fast, basic configs but very complex structure. It is an updated nightmare gov and improved stability, so far it is quite stable in tests.
    • Chill (NEW 5/15) - Use the CPUFreq governor 'chill' as default. This allows you to get a full dynamic frequency capable system by simply loading your cpufreq low-level hardware driver. A conservative based governor that aims to provide more aggressive battery savings while screen is off.
    • Dance Dance (NEW 5/15) - Based on conservative with some smartass features, it scales accordingly to conservatives laws. So it will start from the bottom, take a load sample, if it's above the upthreshold, ramp up only one speed at a time, and ramp down one at a time. It will automatically cap the off screen speeds to 245Mhz, and if your min freq is higher than 245mhz, it will reset the min to 120mhz while screen is off and restore it upon screen awakening, and still scale accordingly to conservatives laws. So it spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It is a performance focused governor but also blends with some battery savings.

    Adreno Idler Information:
    • Enabled - Uses a different calculation method on top of Adreno TZ just for calculating frequency for idle to reduce the wasted power coming from stock Adreno TZ while maintaining high-performance.

    Other Information:
    • Moved Core Control To Kernel - Moved core control from out-of-tree module into the kernel proper. Core control monitors load on CPUs and controls how many CPUs are available for the system to use at any point in time. This can help save power. Core control can be configured through sysfs interface.
    • Moved Core Control Trace Events To Scheduler
    • Added A Knob To Disable The core_ctl (Core Control) - The CPU hotplug tests does not work with core_ctl compiled statically into kernel. Provide an interface to disable the hotplug by core_ctl.
    • Enabled LZ4 Compression & Added ExFAT Filesystem
    • Fixed Various Issues

    Source Code: https://github.com/SaintZ13/obar_kernel
    6
    Alright guys OBAR is back better than ever! Whats new you say, well OBAR is completely re-developed off of the ZV6 base! Slimmer, Hotspot hack, data on initial boot, and our very own KERNEL!! Please read second post all about the kernel :). ROM is uploading so please be patient!

    EDIT: Kernel and ROM now uploaded, enjoy everyone :)
    5
    How do i dl it? "404 error file not found"..or has this rom been abandoned..

    Its under heavy re-development right now, you may join he channel above to test the betas. I will have a new build for public release next week. Got something huge planned :). Stay tuned.
    4
    Okay guys I was finally able to mod it up and make it a very worthy ROM. Enjoy!