[ROM][XXP][O][8.1.0_r42][LINARO] OmniROM [20180829]

Search This thread

deepongi

Recognized Developer
Jul 12, 2008
6,097
15,096
41
Portugal
OnePlus 9
Samsung Galaxy Watch 5

omnilogo_thread.png


XXP/DORA/F8131 OmniROM UNOFFICIAL LINARO BUILDS

OREO 8.1.0_r42

Kernel: 4.4.144

infected_ current build: 20180810 - kernel compiled with gcc linaro 5.5

DOWNLOAD

dic1911 current build (Stock Toolchain + Framework Optimization): 20180829

DOWNLOAD

CURRENT ISSUES:

- You tell me.

KERNEL CODE COMPILED WITH LATEST LINARO AARCH64-LINUX-GNU 5.5 (201711)

KERNEL SOURCE: https://github.com/infectedmushi/android_kernel_sony_msm-omni/tree/android-8.0

BUGS REPORT

REPORT BUGS ONLY:

- AFTER A CLEAN INSTALL
- USING STOCK KERNEL
- NO MODS OF ANY SORT

OMNI GERRIT REVIEW

https://gerrit.omnirom.org/

BUILDBOT:

(amd ryzen 2700x @ stock, msi x470 gaming pro carbon, 16gb g.skill ripjaws v red 3000mhz cl16, msi gtx 1070, 1x samsung ssd 850 evo 500gb + 1x samsung ssd 850 evo 250gb + 1x samsung ssd 860 evo 500gb + 1x toshiba/ocz ssd tr-150 240gb, 3x western digital wd10ezex 1tb hdd, 1x seagate 2tb hdd, silverstone olympia 1000w psu, antec 1200 high-tower)
(wc setup: ekwb supremacy evo amd cpu-block, ek coolstream xtx 240 radiator, 2x scythe slipstream 120mm 1900rpm fans, swiftech mcp355 water-pump, danger den 5.25" reservoir bay)

DISCLAIMER:

These builds are freshly compiled/synced from OmniROM open-source code.

XDA:DevDB Information
XXP/DORA/F8131 OmniROM UNOFFICIAL LINARO BUILDS, ROM for the Sony Xperia X Performance

Contributors
infected_, dic1911
Source Code: https://github.com/omnirom

ROM OS Version: 8.x Oreo
ROM Kernel: Linux 4.x
ROM Firmware Required: TWRP Recovery
Based On: OMNI/AOSP

Version Information
Status: Nightly

Created 2017-10-15
Last Updated 2018-08-29
 

deepongi

Recognized Developer
Jul 12, 2008
6,097
15,096
41
Portugal
OnePlus 9
Samsung Galaxy Watch 5
Reserved

Raw Instructions:

- download latest build, latest ODM, and both twrp files (img + zip)
- fastboot boot twrp-3.2.1-20171218-boot-dora.img
- enter recovery (with the phone off, press volume down + power button at same time for a brief second)
- wipe all things, flash build, flash gapps, and flash recovery zip = twrp-3.2.1-20171218-fota-dora.zip
- adb push v10_tone_oreo.img /sdcard
- adb shell into the device, and: cd sdcard; dd if=v10_tone_oreo.img of=/dev/block/bootdevice/by-name/oem;
- reboot and you should be all set! enjoy.
 

Attachments

  • Screenshot_20171015-064308.png
    Screenshot_20171015-064308.png
    114.4 KB · Views: 5,363
  • Screenshot_20171015-064312.png
    Screenshot_20171015-064312.png
    136.9 KB · Views: 5,212
  • Screenshot_20171015-064331.png
    Screenshot_20171015-064331.png
    141 KB · Views: 5,177
  • Screenshot_20171015-064341.png
    Screenshot_20171015-064341.png
    84.5 KB · Views: 4,646
  • Screenshot_20171015-064348.png
    Screenshot_20171015-064348.png
    80.9 KB · Views: 4,544
  • Screenshot_20171015-064533.png
    Screenshot_20171015-064533.png
    75.4 KB · Views: 4,380
  • Screenshot_20171015-064620.png
    Screenshot_20171015-064620.png
    129.2 KB · Views: 4,192
  • Screenshot_20171015-064624.png
    Screenshot_20171015-064624.png
    91.8 KB · Views: 4,001
  • Screenshot_20171015-064706.png
    Screenshot_20171015-064706.png
    99.6 KB · Views: 3,858
  • Screenshot_20171015-065307.png
    Screenshot_20171015-065307.png
    107.8 KB · Views: 3,907
Last edited:
  • Like
Reactions: jamafoo

deepongi

Recognized Developer
Jul 12, 2008
6,097
15,096
41
Portugal
OnePlus 9
Samsung Galaxy Watch 5
Reserved

F.A.Q (Frequently Asked Questions)

What is the difference between these builds and the official builds?

These are unofficial builds of OmniROM for the Xperia X Performance (F8131)

ROM is built using the same source code (github) like the official one but with these following additions:
  • Compiled using linaro aarch64-linux-gnu 5.4.1 (kernel code) & ubertc aarch64-linux-android 4.9.x (rom code) toolchain compilers
  • May contain some custom cherry-picks. Always see changelog for details.
  • Cross-compiled using those custom toolchains results in a more smoother, faster, and battery friendly ROM

What is Toolchain?

To compile any Android project like a kernel or ROM, developers need to use a toolchain. As per elinux.org, a toolchain is a set of distinct software development tools that are linked (or chained) together by specific stages such as GCC, binutils and glibc (a portion of the GNU Toolchain). Toolchains may contain a debugger or a compiler for a specific programming language as C++ or other. Quite often, the toolchain used for embedded development is a cross toolchain, or more commonly known as a cross compiler. All the programs (like GCC) run on a host system of a specific architecture (such as x86) but produce binary code (executables) to run on a different architecture (e.g. ARM).

The most commonly used toolchain is GCC, initially released almost 20 years ago. A lightly modified GCC is used by Google during the AOSP build process. While Google’s GCC is considered to be the most stable toolchain around, it has some pretty decent competitors like Linaro and SaberMod. These projects are known to boost the overall system performance significantly on many devices. Let’s take a quick look to see the background of these projects.
Source: http://elinux.org

What is UBERTC?

From where UBERTC is coming from, from lead developer words:

UBERTC Background/History

After years of using different custom toolchains like Linaro and SaberMod, I found there were things I liked about both of them but also things that didn't sit quite as well with me. SaberMod always seemed to have UI lag (especially in scrolling) but opened apps well and Linaro always seemed to be buttery smooth but had terrible app opening speed. Linaro battery was also worse for me than SaberMod. After going back and forth between toolchains I finally had this epiphany! Why not just take all of the best parts of all toolchains and merge them into one? So I began bringing up my own toolchain from gnu.org. At first I patched in all of the AOSP toolchain pactches (much like how SaberMod did it originally however it is important that you realize that No! I did not copy and paste SaberMod into my source I'm simply stating that I used their idea of merging aosp into gnu.org) to my source. Then I went through and added all of the linaro patches that I could to the source. I also made sure that I had the very latest of every toolchain component. I then made very minimal changes to the aosp toolchain build folder to allow for building with these newer toolchain components and UBERTC was born!!! (Note: both Linaro and SaberMod both made lots of modifications to the toolchain build folder, UBERTC is the closest to the aosp build process)
Source: https://plus.google.com/communities/112152563785863538123

What is Linaro?

Linaro is the place where engineers from the world's leading technology companies define the future of Linux on ARM. The company is a not-for-profit engineering organization with over 120 engineers working on consolidating and optimizing open source software for the ARM architecture, including the GCC toolchain, the Linux kernel, ARM power management, graphics and multimedia interfaces.

Source: http://www.linaro.org/linux-on-arm/


Optimization Flags in GCC
What are flags?
For compilers such as GCC, flags are essentially options. A flag can enable or disable an option or feature that is used when compiling (building) code.

What are optimizations?
Optimizations, in the context of compiler flags, are flags that improve some aspect of the code, whether it be size, speed, memory use, and debugging, among other possibilities.

General Optimizations
These optimizations are basic flags in GCC, typically implemented into projects to improve an aspect of the final compiled code.

-O1: Optimization level 1, very basic optimizations, rarely used.
-O2: Optimization level 2, basic optimizations, most commonly used.
-O3: Optimization level 3, basic + experimental optimizations. Large performance boost, but can produce bugs.
-Os: Optimize for size. Most of the optimizations from levels 1 and 2, with extras added to decrease the size of code.
-Ofast: All Optimizations from levels 1, 2, and 3, with extra fast math optimizations.
Typically produces the most bugs, with a large performance gain.
-Og: No performance boost, optimizes the debugging experience, making errors and
warnings more informative to help developers.
-g0: Disables all extra debugging, usually makes code faster.
-fomit-frame-pointer: Removes frame pointers when they aren’t needed, streamlining the code.
-fipa-sra: Removes unused parameters/variables and replaces parameters with the called value, streamlining the code.
-fkeep-inline-functions: Emits static inline functions, even after they’ve been called.
-fmodulo-sched: Reorders instructions in loops in the most optimal way.
-fmodulo-sched-allow-regmoves: a more aggressive -fmodulo-sched, optimizing loops further by allowing register moves
-fgcse-sm: Moves stores out of loops to decrease the workload of loops.
-fgcse-las: Removes redundant loads after a store to reduce the workload.
-fgcse-after-reload: Removes redundant loads after a reload.
-funsafe-loop-optimizations: Optimize more by making assumptions, can create bugs from loops overflowing.
-fira-hoist-pressure: Decreases size of the code by evaluating register pressure for hoist expressions.
-fira-loop-pressure: Makes code smaller and faster by evaluating the register pressure of loops.
-DNDEBUG: Passes the variable for no debugging.
-flto: Enables link time optimizations (LTO) for improved library and executable performance.

Graphite Optimizations
Graphite is a project within gcc that uses the integer set library (ISL) and the chunky loop generator (CLooG) to improve memory use and optimize loops.

-fgraphite: Performs basic graphite loop and memory optimizations.
-floop-interchange: Switches two nested loops.
-floop-strip-mine: Splits a complex loop into a set nested loops.
-floop-block: Splits a loop into nested loops so that the memory fits into caches.
-fgraphite-identity: Creates a visual polyhedral representation of certain graphite optimizations. with some optimizations from ISL such as dead code removal.
-floop-nest-optimize: Optimizes the order of nested loops for data-locality and parallelism. This flag is experimental
-floop-unroll-and-jam: Enable unroll and jam for the ISL loop optimizer.
-floop-parallelize-all: Use graphite data to find and parallelize loops that can be.

Multithreading optimizations
Make code run in multiple jobs (threads) to use a multicore cpu to its fullest potential.

-ftree-parallelize-loops=n: Run parallelized loops is n number of threads.
-pthread: Use the posix thread system for multi-threading.
-fopenmp: Use the OpenMP thread system for multithreading. Tends to use less ram than posix.

Sanitizer Flags
These flags use libsanitizer for memory optimizations.

-fsanitize=leak: Sanitize memory leaks to reduce memory use
-fsanitize=address: Sanitize memory addresses to reduce memory use
-fsanitize=thread: Sanitize excess threads to reduce memory/cpu use. Only for 64bit.

Hardware Optimizations
These optimizations optimize code for the targets cpu, gpu, or ram.

-marm: Uses the ARM instruction set for executable code, improving performance.
-mthumb: Uses the Thumb2 instruction set, improving compatibility.
-mthumb-interwork: Improves compatibility between Thumb and ARM code.
-march=X: Optimizes code for your CPU’s arch, such as armv6, armv7-a, etc
-mcpu=X: Optimizes code for your specific CPU such as cortex-a15, cortex-a53, etc.
-mtune=X: Refer to -mcpu
-mfpu=X: Optimizes code for your CPU’s FPU such as vfpv3. vfpv4, neon, etc.
-mabi=X: Optimizes code ABI for your CPU, such as 32 or 64
 
Last edited:
  • Like
Reactions: funiewski

deepongi

Recognized Developer
Jul 12, 2008
6,097
15,096
41
Portugal
OnePlus 9
Samsung Galaxy Watch 5

you need to flash odm before, it's like a new vendero blobs partition os sony aosp program

Flash vendor image to your device
Download the vendor image corresponding your device from List of devices and resources.
Unpack the vendor zip file to obtain the vendor image.
unzip SW_binaries_for_Xperia_AOSP_O_MR0_4.4_<release version>_<platform>.zip
Note: Release version should be equivalent to the latest downloaded image version, and platform should match your device.
On your device: Connect the device to your computer in Fastboot mode, by pressing volume up while inserting the USB cable. When the device is in Fastboot mode, the LED on the device will be illuminated in blue.
On your computer: Flash the vendor image by entering the following commands in a terminal window:
fastboot flash oem SW_binaries_for_Xperia_AOSP_O_MR0_4.4_<release version>_<platform>.img
Note: Release version should be equivalent to the latest downloaded image version, and platform should match your device.

convert img with simg2img before

https://developer.sonymobile.com/op...-build-aosp-oreo-for-unlocked-xperia-devices/

check at the bottom.
 

hellyjia

Member
Apr 24, 2017
15
0
writing ‘oem’…
FAILED (remote: Command not allowed)
finished. total time: 4.967s
F8131_41.2.A.7.76_1305-2784_R2D.ftf
 

Top Liked Posts

  • There are no posts matching your filters.
  • 5

    omnilogo_thread.png


    XXP/DORA/F8131 OmniROM UNOFFICIAL LINARO BUILDS

    OREO 8.1.0_r42

    Kernel: 4.4.144

    infected_ current build: 20180810 - kernel compiled with gcc linaro 5.5

    DOWNLOAD

    dic1911 current build (Stock Toolchain + Framework Optimization): 20180829

    DOWNLOAD

    CURRENT ISSUES:

    - You tell me.

    KERNEL CODE COMPILED WITH LATEST LINARO AARCH64-LINUX-GNU 5.5 (201711)

    KERNEL SOURCE: https://github.com/infectedmushi/android_kernel_sony_msm-omni/tree/android-8.0

    BUGS REPORT

    REPORT BUGS ONLY:

    - AFTER A CLEAN INSTALL
    - USING STOCK KERNEL
    - NO MODS OF ANY SORT

    OMNI GERRIT REVIEW

    https://gerrit.omnirom.org/

    BUILDBOT:

    (amd ryzen 2700x @ stock, msi x470 gaming pro carbon, 16gb g.skill ripjaws v red 3000mhz cl16, msi gtx 1070, 1x samsung ssd 850 evo 500gb + 1x samsung ssd 850 evo 250gb + 1x samsung ssd 860 evo 500gb + 1x toshiba/ocz ssd tr-150 240gb, 3x western digital wd10ezex 1tb hdd, 1x seagate 2tb hdd, silverstone olympia 1000w psu, antec 1200 high-tower)
    (wc setup: ekwb supremacy evo amd cpu-block, ek coolstream xtx 240 radiator, 2x scythe slipstream 120mm 1900rpm fans, swiftech mcp355 water-pump, danger den 5.25" reservoir bay)

    DISCLAIMER:

    These builds are freshly compiled/synced from OmniROM open-source code.

    XDA:DevDB Information
    XXP/DORA/F8131 OmniROM UNOFFICIAL LINARO BUILDS, ROM for the Sony Xperia X Performance

    Contributors
    infected_, dic1911
    Source Code: https://github.com/omnirom

    ROM OS Version: 8.x Oreo
    ROM Kernel: Linux 4.x
    ROM Firmware Required: TWRP Recovery
    Based On: OMNI/AOSP

    Version Information
    Status: Nightly

    Created 2017-10-15
    Last Updated 2018-08-29
    2
    D
    Deleted member 4819888
    i flashed 4.9 from from sony website.
    Which one should i use?

    Off topic, but will you update the rom with 4.9 kernel? Because some devs say it will fix a lot of bugs in terms of performance and fix other stuff.
    @oshmoun thanks <3
    flash 4.4 odm
    https://developer.sony.com/file/dow...es-for-aosp-oreo-android-8-1-kernel-4-4-tone/
    4.9 is not ready yet, requires some work
    2
    Sure you flashed correct odm? There are two, one for 4.4 kernel and another for 4.9

    You need to thank @oshmoun for all his work on the tone platform.

    Device is like it is thanks to him.
    1
    Reserved

    Raw Instructions:

    - download latest build, latest ODM, and both twrp files (img + zip)
    - fastboot boot twrp-3.2.1-20171218-boot-dora.img
    - enter recovery (with the phone off, press volume down + power button at same time for a brief second)
    - wipe all things, flash build, flash gapps, and flash recovery zip = twrp-3.2.1-20171218-fota-dora.zip
    - adb push v10_tone_oreo.img /sdcard
    - adb shell into the device, and: cd sdcard; dd if=v10_tone_oreo.img of=/dev/block/bootdevice/by-name/oem;
    - reboot and you should be all set! enjoy.
    1
    The basketbuild.com server is down.
    How can I download OmniROM 8.1.0-20180831?
    If you have a backup, please share it.

    here:

    http://www.mediafire.com/folder/i7knqihld5hfs/dora_omni_8.1

    regards.