New GPU Drivers for Nexus 5 || Compatible with Android 4.4 || Updated 8.8.14 - Nexus 5 General

Qualcomm Snapdragon!
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Updated GPU Drivers for the N5!
About
==============================​
The Nexus 5 has is a powerful device packed with a Snapdragon 2.3ghz CPU and an Adreno 320 GPU that makes your daily activities and gaming a breeze. Well, over the last couple of months of 2014 Qualcomm has been support users with updates to the GPU, improving the graphics, functionality, and stability of your Nexus 5. A benchmark cannot tell you the performance - benchmarks prove none to little about what your GPU is doing, only daily use tells everything.
With these drivers there will be less overheating, more stability and an easier flow of your day ​​
Developers' View
==============================​
Here you will find official links and details about Qualcomm's Project and Developer Resources.
Driver Release Notes​
August 8: User Mode Driver
==============================​This release contains a developer preview of the user-mode driver binaries for Qualcomm Adreno 3xx GPU on Nexus 4, Nexus 5, and Nexus 7 devices running Google Android 4.4.4 KitKat. This release includes OpenCL in addition to OpenGL ES. It has been tested with the KTU84P factory image. This release is intended only for developers, and does not meet our customer release quality. Refer to the included release notes for a list of fixes and enhancements.​
Developer Forums
==============================
Here is like the XDA of Qualcomm, remember you need to be a developer and have a registered Qualcomm ID.
Main Page: Qualcomm Developer Network Forums
Adreno Specific: Mobile Gaming & Graphics
Resource & Tools Downloads: https://developer.qualcomm.com/mobile-development/maximize-hardware/mobile-gaming-graphics-adreno/tools-and-resources
​
Downloads
==============================​
Here they are, download them now! They are flashable
Latest
August 8: http://www.androidfilehost.com/?fid=23610159112651930
Revert back to Stock Drivers thanks to @Lethargy : http://www.androidfilehost.com/?fid=23610159112651937​​

Changelogs
Changelog
==============================​
Fixes and Improvements
Fix a failure to release performance counter resources in some cases when using Adreno Profiler with certain NDK apps and OpenCL.
Fix a crash when connecting Adreno Profiler to an app that uses the disjoint timer query extension.
Add support to Adreno Profiler for OpenCL kernel type qualifier arguments.
Add support to Adreno Profiler for clCreateImage() 1D image, 1D image array, 2D image array.
Add support to Adreno Profiler for displaying multiple OpenCL queue/device/context combinations.
Fix a potential target application crash when Adreno Profiler metrics are enabled while the GPU is not idle.
Fix for incorrect scissor results if an app calls scissor and glBufferSubdata() between two draw calls.
Fix an issue with binning configuration calculation when MSAA is enabled.
Add support for ASTC texture formats in Adreno Profiler.
Fix potential null-pointer dereference in OpenCL.
Fix rotation issues with glBlitFramebuffer() and glClipPlane() when device is not in native orientation.
Fix for possible crash when using occlusion query while changing render targets.
Fix incorrect Adreno Profiler capture for applications using 2D texture arrays.
Fix potential crash during VAO validation in buffer update calls.
Add Adreno Profiler support for buffer transmission in clFillBuffer() and clFillImage().
Improve performance when invalidating texture attachments.
The following fixes were included in the June 2014 Adreno driver release for Nexus 4, Nexus 5, and Nexus 7 and are also included in this release:
Return CL_INVALID_MEM_OBJECT in clReleaseMemObj() as per spec.
Improve performance for WebXPRT benchmark.
Eliminate unnecessary resolves when invalidating FBO attachments to improve performance.
The following fixes were included in the May 2014 Adreno driver release for Nexus 4, Nexus 5, and Nexus 7 and are also included in this release:
Add OpenCL libraries.
Fix an issue with return statements in the middle of GLSL shaders causing a GPU hang.
Fix a performance regression in VBO validation.
Improve accuracy of Renderscript kernel execution duration measurements.
Fix crashes in some dEQP test cases.
Improve support for GL_RGB10_A2UI textures in Adreno Profiler.
Fix intermittent pink color tinting with certain WebGL content.
The following fixes were included in the April 2014 Adreno driver release for Nexus 4, Nexus 5, and Nexus 7 and are also included in this release:
Fix an intermittent crash that may happen when running dEQP-GLES2.functional.light_amount.1dir.
Fix rendering corruption in GFXBench Manhattan caused by out-of-sync VBO cache.
Fix small memory leak when waiting for thread termination.
Fix dEQP clipping test failures for point and line primitive types.
Add support for GL_HALF_FLOAT_OES rendering.
Improve RenderScript performance.
Prevent GPU page fault in certain SurfaceFlinger error conditions.
Allow 0 as an argument to the GLSL #line directive, as per spec.
Remove erroneous report of paletted texture formats from the GL_COMPRESSED_TEXTURE_FORMATS query when GL_OES_compressed_paletted_texture is not reported in the extension string list.
Fix a possible segmentation fault in glTexImage2D().
Fix mishandling of trailing whitespace after a GLSL #if directive.
Fix intermittent crashes from GLSL symbol table corruption.
Fix a scenario where performing a glQueryCounter() followed by glGet(GL_TIMESTAMP_EXT) and taking the difference between the two could result in a negative value, wrongly indicating a negative latency between the CPU and GPU.
Fix possible page fault when a shared EGL surface has a depth buffer.
Fix intermittent crash in Chrome browser that sometimes occurred while rotating and locking the device at the same time.
Add thread-safety for EGL images.
Fix Adreno Profiler shader override issues with shaders that use uniforms.
Reset flags for previously bound Transform Feedback buffer after draw call in case it is bound to more than one attribute.
Fix rendering corruption in Basemark Hover.
Fix a crash in the Tumblr app.
Fix intermittent crash in glBufferData() during VBO validation.
Fix rotation-related UI rendering issues in Gunman Clive.
Fix rendering corruption issue with H.265 video.
Fix YUV video rendering issues in Group Play app.
Fix Adreno Profiler conflict with occlusion query.
Fix screen tearing when using virtual displays via the developer options with HW overlays disabled.
Fix small memory leak on thread destruction.
Fix a crash-on-launch with Redline Rush.
Fix performance issues in Arma Tactics.
Allow non-constant indices on attribute vectors, as per GLSL spec.
Fix rendering corruption in GLBenchmark.
Fix eglClientWaitSyncKHR() to correctly use a 0 ms timeout when requested instead of a 1 ms timeout.
Improve glReadPixel() performance in landscape mode.
Fix page fault in dEQP glBlitFrameBuffer() test.
Fix crash-on-launch in Royal Revolt app.
Fix incorrect behavior of glClear() on MRTs.
Fix a crash when EOF immediately follows an #endif directive in GLSL.
Improve performance of aliased VBO updates.
Fix crash in GLES conformance test.
Fix rendering corruption in Unity’s “The Chase” demo.
Fix rendering corruption that occurs when the device is rotated and a visible surface is resized.
Fix for dEQP GLES3 polygon offset tests.
Enforce mutual exclusion of RGB and L for RGB buffers and luminance buffers.
Fix race condition in EGL triggered by certain Android mediaserver scenarios.
Create separate scope for if/if else/else statements in GLSL as per spec.
Fix incorrect conversion of negative float values to FALSE in glGetBoolean().
Reject invalid GLSL version numbers in #version directive.
Allow all integer constant expressions in GLSL #line directives.
Add driver support for EGL_KHR_create_context extension.
Fix rendering corruption with TGCOM24 app.
Fix the total count of uniform samplers when uniform samplers are used both in the vertex and fragment shader.
Fix erroneous compile errors for certain YUV GLSL shaders.
Fix a crash when indexing a sampler by a non-constant index in GLSL.
Fix issues with dEQP transform feedback tests.
Fix miplevel corruptions in conformance tests.
The following fixes were included in the March 2014 Adreno driver release for Nexus 4, Nexus 5, and Nexus 7 and are also included in this release:
Increase the maximum available number of uniform vectors from 251 to 256 for vertex shaders and from 221 to 224 for fragment shaders.
Fix possible lost nodes in GLSL preprocessor symbol table. Under certain conditions, using the #undef directive in a shader could cause other, unrelated symbols to be lost. This fixes a shader issue in The Amazing Spider-Man game from Gameloft.
Fix RBOs with no allocated storage to correctly report a zero sample count.
Fix potential crash when multiple GL contexts are rendering to the same EGL surface and the EGL surface is unmapped. This fixes a possible crash while running Google’s Compatibility Test Suite.
Fix crash in Epic’s Soul demo when adding grapher metrics in Adreno Profiler.
Add processor selection in Renderscript, to measure GPU and CPU execution times and choose the fastest processor for a given kernel to execute.
If a texture is changed in a shared context and the texture is bound or rebound in the current context, then update texture samplers to ensure the changes are visible in the current context, in accordance with Rule 4, section D.3.3 of the OpenGL® ES 3.0 spec.
Fast clear is not compatible with stencil mask, so disable it when stencil mask is enabled.
Allow glBlitFramebuffer() to blit within the default framebuffer if color buffers are for different surfaces.
Do not kill the application in case of GPU reset.
Fix problems with some uniforms in override programs not being set correctly by Adreno Profiler.
Fix handling of GL_RED, GL_RED_INTEGER, GL_RG, and GL_RG_INTEGER texture formats in Adreno Profiler.
Add GL3 constant names to token descriptions in Adreno Profiler.
Fix an Adreno Profiler crash exposed by a change to the way text rendering is implemented in the Android UI framework.
Change Adreno Profiler metric timestamps from milliseconds to microseconds to provide better data for per-rendercall metrics.
Fix a crash when Adreno Profiler is collecting scrubber metrics from a GLES3 app with occlusion querying.
Fix intermittent Adreno Profiler connection timeouts.
Fix intermittent Adreno Profiler disconnects while capturing.
Fix beginning-of-race crash in Asphalt 8.
The following fixes were included in the February 2014 Adreno driver release for Nexus 5 and Nexus 7 and are also included in this release for Nexus 4:
Add Adreno Profiler support for the following pixel data formats: GL_RED,GL_RED_INTEGER, GL_RG, GL_RG_INTEGER, GL_RGB_INTEGER, GL_RGBA_INTEGER.
Add Adreno Profiler support for reporting bin configuration.
Add Adreno Profiler support for uniform buffers.
Improve performance of uniform block look-ups when using Adreno Profiler program overrides.
Add Adreno Profiler support for transform feedback objects, including program overrides.
Add more Adreno Profiler structure version checks to better warn of data structure size differences between Adreno Profiler and driver.
Add Adreno Profiler support for GL_RGB9_E5 texture format.
Add Adreno Profiler support for GL_SRGBA8 texture format.
Add Adreno Profiler support for 2D texture arrays.
Add the ability to identify which GL thread is most active, to automatically select the best thread in the Adreno Profiler.
Fix Adreno Profiler reporting of uninitialized data.
Fix occasional crash of BombSquad (and other multithreaded apps) when connecting Adreno Profiler.
Add Adreno Profiler option to maintain overrides when capturing a new frame.
Fix Adreno Profiler failure with Epic Citadel.
Fix WebGL 1.0.2 conformance test textures/texture-size-limit.html case.
Fix handling of \r line endings in shader source.
The following fixes were included in the January 2014 Adreno driver release for Nexus 5 and are also included in this release for Nexus 7 and Nexus 4:
Add support for GL_EXT_multisampled_render_to_texture extension.
Fix incorrect output with glReadPixels() on an FBO with a texture attachment which is a cubemap face.
Fix incorrect lighting in the UBOTest example from the Adreno SDK. This fix addresses problems with scalar operations on UBOs.
Performance enhancements for rasterizer discard.
Performance enhancements for transform feedback.
Fix issue with graphics driver being unable to find and load Adreno Profiler libraries.
Cleaner handling for internal compiler error cases for UBOs.
Faster rsGetElementAt() and rsSample() runtime performance for programs that access many Allocation objects.
Improved stability when compiling complex RenderScript code.
Allow a count of zero in calls to glDrawBuffers() as per spec.
Fix errors in calculation of 2D texture array slice sizes for NPOT textures.
Generate GL_INVALID_VALUE from glTexStorage2D() and glTexStorage3D() when width, height, or depth exceed supported size.
Fix behavior of glGetFramebufferAttachmentParameteriv() to properly return GL_FRAMEBUFFER_DEFAULT for the default framebuffer instead of returning GL_NONE. (See OpenGL® ES Version 3.0 spec §6.1.13.)
Change glCopyTexImage2D() to prohibit SNORM as a destination format, as per Table 3.15 of the OpenGL® ES Version 3.0 spec.
Relaxed restrictions on the width and height parameters of glCompressedTexSubImage2D() to allow updates of 1x1 and 2x2 miplevels for ETC2/EAC formats. The incoming data buffer must still have its width and height padded to four, as required by ETC2/EAC, but the width and height parameters to the function call may reflect the actual texture dimensions.
Fix a potential double-free of memory inside glLinkProgram().
Fix reported value of gl_MaxVertexTextureImageUnits for GLES 3.0 hardware.
Add support for the following built-in constants in GLSL 3.0:
gl_MaxVertexOutputVectors
gl_MaxFragmentInputVectors
gl_MinProgramTexelOffset
gl_MaxProgramTexelOffset
Fix transposition of u and v coordinates in GLSL textureOffset() and texelFetch() functions.
Fix loss of w coordinate in GLSL textureOffset() and texelFetch() functions.
Fix GLSL matrix constructor to accept an array of matrices.
​

custom rom too

hanschke said:
custom rom too
Click to expand...
Click to collapse
I haven't tried, but it might since its a hardware driver

Hi,
Flashed on Purity rom (AOSP based rom) without any issues...

I just flashed it on Mahdi ROM
Sent from my Nexus 5 using Tapatalk

viking37 said:
Hi,
Flashed on Purity rom (AOSP based rom) without any issues...
Click to expand...
Click to collapse
Great, I will make a rom Compatibility list also As more confirmation comes

I can confirm it working with kangakat and liscio

Works for CM; now Antutu!

Just confirming what was said above. Works fine on both Purity and Mahdi
Sent from my Google/LGE Nexus 5 (Hammerhead) using XDA Premium 4

gpvecchi said:
Works for CM; now Antutu!
Click to expand...
Click to collapse
Thanks, I'm testing a few roms also

works fine with rastakat rom as well

Bad for me ....30 fps More not .....before i had 60 fps ?? ...21000 points ...im on latest cm....my phone gets very hot ...

What exactly will this do? And how do i know it's working properly?

Works with aokp. Running great.
Sent from my Nexus 5 using XDA Premium 4 mobile app

All good on AOSPA BETA4

I see similar files in cm.. Are these meant to overwrite those?

dannyella said:
I see similar files in cm.. Are these meant to overwrite those?
Click to expand...
Click to collapse
Hi,
Yes, obviously...
Sent from my LG-D802 using xda premium

viking37 said:
Hi,
Yes, obviously...
Sent from my LG-D802 using xda premium
Click to expand...
Click to collapse
Lol.. I realized how stupid my question immediately after asking.. Noob user here.. :laugh:

Testing now on cm 1/29

Related

[PROJECT]How to improve graphics performance-Need developers, read post #2!

==========================================================
News and updates in post #2.
==========================================================
*** PLEASE READ CAREFULLY BEFORE INSTALLING OR FLASHING ANY SOFTWARE POSTED IN THIS THREAD ***
The software posted here is for TESTING purposes only! Any of the posters of software, or links to software on this thread take absolutely no responsibility or liability for damage caused by the result of installing or flashing software or links to software found on this thread - correctly or otherwise, you do so on the sole understanding that you do so at your own risk.
==========================================================
WIKI PAGE ABOUT DRIVER DEVELOPMENT FOR MSM720X DEVICES
==========================================================
image courtesy of tsalta. Thanks mate.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Also, try GFXboost. It's cool to see the device CAN go beyond the normal speeds.
Installation: Disable Manila or Titanium before installing the cabfile. It's to make sure there are no files in use when copying the files. If you have an older version of the driverpack installed, best thing to do is a hard-reset. I know, it sucks. But believe me, it's best for your device.
MOD EDIT - Added NeoS, Magnif, Chainfire & topaz driver cabs
Updates and FAQ
Updates:
======================================
22-06-10: Benchmark added by tusuka: http://forum.xda-developers.com/attachment.php?attachmentid=347300&d=1277159324
18-04-10: The MSM chipset needs YOU! Please look at this post if you're interested in continuing driver development!
10-03-10: I retire from driver development for two reasons. 1.) http://forum.xda-developers.com/showpost.php?p=5842057&postcount=1861. and 2.) I've moved on to A Nexus One. Awesome device, twice as good as the Blackstone could ever be. (and not as retardedly big as the HD2 )
11-02-10: Added a signed driverpack to the first post. Hope it'll give improvement on Manila 2.5 roms and no lock-ups... I know my device runs perfectly fine and smooth(er) with the driver.
18-01-10: Benchmark of 4 driverpacks on a stock 6.1 rom. -Thanks FileFixer!
30-11-09: It's done. I officially stop doing anything driver related, until i get more time. I simply lack the time, knowledge and support to keep going on. If you feel like helping out coördinating, send me a pm.
24-09-09: Driverpack 3 released. Please report any bugs on the thread. Here's a benchmark:
21-09-09: GLbenchmark comparison with Driverpack 3 (in development)
16-09-09: Testing new driverpack on Touch HD. Shows improvement in Manila 2.5. Needs to be tweaked further.
26-07-09: New files seem to have shed a whole different light on our current drivers; we need to fully investigate what they do and how to get them working. Updates will be made once we have more info on this subject. Please, have patience!
30-06-09: DriverPack Beta 2 released. Bugfixes done. See here
23-06-09: Updated the F.A.Q. and bugfixing the current BETA pack.
19-06-09: Driver pack BETA released. Find it HERE.
14-06-09: Laurentius26 cooked our drivers in his latest rom and got amazing results: http://forum.xda-developers.com/showpost.php?p=3304864&postcount=4
01-06-09: Created a quick-to-install full cab package for the OpenGL & OpenVG driver combined. Currently being tested by the team.
06-05-09: Set up a Dev & Test team, inviting users with dev skills or something similar.
24-04-09: Finally fruits of labour; the new openVG driver gives improvement combined with a new Libgles_cm.dll.
See: http://forum.xda-developers.com/showpost.php?p=3685655&postcount=793
09-04-09: Testing with the OpenVG driver provided by Fards and itje
05-02-09: User Laurentius26 provided us with a zip containing display driver files from an LG Incite.
28-01-09: Thanks to user Chainfire the list of files on the wiki page is updated. Check it out for more info.
27-01-09: Wiki page started about driver development
13-01-09: User fards uploaded a signed HTCapi.dll for use with the driver, found here: http://forum.xda-developers.com/showpost.php?p=3159939&postcount=196
23-12-08: added minor explanation on what the 3D driver is and does, and how to see performance improvements:
http://forum.xda-developers.com/showpost.php?p=3076202&postcount=153
22-12-08: Added 3D driver link in 1st post.
17-12-08: User iRiKi tested the Libgles_cl wrapper (made by NuShrike, thx mate!) and confirmed it working. He also was so kind to post a video of Heretic_GLES now running on his Diamond.
http://www.youtube.com/watch?v=5t-JX2TSkJI And Cube too! http://www.youtube.com/watch?v=Sc3b9_CT2bw
16-12-08: We're currently looking into the possibility of making a libgles_cl.dll wrapper to support more programs and 3D applications, as well as making more tests work in GLbenchmark. Also, we've come to know that The Android porting team seems to have some fully working ports which might have some answers towards our graphics questions. (so if you're an Android devver, please join the conversation )
11-12-08: User Draxredd pointed out that the hotfix by HTC seems to update ddi.dll, disptools.dll, gxdma.dll and htcmdp.dll. 3 of those files are sure to be used for graphics. Glbenchmark results don't show much performance increase, but it does however fix the slowdowns the HD had.
11-12-08: user lukexda mentioned that the iPhone in this particular case only has a resolution of 480x320 and therefor is faster. Draxredd suggested we use WVGA fix (http://forum.xda-developers.com/showthread.php?t=455974) to correct screen resolution to VGA or lower to see if that makes any difference. An does it! The speed of some tests give a whopping DOUBLE SCORE! Now we know what makes our device sluggish. HTC gave us a device with a great looking screen at the cost of great performance.
However, we're not done in our quest to better the device's graphic performance. So please, keep contributing!
F.A.Q:
I've seen a few questions about this driver that come back each and everytime. So here's a small FAQ for you to read:
Q: What do these drivers do?
A: The original ATI drivers enable you to display 3D graphics on your MSM720X device. The OpenVG driver enables 2D Hardware acceleration on the OpenVG platform. That doesn't mean Windows Mobile's 2D interface will be hardware accelerated! HTC's TouchFlo3D heavily depends on this driver, and every update we bring will be aimed at performance.
Q: Are these solely for MSM720X devices?
A: Yes, since the files used only work with the MSM720X chipset. And not even ALL MSM720X chipsets.
Q: So, which devices are supported?
A: Currently only newer devices: the Kaiser, Polaris, Nike, won't work. This driver is only for Diamond and up. There MAY be more in the future though.
Q: How does one install this driverpack?
A: It's as simple as installing any other app or game, with one exception: You need to disable Touchflo3D/Sense or Titanium before running the installation.
Q: Why?
A: Just to make sure no files are in use when they're overwritten by the driverpack.
Q: Wait, you're overwriting files? How can this be uninstalled then?
A: Technically, it can't, unless you hard-reset or flash another ROM.
Q: Ok, but HOW do I disable and re-enable? TF3D/Sense/Titanium?
A: That's easy. Go to Start>Settings>Today. Then select the Items Tab. Deselect TF3D/Sense/Titanium and press OK. Use the same procedure to re-enable it.
Q: Does this driver improve performance in TomTom, IGO, Video's, Camera, etc?
A: Currently, all this driver does is 3D. TomTom, IGO, videos and such don't use the 3D engine. Most applications on your device are 2D currently, otherwise it wouldn't have worked before. But with the new OpenVG driver it could be possible to get 2D hardware rendering, if the app or game is written using OpenVG code.
Q: I've installed the drivers on my <insert device here>, but TF3D won't run anymore / Opera crashes the device after crashing.
A: This is a known issue with the driver. We're currently investigating on which files cause the issues and try to replace them. Somehow the driverpack doesn't work the same on different devices using the same MSM7201A chipset... <solved in Driverpack 3>
Please don't let me go crazy with that results...So do you mean it's poor in graphic performance???
It's... Average at best. Same as the Diamond and Pro. For now. I'm gonna try and see what i can do to improve it. And i hope some others will aid me in that.
I already got the lights working with Hardware rendering now, but that's too easy. Gonna do some SPB benches...
NeoS2007 said:
It's... Average at best. Same as the Diamond and Pro. For now. I'm gonna try and see what i can do to improve it. And i hope some others will aid me in that.
I already got the lights working with Hardware rendering now, but that's too easy. Gonna do some SPB benches...
Click to expand...
Click to collapse
is it a huge different talking about the screen?? I mean, watching a movie or something is totally different or it's kinda the same?
What about trying VSBenchmark ( Link to vsBenchmark )
danny_and_2 said:
What about trying VSBenchmark ( Link to vsBenchmark )
Click to expand...
Click to collapse
hmm. VSbenchmark won't run. No errors, but it just hangs.
Found an interesting registry setting:
HKLM\software\HTC\VelocityEngine\3D\Enable=0
I set it to 1. I don't see any big improvements or whatever. yet...
From what I've been reading HTC shipped the HD with the MS reference driver for the graphics.
Once the rom cookers get cracking I'm sure the driver update will be part of that.
With the Touch Cruise/Polaris, this made a gigantic difference in graphics performance and smoothnes of the interface.
I don't really get why the heck HTC won't install up to date and up to snuff drivers in new devices. It bites.
With a big screen like the HD, you need good graphics drivers.
I do have to say though that the performance of the HD is rather good compared to other HTC devices in the office. Especially for first release level firmwares
Well, I received my HD and display didn't impress me that much! Brightness is not impressive, Diamond and iPhone are better, colors and text seems to be faded. The white has a warm colour temperature...
Any one had the same impressions?
yes i wish there would be a way to increase brightness!!
It won't be easy to patch this driver for the HD. The Polaris and Kaiser driver were rev. 1 drivers. The Diamond and up are rev. 2. This means LOTS of low level coding and WAY more time consuming.
And the Polaris and Kaiser drivers themselves are still under development, so don't expect anything from the people who work on those drivers. (as far as i know, i'm the only one who got myself an HD)
The driver seems to work pretty similar to the Polaris (my old device) and as I said earler, i got Lights.exe to work on hardware rendering. But that's pretty much it. No improvements on speed or anything. I will however see how far i can push this myself.
...no! it looked to me gorgeous. what's your problem?
pzucchel said:
...no! it looked to me gorgeous. what's your problem?
Click to expand...
Click to collapse
If you refer to display...not so gorgeous...I remember the X7500 one more brightness than HD one.
asci said:
If you refer to display...not so gorgeous...I remember the X7500 one more brightness than HD one.
Click to expand...
Click to collapse
have you tried to manually set brightness ? it seem the lightsensor is'nt so efficent ...
Ciao Stesa...
Yes, I did, is the very first thing I do when I unbox all of them...At least from X7500
About the light sensor, it seems to work differently from the Diamond one, but I found it more reactive and the changes according to the ambient brightness value are more evident.
Thought I'd post this as a comparison with the SE X1
This was my glbench from this afternoon, it seems a bit worse than the HD, I'm not certain what's going on but from teh lights parallel down it starts to struggle in comparison.
GLBenchmark Pro Result Details
3D Rendering Quality: Bilinear Filter : 96% (Success)
3D Rendering Quality: Perspective Correction : 100% (Success)
3D Rendering Quality: Sub Pixel Precision : 95% (Success)
3D Rendering Quality: Trilinear Filter : 89% (Fail)
3D Rendering Quality: Z-buffer Precision : 99.1% (Success)
CPU Performance: Float : 781
CPU Performance: Integer : 8173
Fill Rate: Multi-Textured, 2x2 : 15206 kTexels/s
Fill Rate: Multi-textured, 4x2 : 17203 kTexels/s
Fill Rate: Single-textured, 4x1 : 20122 kTexels/s
GLBenchmark HD ES 1.0 : 542 Frames
GLBenchmark HD ES 1.1 : Failed / Not supported
GLBenchmark Pro ES 1.0 : 84 Frames
GLBenchmark Pro ES 1.1 : Failed / Not supported
Lights: Ambient x 1 : 113397 Triangles/s
Lights: Omni x 1 : 53123 Triangles/s
Lights: Parallel x 1 : 118505 Triangles/s
Lights: Parallel x 2 : 287069 Triangles/s
Lights: Parallel x 4 : 282983 Triangles/s
Lights: Parallel x 8 : 287069 Triangles/s
Lights: Spot x 1 : 50058 Triangles/s
Swapbuffer speed : 280
Texture Filter: LINEAR : 282983 Triangles/s
Texture Filter: LINEAR_MIPMAP_LINEAR : 285026 Triangles/s
Texture Filter: LINEAR_MIPMAP_NEAREST : 287069 Triangles/s
Texture Filter: NEAREST : 287069 Triangles/s
Texture Filter: NEAREST_MIPMAP_LINEAR : 287069 Triangles/s
Texture Filter: NEAREST_MIPMAP_NEAREST : 287069 Triangles/s
Texture Size: 1024x1024 : 287069 Triangles/s
Texture Size: 128x128 : 287069 Triangles/s
Texture Size: 256x256 : 280940 Triangles/s
Texture Size: 512x512 : 285026 Triangles/s
Texture Size: 64x64 : 287069 Triangles/s
Triangles: Flat Shaded + Color : 282983 Triangles/s
Triangles: Smooth Shaded + Color : 288091 Triangles/s
Triangles: Textured : 289112 Triangles/s
Triangles: Textured + Color : 289112 Triangles/s
OpenGL ES Environment Variables
GL_VENDOR QUALCOMM, Inc.
GL_VERSION OpenGL ES-CM 1.0
GL_RENDERER Q3Dimension MSM7500W 01.02.03 0 5.1.2
GL_EXTENSIONS GL_OES_byte_coordinates GL_OES_read_format GL_OES_fixed_point GL_OES_single_precision_commands GL_OES_compressed_paletted_texture GL_OES_matrix_palette GL_OES_point_sprite GL_OES_point_size_array GL_ARB_vertex_buffer_object GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_ARB_texture_env_crossbar GL_ARB_texture_mirrored_repeat GL_EXT_stencil_wrap GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_blend_func_separate GL_EXT_blend_equation_separate GL_ATI_texture_compression_atitc GL_ATI_extended_texture_coordinate_data_formats GL_OES_draw_texture
GL_RED_BITS 5
GL_GREEN_BITS 6
GL_BLUE_BITS 5
GL_ALPHA_BITS 0
GL_DEPTH_BITS 16
GL_STENCIL_BITS 0
GL_SUBPIXEL_BITS 2
GL_MAX_LIGHTS 8
GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 6407
GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 33635
GL_MAX_MODELVIEW_STACK_DEPTH 16
GL_MAX_TEXTURE_STACK_DEPTH 2
GL_MAX_PROJECTION_STACK_DEPTH 2
GL_MAX_TEXTURE_SIZE 1024
GL_MAX_TEXTURE_UNITS 2
GL_MAX_PALETTE_MATRICES_OES 48
GL_MAX_VERTEX_UNITS_OES 4
GL_MAX_VIEWPORT_WIDTH 640
GL_MAX_VIEWPORT_HEIGHT 480
GL_NUM_COMPRESSED_TEXTURE_FORMATS 10
GL_ALIASED_LINE_WIDTH_MIN 1
GL_ALIASED_LINE_WIDTH_MAX 1
GL_ALIASED_POINT_SIZE_MIN 1
GL_ALIASED_POINT_SIZE_MAX 32
GL_SMOOTH_LINE_WIDTH_MIN 1
GL_SMOOTH_LINE_WIDTH_MAX 1
GL_SMOOTH_POINT_SIZE_MIN 1
GL_SMOOTH_POINT_SIZE_MAX 32
EGL Native Platform Graphics Interface
EGL Vendor ATI Technologies, Inc.
EGL Version __EGLI__VERSION_MAJOR.__EGLI__VERSION_MINOR 2.07.050110.34681
EGL Extensions EGL_QUALCOMM_COLOR_BUFFER
EGL Selected Configuration
EGL_CONFIG_ID: 3
EGL_BUFFER_SIZE: 16
EGL_ALPHA_SIZE: 0
EGL_BLUE_SIZE: 5
EGL_GREEN_SIZE: 6
EGL_RED_SIZE: 5
EGL_DEPTH_SIZE: 16
EGL_STENCIL_SIZE: 0
EGL_CONFIG_CAVEAT: 12344
EGL_LEVEL: 0
EGL_MAX_PBUFFER_HEIGHT: 0
EGL_MAX_PBUFFER_PIXELS: 0
EGL_MAX_PBUFFER_WIDTH: 0
EGL_NATIVE_RENDERABLE: 0
EGL_NATIVE_VISUAL_ID: 0
EGL_NATIVE_VISUAL_TYPE: 12344
EGL_SAMPLES: 0
EGL_SAMPLE_BUFFERS: 0
EGL_SURFACE_TYPE: 5
EGL_TRANSPARENT_TYPE: 12344
EGL_TRANSPARENT_BLUE_VALUE: 0
EGL_TRANSPARENT_GREEN_VALUE: 0
EGL_TRANSPARENT_RED_VALUE: 0
Device Information
Device Name X1i
Device ID xxxxxxxxxxxxxxxxxx
Platform Name PocketPC
Platform ID 3
OS Windows Mobile
OS Build 19608
OS Version Major 5
OS Version Minor 2
CPU Vendor QUALCOMM
CPU Name
CPU Core MSM7200A-528MHz
CPU Instruction Set 0
CPU Type 2577
Reported CPU Architecture 5
Number of CPUs 1
Total Memory 210214912
Memory Page Size 4096
Screen size 480 x 800
System Color Bits 16
System Colors 65536
Nice! I see the performance of the X1 almost matches the HD. This could mean that a possible video driver could ALSO work on the Xperia.
I'm currently trying to see if the P3D driver can be of some use for the HD. I think it can, but it needs major alterations.
asci said:
Well, I received my HD and display didn't impress me that much! Brightness is not impressive, Diamond and iPhone are better, colors and text seems to be faded. The white has a warm colour temperature...
Any one had the same impressions?
Click to expand...
Click to collapse
No Sunny day today in Greece brightness just fine. maybe uncheck the autobrightnes??? a bit slow some times.
(sorry for my bad english)
I've doing some tests with the HTC-CA-Kaiser driver on the Blackstone.
I'am using the D3DM_ati.dll from this package. Lights.exe, D3DMdemo.exe and Triangle.exe running excellent.
Lights.exe tells me:
Hardware Rasterization: True
Hardware T&L: true
Triangles about 250-270 frames/sec.
Then i tested the Diamond Hologram. To make it running i've copy the HTCAPI.DLL into \WINDOWS\ folder.
It runs excellent!
TFLO3d also runs absolutly perfect!
But GLbenchmark won't run, even with original driver and the Omnia driver.
The first test ist running but the others not.
@NeoS2007
How have you managed to start glbenchmark?

[KERNEL] [GPL] [OTG] [Linaro] [-Ofast] [HOLOYOLO] [17 May 13] Community Kernel

GOAL
The goal of this kernel is to have a central place for developers in the community, who don't want the burden to maintain their own kernel, to have a place to do so. Many times, developers who work on these devices constantly develop issues with others or don't have time to incorporate new features. Our goal is to avoid all that. Anything and everything will be accepted, granted it doesn't break anything. @show-p1984 has been kind enough to not only host the source but grant the use of his buildbot for this project. Every time source is pushed, the bot will start to build the kernel, zip up the package and finally upload it to my goo.im account. If you'd like to become part of this project then go ahead and reach out to me on twitter (@jassycliq) or PM me on here. My short term goal for this kernel is to add all the hotplug drivers available for mako and incorporate them into this one kernel. As it stands we can only use Qcom's binary, show's mpdecision and faux123's intelli-plug as they have switches to turn them off. These can be changed on the fly, as long as the user turns off all the hotplug drivers first then turns on the desired hotplug method. I'd also like to have an app that can control this, well a proper application to be exact.
Features
* CPU OC up to 1.9ghz, Default to 1.5GHz
* CPU UC down to 162mhz
* UV down to 600,000uVolts
* Intelli-plug hotplug driver
* Qualcomm's MPDecision
* MSM MPDecision (kernel based mpdecision)
* Dynamic FSync
* Sweep2Wake
* Snapdragon S4 and Krait optimizations
* 3-Phase Thermal
* GPU OC up to 487mhz
* Faux's Gamma Interface
* Faux Sound/Speaker Control
* Fast Charge
* Schedulers
FIOPS
SIO
NOOP
ROW
CFQ
DEADLINE (tuned for flash devices)
* Governors:
DanceDance
Interactive
Ondemand
Performance
* Advance TCP Congestion Control
Westood+
Reno
Bic
Cubic
Htcp
Veno
* Compiled with gcc 4.7.3 (Linaro 4.7-2013.04)
* -Ofast optimized
* WLAN, TUN and CIFS compiled as modules due to size of kernel from the high amounts of optimizations
* OTG support
* Too much to write!
Choosing between the 3 hotplug drivers
This kernel comes with 3 hotplug drivers (intelli-plug, qcoms mpdecision and kernel based mpdecision) by default only Qualcomm's MPDecision is used. To turn one of the others you must use their respective sysfs interfaces after turning off the one's you're not using. To make it easier for you, I have included a small little application that helps you turn through this. If you'd like to make an init.d script to choose which one you want on boot then use the following commands
For kernel based mpdecision
Code:
echo "0/1" > /sys/kernel/msm_mpdecision/conf/enabled
echo "0/1" > /sys/kernel/msm_mpdecision/conf/scroff_single_core
For Intelli-Plug
Code:
echo "0/1" > /sys/module/intelli_plug/parameters/intelli_plug_active
echo "0/1" > /sys/module/intelli_plug/parameters/eco_mode_active
For Qualcomm's MPDecision
Code:
start mpdecision
stop mpdecision
Downloads
http://goo.im/devs/jassycliq/mako
Why do I have no WLAN?
Due to this kernels very high optimization settings it is too big for our boot.img with WLAN included into the kernel, so it is built as a module. That means it needs to be inserted into the kernel upon boot up, which needs to be automated for maximum comfort = userinit (init.d) support.
The zip adds init.d support to your ramdisk, if that fails for some reason the wlan module cannot be inserted.
if
Code:
adb shell lsmod
doesn't show this:
Code:
tun 14701 0 - Live 0x00000000
cifs 275399 0 - Live 0x00000000
wlan 2964650 0 - Live 0x00000000 (C)
Then init.d support is probably missing.
You can test it by going to /system/etc/init.d/ and executing 00wlan.
Code:
adb shell
su
. /system/etc/init.d/00wlan
Wait a few seconds and try to enable wifi and repeat the above lsmod command (should now show wlan, you can execute 01cifs and 02tun too).
If WLAN now works, init.d support is missing.
You need to have busybox installed in order to be able to get init.d support going, this shouldn't be a problem for most people, since it is usually installed when rooting your phone anyway.
It does not matter if busybox is installed in /system/bin or /system/xbin, my script will detect the location upon flashing and patch the ramdisk accordingly.
If no busybox is found, the script will add init.d support to your ramdisk with the default location: /system/xbin/busybox. All you need to do is install busybox there and reboot your phone.
Changelog:
8 May 2013​
Code:
4c59771 defconfig: Update defconfig.
596b56b cpufreq: Add smartmax. Let's test this, see how it does.
1cb9bb0 msm: cpufreq: Always update frequency limits when core is online
d822b01 msm_mpdecision: boost: detect changed min frequency and update accordingly
213609a msm_mpdecision: tune hotplug values
7 May 2013​
Code:
cfcfcbe4 Revert "msm: kgsl: Add GFP_NORETRY to the page_alloc flags and handle errors"
4750928 defconfig: Update for new touch_boost feature for kernel based mpdecision.
085ba61 msm: kgsl: Reduce cmd buffer size for adreno_iommu_setstate
caed023 msm: kgsl: Fix hang detection to be 50ms or more
bf9a788 msm: kgsl: Add minimum amount of wait in adreno_waittimestamp
28780a3 msm: kgsl: Lower bounds check the number of power levels
3a7120b msm: kgsl: Avoid NULL pointer in adreno setstate functions
5db5ceb msm: kgsl: Fix guilty context logic for GPU hangs
eab59a3 msm: kgsl: Remove an uneeded register write for A3XX GPUs
da07ff9 msm: kgsl: Remove non-critical error messages
f33358f msm: kgsl: unprepare clocks when we move from NAP to SLEEP
3efbea6 msm: kgsl: Do not allocate space in ringbuffer for hung context
f41b6a2 msm: kgsl: Do not save context if it is being destroyed
b1d7357 fix error
d663e19 msm_fb: display: update var in display commit
f2c1e69 msm: display: non-blocking for overlay update
6fe5638 msm: kgsl: Remove extra interrupts when setting MMU state
7e8a134 msm: kgsl: Support user specified timeouts in adreno_waittimestamp
cf18f63 msm: kgsl: Move the adreno WPTR poke logic to the hang detection
6a808d0 msm: kgsl: Invalidate base pointers when tlb is flushed
a8bafcd msm: kgsl: Add GFP_NORETRY to the page_alloc flags and handle errors
cef0287 msm: kgsl: Fix adreno idle detection during hang
29916e4 msm: kgsl: Do not check for hang when graphics core is idle
01c3627 msm_mpdecision: input event boost: fix not resetting boost if cpu was unplugged before
643164e msm_mpdecision: add sysfs interface for input event boost
55f7b76 msm_mpdecision: add input event boost [read more]
5 May 2013​
Code:
6c31838 defconfig: trying -Ofast flag really quick
8684551 workqueue: silence 'warning: array subscript is above array bounds'
832bfbb Makefile: add -Ofast
230f31c Revert "mako LCD: keep RGB custom colors alive after screen off/on"
0a8b0db input: lge: re-work the patches I just reverted to fix a bug that was causing some leaks and some IRQ exceptions during screen on.
2f521e9 Sound Control: Added headphone poweramp controls
b9451d3 af_unix: use freezable blocking calls in read
74e437e sigtimedwait: use freezable blocking call
a479733 nanosleep: use freezable blocking call
b7b7d43 futex: use freezable blocking call
87e9542 select: use freezable blocking call
ce6c00a epoll: use freezable blocking call
abeafac binder: use freezable blocking calls
3995281 freezer: add new freezable helpers using freezer_do_not_count()
ff4bd25 freezer: skip waking up tasks with PF_FREEZER_SKIP set
23f2b45 freezer: shorten freezer sleep time using exponential backoff
6f57272 defconfig: Add new defconfig for test branch. Release 1.
74681b3 mach-msm: msm_mpdecision: default off. We will boot using Qualcomm's binary. Change zip to mirror this.
f063703 defconfig: Lower min clock, enable mpdecision (which I was advised could be turned off with 2 commands) so we will boot up with that as
d413876 auto_hotplug: Prepare for being able to run alongside show-p1984's mpdecision.
0919ae2 defconfig: Turn off auto-hotplug until it can be turned off and compiled alongside the other hotplug drivers.
38bbd31 Restrict slave mountspace so Dalvik apps can mount system-wide volumes
31cbf8b auto_hotplug: rev 4 - let's lean a little more towards performance.
4e4adbb auto_hotplug: stack the deck on auto_hotplug_late_resume to get things moving quickly again
e04373f auto_hotplug: parameter validation for max_online_cpus
751eb27 auto_hotplug: enhancements (rev 3)
9367500 auto_hotplug: enable the min_online_cpus value
689e712 auto_hotplug: enhancements (rev 2)
af7748f auto_hotplug: enhancements
5a17cb6 arm: auto hotplug - wrap all pr_info into the existing debug mode so we don't spam the kernel log
937748e Change dependencies to allow kernel to be built with ARM hotplug, and without MSM_RUN_QUEUE_STATS. These are only needed for proprietary
2527619 arm: Add auto hotplug driver
637ffac mm: vm_swappiness set to 20 (down from the default 60) since we have plenty of RAM on the Nexus 4
1e4db08 ARM: remove NWFPE and VFP emulation code from the kernel
3291b82 usb: otg: Fix? for compiling with OTG. If its wrong, I hope someone can help here.
Big thanks to @show-p1984, he really kick started this project.:highfive: One night I received a PM from him asking if I'd like to take this challenge on. He also helped me out a ton while setting up the repo and build. He really has been a great help.
Others I'd like to thank for their source, commits, hardwork, blood and tears:
@faux123
@francisco.franco
@_motley
@morfic
@Harsh
@r_data
@semaphore (or the creator of it)
@intersectRaven
@mathkid95 sorry for taking so long in adding you
Source
https://github.com/jassycliq/mako/commits/master
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
https://github.com/jassycliq/mako/commits/test
Thanks for starting this, seems a good idea. Question: are these builds tested before they are uploaded?
wow new kernel for mako, will try it man
Goodluck.
gianton said:
Thanks for starting this, seems a good idea. Question: are these builds tested before they are uploaded?
Click to expand...
Click to collapse
No, but as it stands right now nothing has changed that would be broken. In the future the test folder should be treated like a nightly build and the master folder should be treated like a stable build.
BTW I'm running the first one on that folder. The only change the newest one had is that it fixes an error where mpdecision was renamed, but now that we default to that, we don't want that to happen.
Sent from my Nexus 4 using Tapatalk 2
Just a question. I already flashed but does this have any of those modules /drivers that increase touch screen sensitivity? Considering it is compiled from every other kernel I would think so, but I'd just like to make sure
Sent from my Nexus 4 using xda app-developers app
Ranaquajaro said:
Just a question. I already flashed but does this have any of those modules /drivers that increase touch screen sensitivity? Considering it is compiled from every other kernel I would think so, but I'd just like to make sure
Sent from my Nexus 4 using xda app-developers app
Click to expand...
Click to collapse
It has Faux's patch. I will implement Franco's tomorrow or some other day. I'd like to have more than one commit for a change.
jassycliq said:
It has Faux's patch. I will implement Franco's tomorrow or some other day. I'd like to have more than one commit for a change.
Click to expand...
Click to collapse
No worries just wondering. Great work by the way
Sent from my Nexus 4 using xda app-developers app
Any reason why i lost wifi? I flashed coming from franco kernel first i flashed the kernel reset then your kernel no wifi then i flashed your kernel again and no wifi?
NEXUS⁴
casonswag said:
Any reason why i lost wifi? I flashed coming from franco kernel first i flashed the kernel reset then your kernel no wifi then i flashed your kernel again and no wifi?
NEXUS⁴
Click to expand...
Click to collapse
Check OP, it goes over this.
Since the kernel is highly optimized WiFi, TUN, and CIFS need to be built as modules. Because of this, we use init.d scripts to load them at boot, this requires busybox. You can check if it loaded by typing the following in terminal:
lsmod
If it doesn't say WLAN, then the WiFi module needs to be loaded manually by typing this in terminal:
su
./system/etc/init.d/00wlan
If that works then try updating your busybox it might have an issue. Also if you have another init.d that starts with 00 change the wlan to 08wlan
Sent from my Nexus 4 using Tapatalk 2
Is it possible to add a changelog somewhere and add the direct link to it to the first post (like Franco does)?
Would be great, thanks!
jassycliq said:
GOAL
....
Features
....
* OTG support
* Too much to write!
...
Click to expand...
Click to collapse
and OTG would be using Y-Cable only right?
Is it already included or planned feature?
Thanks again for a wonderful combo :good:
SudevG said:
and OTG would be using Y-Cable only right?
Is it already included or planned feature?
Thanks again for a wonderful combo :good:
Click to expand...
Click to collapse
Yes with Y-Cable. Well, unless I missed something the code is there, so it'd be something small like a missing file or something.
Sent from my Nexus 4 using Tapatalk 2
MaluNoPeleke said:
Is it possible to add a changelog somewhere and add the direct link to it to the first post (like Franco does)?
Would be great, thanks!
Click to expand...
Click to collapse
I'd like for people to read the OP. It has important information changelog will come. There was a lot to write considering this kernel has been in the works for a bit.
Sent from my Nexus 4 using Tapatalk 2
How does that differ from your builds in bricked kernel?
sMtt said:
How does that differ from your builds in bricked kernel?
Click to expand...
Click to collapse
Compare the features of the two of them and see . This one seems to be more feature filled while his Bricked builds are more stability.
Also check the git's of both.
Sent from my Nexus 4 using Tapatalk 2
About time you released this Been reading all your tweets lately.
This looks awesome! Just a quick question because I'm a junkie for optimizations:
Will this include the various performance improvements from Franco's Franco Kernel, Morfic's Trinity Kernel, and the super fast CodeFireX MakoKangBang kernel? Also, I myself would recommend compiling it with CodeFireX's 4.8.1 Linaro Tool chain with back ports from the 4.9 Tool chain.
Can't wait to see how this turns out! Keep up the awesome work!
Connor Baker
How often do you plan on making stable releases? Thanks.

[TW][Emotion Kernel][SM-N915-F-G-P-T][21-Sep-2016][6.0.1]Emotroid Team

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
- Emotion nightly Kernel Note Edge -
-SM-N915F SM-N915G SM-N915P SM-N915T-​
Developed by Placiano and Pafcholini
More stable, more performance, more of everything!​
Introduction
Introducing the Emotion Revolution Roms & Kernels for Android Devices.
Emotion Rom/Kernel is a modified, aftermarket firmware/Kernel distribution few Android devices (Note 2, Note 4, HTC M7, Newman N2). Based on the Android Open Source Project , Emotion Rom & Kernel is intended to increase performance and stability over Android-based Devices released by sellers, for example, Samsung, HTC and so forth. Emotroid additionally offers a mixed bag of features & improvements that are not presently found in stock variants of Android.​​
*** Disclamer***
Your warranty is now void.
We are not responsible for any damage or problems you may have!
YOU are choosing to make these modifications.
Click to expand...
Click to collapse
Thread IndeX
POST 1: Kernel Information, Changelog, Credits,Screenshots
POST 2: Synapse, Recommended settings, FAQ, etc.
POST 3: Know/Reported issues
Request new features here
Features:
Kernel compatible with SM-N915F SM-N915G SM-N915P SM-N915T "Note Edge" SM-N910F SM-N910G SM-N910P SM-N910T SM-N910V "Note 4"
Based on Samsung Open Source Code
Compiled with UBERTC Toolchain Linaro GCC 5.2 Cortex A15
Linux version 3.10.84
CPU OC/UC -> 3072MHz / 268MHz
GPU OC/UC -> 800MHz / 166MHz
PowerSuspend Driver
Intelli-Plug V4.0
MSM Zen Decision
KSM enabled
Sweep2wake & Sweep2Sleep
Adreno idler Algorithm
Simple GPU Algorithm
Voltage Control
Intelli-Thermal
KCAL - Advanced color control
Led Control / Fading
CRC Settings
Advanced TCP control
S-View flip cover hack
Selinux Permissive
CIFS Support
NTFS Support
LZ4 compression algorithm
Kali NetHunter Support
Reduced wakelocks
Frandom number generator
Synapse full support
Governors: Barry-Allen, interactive_pro, intelliactive, bluactive, conservativex, alucard,darkness, nightmare, smartassV2, ondemandplus, umbrella_core, yankactive, dancedance, bioshock, lionhearth, conservative, interactive, ondemand,powersave, userspace, performance, impulse, zzmoove
I/O Scheldures: bfq, vr, fiops, zen, fifo, sio, test-ioshed, cfq, row, deadline, noop
Click to expand...
Click to collapse
LZ4 compression algorithm
LZ4 is a lossless data compression algorithm that is focused on compression and decompression speed.
The algorithm gives a slightly worse compression ratio than algorithms like gzip. However, compression speeds are several times faster than gzip while decompression speeds can be significantly faster than LZO.
The LZ4 algorithm represents the data as a series of sequences. Each sequence begins with a one byte token that is broken into two 4 bit fields. The first field represents the number of literal bytes that are to be copied to the output. The second field represents the number of bytes to copy from the already decoded output buffer (with 0 representing the minimum match length of 4 bytes). A value of 15 in either of the bitfields indicates that the length is larger and there is an extra byte of data that is to be added to the length. A value of 255 in these extra bytes indicates that yet another byte to be added. Hence arbitrary lengths are represented by a series of extra bytes containing the value 255. The string of literals comes after the token and any extra bytes needed to indicate string length. This is followed by an offset that indicates how far back in the output buffer to begin copying. The extra bytes (if any) of the match-length come at the end of the sequence.
Compression can be carried out in a stream or in blocks. Higher compression ratios can be achieved by investing more effort in finding the best matches. This results in both a smaller file and a faster decompression.
Click to expand...
Click to collapse
Jule- 28 -2015 nightly r18
-Linux 3.10.84
-Compiled with UBERTC Toolchain 5.2
-Source and ramfs updated to POF2
-Speed up console framebuffer imageblit function
-Fixed ZeroLemon Fuel Gauge (Thanks to TheLoneWolf20)
-Reverted some commits from r17
-Fix stuck CPU frequencies (Thanks to gekkehenkie11)
-qseecom: updates
-msm_hsic_host: reduce wakelock
-Crypto: updates and fixes
-dm: updates and fixes
-Added PFT (Per-File-Encryption)
-inr_sqrt: improved 3x faster integer sqrt and correction square root algo with naming
-mhi: fixed building of mhi driver
-Reverted Kali NetHunter (For now)
-Interactive: updates
-Added impulse governor and changed part of the code by neobuddy89
-Added zzmoove governor
-Added lcd_notify
-Sweep2wake: added s2s_only and sweep from left to right
-Row I/O: added magic values by Franco
-Synapse: updates, fixes and added Adreno idler
-For more info and changes check out our github
June- 28 -2015 nightly r17
-Linux 3.10.81
-Kernel compiled with Linaro Toolchain 5.1
-Added adreno idler algorithm by Arter97
-Sweep2wake works (Now we have sweep2wake and sweep2sleep)
-Hardlimit 2.2 Emotion Edition for Note 4 (Cleaned to be pure hardlimit)
-Google play services wakelock fixed
-bluesleep: reduced wakelock
-pinctrl: msm: Enabled irqs on resume
-wireless: dhd: Enable standby ARP and multicast packet filters
-Allow untrusted apps to read from debugfs
-input: keyboard: qpnp-keypad: register private data in SPMI dev
-mhi: core: Fix double increment on event counter and removed useless atomic variables
-Swap up to 1.5GB
-Add some tweaks for performance from LSpeed Mod
-net: wireless: bcmdhd4358: Fixed failure to enter PS
-frandom: Dynamically allocate the char device numbers and clear up checkpatch conflicts
-msm: mdss: update and fixes from codeaurora patches
-binder: Quiet Binder and Ratelimit binder debug messages
-ARM: convert all "mov.* pc, reg" to "bx reg" for ARMv6+
-block: BFQ updated to V7r8 for 3.10.X
-USB: android: Fix memory leak in mass_storage_function_init()
-cpuidle: updates and fixes from Linaro patches
-Fast charge adapted and fixed for Note 4 (Thanks to yank555.lu and ktoonsez for the initial code)
-cpufreq: Prevent mpdecision changing scaling freq
-qcom-cpufreq: updates and fixes
-Barry Allen updated to 1.0
-PM: devfreq: Fix show available freqs
-msm:kgsl: fixes
-msm: vidc: updates and fixes from codeaurora patches
-Added msm zen decision (replacement for MPDecision)
-force -Os -std=gnu89 and don't use GCC wrapper for GCC 5.1+
-Makefile: Additional Optimizations
-gpio_keys: force sync on KEY_POWER, KEY_HOME press (This should help in situations when the device or the OS is stalled but the kernel is alive and running.)
-arm: added arm optimized memcmp and Krait optimized strcmp
-readahead: make context readahead more conservative
-dtsi: fixed 268MHz frequency
-mm: zswap: fixes
-Synapse: clean up and fixes
-For more details check out our source code
June- 2 -2015 nightly r16
-Linux updated to 3.10.79
-Added LED Control/fading available in Synapse (Thanks to @UpInTheAir and halaszk)
-SM-N910F kernel is compatible with SM-N910G variant (BOE1+ firmware)
-SM-N915P (Note edge sprint variant) compatible
-Fix screen brightness issues: workaround for KK bootloaders not reporting the panel name (SM-N910V kernel)
-arm: vfpmodule: Fixed warning procfs vfp_bounce reporting failed
-dts: msm: disabled support of 50MHz for i2c for apq8084
-GPU Overclock and Underclock to 800MHz/166MHz
-GPU reduced frequency on boot from 300MHz to 266MHz
-msm: kgsl: show current power level
-suspend: Return error when pending wakeup source is found
-Barry Allen governor updated to 0.7
-mmc: sdhci-msm: Added Samsung 64G search after tune quirk
-Compile with -O3 flag
-KCAL updated (Fixed some issues)
-kernel/smp.c: fixed memory leak
-Default to NOATIME and NODIRATIME for FS performance improvement
-Optimized copy_page for modern ARM platforms
-cpufreq: Added stop CPU callback to cpufreq_driver interface
-PM: Introduce suspend state PM_SUSPEND_FREEZE
-PM / suspend: Make cpuidle work in the "freeze" state
-power: Adds functionality to log the last suspend abort reason
-ACPI / PM: Hold ACPI scan lock over the "freeze" sleep state
-power: catch wake-up requests in suspend_again
-PM / sleep: fix freeze_ops NULL pointer dereferences
-dm-req-crypt: Free resources in destructor
-qce50: Update clock vote for improved performance
-Optimized kernel size
-scheduler: update to BFQ-v7r7 for 3.10.8+
-Interactive: changed CPUFREQ_RELATION_C to CPUFREQ_RELATION_L
-DEFAULT_GO_HISPEED_LOAD to 90
-DEFAULT_TARGET_LOAD to 90
-DEFAULT_MIN_SAMPLE_TIME to 40
-suspend: Return error when pending wakeup source is found
-msm: kgsl: Add check to protect against operating on NULL pointer
-msm: kgsl: Avoid a possible NULL reference in kgsl_ioctl_helper
-futex: Add another early deadlock detection check
-Synapse added in the zip
May- 18 -2015 nightly r15
-Linux updated to 3.10.78
-Added compatibility to SM-N915-F-G-T (Note Edge)
-Added SWAP to 1.4gb
-Added support to Kali NetHunter (Thanks to FutureBSD and thehacker911)
-cpufreq: Added if cpu is online check in show
-cpufreq: Protect against hotplug in cpufreq_register_driver()
-cpufreq: Fixed timer/workqueue corruption by protecting reading governor_enabled
-Revert "cpufreq: make the "scaling_cur_freq" sysfs entry pollable"
-cpufreq: Use correct locking for cpufreq_cpu_data
-cpufreq: Return directly in __cpufreq_get if policy is NULL
-cpufreq: governor: Be friendly towards latency-sensitive bursty workloads
-cpufreq: governor: removed copy_prev_load from 'struct cpu_dbs_common_info'
-cpufreq: removed race while accessing cur_policy
-DriveDroid support (DEFAULT, MTP, PTP, UMS)
-Increased swappiness from 60 to 70
-Improved performance
-NTFS fixed
-Updated Ramfs to BOD2
-Added USB mode in Synapse
-Profiles updated in Synapse
-Fixed gamma and lmk profiles
-Added stock profile in Synapse
-Another minor changes and fixes
May- 11 -2015 nightly r14
-Linux updated to 3.10.77
-Selinux back to full permissive (Fixed gear vr compatibility, etc.)
-WIFI optimized (Thanks to @javilonas)
-Fixed T-Mobile Synapse compatibility
-Crypto: Updated to armv7-a Neon
-Busybox updated to 1.23.2 to fix some issues with Synapse
-Fixed all known bugs from r12+1
-Fixed some minor bugs in the ramfs
-Another minor fixes
May- 8 -2015 nightly r13
-Linux updated to 3.10.76
-Kernel compatible with SM-N910T
-Reverted "power: make sync on suspend optional"
-KCAL updated
-The kernel boot on Selinux enforcing but you can change the status from Synapse
-qcom-cpufreq: Removed save/restore of scheduling policy
-cpufreq_interactive: updated again from Shamu source
-cpufreq: stats: Don't update cpufreq_stats_table if it's NULL
-cpufreq: Break out early when frequency equals target_freq
-msm: lpm-levels: add suspend_again handler
-msm: Fix high load average from uninterruptible waits
-qcom: mpm-of: fix bug in finding the pending interrupts
-Added new governor Barry-Allen by Javilonas
-CIFS and NTFS built in the kernel
-Ramfs optimized (New tweaks,etc. thanks to Javilonas for some scripts)
-Synapse support KCAL control
-Added profiles in Synapse
-Added profiles for LMK in Synapse
-Added global voltage control in Synapse
-Change Selinux status from Synapse>MISC
-Fixed some bugs in Synapse
April- 23 -2015 nightly r12
-Kernel compatible with SM-N910F SM-N910G SM-N910P SM-N910V
-Based on BOC3
-Linux updated to 3.10.75
-Fixed random reboots for some users
-Added crypto optimized SHA-256/224
-percpu: implemented generic percpu refcounting
-mm: disabled zone_reclaim_mode by default
-mm: reordered can_do_mlock to fix audit denial
-Enabled Zram with lz4 compression by default (Synapse>Kernel Tweaks)
April- 18 -2015 nightly r11
-binfmt_elf.c: use get_random_int() to fix entropy depleting
-Reverted "sched: LOAD_FREQ (4*HZ+61) avoids loadavg Moire" (Thanks to andip71 to report the lag)
-arm/kernel/irq.c: removed irq affinity warnings
-Restored CPU frequency during resume
-Silenced some annoying last_kmsg
-futexes: Increase hash table size for better performance
-Improved/fixed some typos in the ramfs
April- 15 -2015 nightly r10
-Compiled with Linaro GCC 4.9 2015.03 Cortex A15
-Linux updated from 3.10.40 to 3.10.74
-Compression changed to LZ4
-Power: made sync on suspend optional
April- 12 -2015 nightly r9
-Back to Linux 3.10.40 (For now, we are working to bring stable 3.10.73)
-Added Intelli-thermal v3.0
-bcmdhd4358: filter multicast packages while suspended
-fs/namei.c: fix potential memory leak in path_lookupat
-pinctrl: msm: fixed potential NULL pointer dereference
-usb: ks_bridge: by default debugging is disabled
-slub: fix kmem_cache_shrink return value
-mm: slub: fixed format mismatches in slab_err() callers
-power:Enable/Disable power collapse after camera open
-Implemented CPU Core Control by andip71
-tick: don't update idle time if cpu offline
-msm: kgsl: Only wake GPU on multitouch events
-Interactive: don't boost cpu if already boosted
-rtc: qpnp-rtc: Sets RTC time correctly
-rtc: qpnp-rtc: Set alarm control register properly
-Added Mobile Storage Analyzer
-soc: mbhc: Fix ID Tech card reader detection
-power: catch wake-up requests in suspend_again
-pinctrl: msm: prevent bogus wake up from suspend
-asoc: wcd9xxx: Improved headset detection
-Implemented Motorola MSM memcpy enhancements "memutils" (Faster memcpy performance for Krait)
-Improved Memutils
-Added CIFS as module
-Adde NTFS as module
-ASoC: msm: qdp6v2: handle proxy read failure
-ASoC: msm: qdsp6v2: Fix timestamp query during gapless transition
-mmc: core: Update PON (Power Off Notification) based on the system state
-mm: Fix NULL pointer dereference in madvise(MADV_WILLNEED) support
-netfilter: IDLETIMER: fix invalid deference of timer
-Fixes and improvements in Synapse
-Added CPU Binning (pvs information) Synapse> CPU VOLTAGE
-Added CPU core control in Synapse> CPU DRIVERS
-For more info check our Github
March- 27 -2015 nightly r8
-Linux update to 3.10.71
-Powesuspend updated to 1.7
-Intelli-plug updated to 4.0
-OC/UC -> 3072MHz / 268MHz
-Added Hardlimit Control
-Added new governors
-Addeded new scheldures
-Added memcopy & string use glibc version
-Added quickwakeup driver (improve battery life)
-Optimized Kernel Samepage Merging (KSM)
-deadline: Optimized for non-rotational
-mm: Clear page active before releasing pages
-ARM: 8119/1: crypto: sha1: add ARM NEON implementation
-ARM: 8120/1: crypto: sha512: add ARM NEON implementation
-ARM: crypto: add NEON accelerated XOR implementation
-ARM: add support for kernel mode NEON and only allow kernel mode neon with AEABI
-Fixed failure to enter PS mode while roaming
-Sched: Set MC (multi-core) sched domain's busy_factor attribute to 1
-Disabled add_random for more performance on SSD's
-tcp: enabled tcp fast open functionality (franciscofranco)
-For more info check our Github
March- 5 -2015 nightly r7
-Added KCAL - Advanced color control (Thanks to @savoca for his great job) check this thread for more info
March- 3 -2015 nightly r6
-Based on XXU1ANK4 (KitKat version) and compatible with "F,G,T,V,W8"
-Based on XXU1BOB4 (Lollipop version) and compatible with "F"
-Lollipop version has all the features except mdnie control and S-View hack
-Kernel compiled with Linaro Toolchain 4.9.3 2015-02
-FauxSound updated to 3.6
-Fixed some issues in FauxSound and Synapse
-cpufreq: Introduced new relation for freq selection Introduce CPUFREQ_RELATION_C
-Interactive Governor: Use CPUFREQ_RELATION_C
-Added Gentle fair sleepers (Synapse -> KERNEL TWEAKS)
-Enabled Kernel SamePage Merging (KSM) (Synapse -> KSM)
-Added key disabler (Synapse-> SCREEN/MISC)
-Added userspace vibration strength control (Synapse-> SCREEN/MISC)
-Changed some stuff in Synapse
-Reverted some commits
-Another minor changes
January- 27 -2015 nightly beta r5
-FauxSound implemented
-FauxSound in Synapse
-Added high performance mode in Synapse->Sound
-Fixed battery drain on wifi (My fault)
-Reverted another commits
January- 16 -2015 nightly r4
-Fixed cpu voltage control (No more 0MHz frequency in cpu voltage table)
-ASoC: wcd9xxx: use hwdep node for codec calibration
-ASoC: wcd9320: use hwdep nodes to get calibration
-ASoC: wcd9xxx: Changes for High performance mode
-ASoC: wcd9xxx: Change PA on and VDDIO switch sequence
-ASoC: wcd9xxx: Avoid micbias glitches during audio playback
-In conclusion better quality sound on headsets
-Sched/fair: reduced latency
-Decreased DHD_PACKET_TIMEOUT_MS to 250 ms (Before 500ms)
-Drecreased time to enter sleep
-Net: wireless: Increased scan entry expiration to fit new scan time
-PM: devfreq: Use high priority workqueue
-Msm: kgsl: Report correct GPU frequency in sysfs
-Some minor changes
January- 11 -2015 nightly r3
-Added Frandom as module and set by default (Synapse>I/O>Frandom) "For more info check this"
-Network speed tweak
-Reduced wakelocks "wlan_rx_wake" and "wlan_ctrl_wake"
-dtsi: realigned voltages with userspace values (Thanks to twistedumbrella)
-cpu-boost more performance (Thanks to franciscofranco)
-sched: LOAD_FREQ (4*HZ+61) "For more info check this"
-Interactive governor imported from the Nexus 6 (No more lag on interactive)
-Added bluactive and interactive_pro governors
-Reverted some changes that made the kernel laggy in some cases.
-Selinux set to permissive by default
-Gpu: msm: for higher priority you want to use nice level of -7
-Now you can change the governor tunables from Synapse (Issue fixed) (Thanks for the tip to AndreiLux)
-Synapse shows all the available gpu governors (Thanks to my friend Friedrich!)
-Cleaned some things in Synapse
-Other minor changes
January- 4 -2015 nightly r2
-Fixed Ondemand governor
-mm: slub: Default slub_max_order to 0 (Improved performance)
-Increased io performance
-writeback: fix occasional slow sync
-Fixed min frequency (Finally!)
-msm: Fix high load average from uninterruptible waits
-Cpu boost sysfs to enable/disable it (Synapse>cpu drivers)
-S-View hack (Twistedumbrella) enable/disable (Synapse>miscellaneous)
-Minor fixes
January- 1 -2015 nightly r1
-Based on Samsung Open Source N910FXXU1ANIE
-Compiled with Toolchain Linaro GCC 4.9.3 2014.12 Cortex A15
-PowerSuspend Driver
-Intelli-Plug V3.9
-Stereo Call Recording Support
-cpufreq_limit: don't override cpu min frequency
-Fast Charge V1.2
-Sweep2wake
-Simple GPU Algorithm
-Sysfs interface to Enable/Disable Logger Android (Default disable)
-Voltage Control
-Intelli-Thermal V1
-mDNIe Hijack control
-Advanced TCP control (westwood default)
-Sysfs interface to Enable/Disable CRC
-Dynamic Fsync Control V1.5
-Added Intelliactive, Smartmax and SmartassV2 governors
-Led Control
-Panel Color Control
-mDnie mode adapter for Synapse
-Selinux Enforcing/Permissive
-Synapse Support
Click to expand...
Click to collapse
Installation instructions
You need to have TWPR, CWM o Philz Recovery.
Download the last kernel
Reboot in recovery mode
Make backup (recommended)
Flash the zip
Don't be shy / lazy leave your feedback!​
Click to expand...
Click to collapse
Downloads
Strictly No Mirrors Please. In the event that you need to make one ask us first with purpose behind what valid reason.
Current Version
Emotion Kernel SM-N915 Downloads
Click to expand...
Click to collapse
Source code:
Emotion kernel Github
Thanks To/Credits
Andip71, AndreiLux, apb_axel, Arter97, Civato, Christopher83, Codeaurora, DerTeufel, Faux123, Ffolkes, Flar2, Franciscofranco, Franlov, Friedrich420, Gokhanmoral, Imoseyon, Infernum, Javilonas, ktoonsez, Linaro, LoungeKatt (TwistedUmbrella), myfluxi, neobuddy89, savoca, _Sofos_, UpInTheAir, Vanito, Yank555.lu, ZaneZam.
Thanks to @myaslioglu @Jdidtht @aloom @moe67er to test the Note edge beta releases!
Also thanks to @anthony92170 @ronnie498 @blacklabel2020 @ravenseb for testing the T-mobile kernel!
And all users that support the thread and the kernel!
I hope I have not forgotten anyone!
Hit the "thanks" button if you like our work.
You can follow new updates here (Spanish)
Original thread here
XDA:DevDB Information
Emotion Kernel, Kernel for the Galaxy Note Edge
Contributors
Pafcholini, aukhan, placiano
Source Code: https://github.com/Emotroid-Team
Kernel Special Features:
Version Information
Status: Nightly
Current Stable Version: Emotion nightly r26
Stable Release Date: 2016-09-22
Created 2015-05-18
Last Updated 2016-10-18
Recommended settings & FAQ
Synapse Profiles
Go to Synapse
Profile
Choice the profile that you want
Apply it
Then Reset Selected Profile
Synapse will get FC (Don't worry)
Just reboot your device. DONE
How to backup profiles
Synapse and all available options:
- LIVE STATISTICS: Time in states, Uptime,etc.
- CPU - GOV: cpu scaling, cpu governor and governor tunables.
- CPU voltage: separate frequency voltage.
- GPU: GPU scaling min/max frequency, GPU governor, Simple GPU Algorithm.
- I/O: schedulers, internal storage read-ahead, externalSD read-ahead, Frandom Module, Scheldure Tunables Internal/External
- CPU DRIVERS: PowerSuspend and Intelli-Plug
- THERMAL: Intelli-Thermal Control
- MISCELLANEOUS: Dynamic FSYNC Driver, Logger Mode, CRC Settings, S-View bypass, Selinux Status, Optimize Database.
- BATTERY: Live Statistics and Fast Charge
- MDNIE/SCREEN: Panel Control, mDNIe Mode and mDNIe Mode Hijack
- LED: Led Control
- SCREEN WAKE CONTROL: Sweep2Wake Control
- KERNEL TWEAKS: low memory killer, kernel entropy, panic and panic on oops.
- NETWORK: tcp congestion control, hardering the TCP/IP stack to SYN attack,ignore pings,etc.
- VM-FS: dirty radio, swappiness,etc.
- BUILD.PROP: Build.prop Tweaks
- LOGS: Clearn Synapse, Logcat and Dmseg
- INFO-REBOOT: info about the kernel, reboots,etc.
Click to expand...
Click to collapse
Balance between performance and battery
Above is what I use personally. MAY NOT be optimal for all. Share your settings.
CPU frequency: 2649MHz/268MHz
Hardlimit Max Screen ON: 2649MHz
CPU governor: Interactive or Umbrella_core
CPU voltage: -25mV
GPU: msm_adreno or simple_ondemand
I/O schedulers: row or zen
I/O Readahead: 1024 for both
PowerSuspend: DisplayPanel_hook
KSM: disabled
MPDECISION: enabled
Intelli-Thermal: enabled
MISCELLANEOUS: fsync enabled, logger mode disabled, crc disabled
TCP: westwood
Click to expand...
Click to collapse
Performance configuration
CPU frequency: 2918MHz/268MHz
Hardlimit Max Screen ON: 2918MHz
CPU governor: Interactive_pro or Bluactive
CPU voltage: ----
GPU: performance or simple_ondemand
I/O schedulers: deadline
I/O Readahead: 1024 for both
PowerSuspend: DisplayPanel_hook
KSM: enabled
MPDECISION: enabled
Intelli-Thermal: enabled
MISCELLANEOUS: fsync enabled, logger mode disabled, crc disabled
TCP: westwood
Click to expand...
Click to collapse
Aukhan recommended settings
F.A.Q
Can I flash this kernel on Note 4 SM-N910C or other variant?
No, you can not. This kernel is only for SM-N910F, SM-N910G, SM-N910P and SM-N910V.
When I switch to Ondemand governor I noticed that cpu-boost is disabled.
Exactly, Ondemand and cpu-boost doesn't work well together. When you switch to Ondemand governor cpu-boost will be disabled automatically. Don't re-enable cpu-boost if you are using Ondemand governor. (Synapse>CPU DRIVERS)
Which app can control this kernel?
By default, the kernel is controlled by Synapse, but you can use the app that you like (Trickster Mod, Kernel Tweaker, etc.).
I flashed the kernel and Synapse says: "No support UCI detected".
Reflash the kernel, since it was a bad installation and Synapse does not detect the scripts.
After flashing the kernel lost root what to do?
In case you loose root just flash SuperSU
Any recommended settings to follow using Synapse?
At the beginning of the second post.
After flash the kernel some apks give me FC.
Go to Google Play Store and reinstall those apks.
From where can I remove int.d script?
Go to /system/etc/init.d using any root based file manager and delete.
Note: There is an important one related to superSU and if you remove it by mistake you're gonna have trouble with root permissions.
My device doesn't show any reaction to undervolting (battery life is same as before) or gets unstable even on light undervolting?
Use DVFS disabler Module(standalone) (dynamic voltage and frequency scaling), this feature was kept in touchwiz for benchmark boosting purposes and will conflict with any undervolting and custom governors because it scales the voltages and frequency on regular intervals and is framework integrated, so gets a higher priority than kernel based voltage and scaling controls.
For people who don't know what is DVFS please refer Wikipedia.
Min/Max frequency don't stick?
If your frequency settings don’t stick, it's because on certain Qualcomm devices, there are certain system services (thermald/mpdecision/project butter) or kernel service that rewrite frequency settings based on current thermal status and/or touch input.
I made a logcat but my file is empty. How I can "fix" it?
By default Android logger is disable. Go to Synapse > MISCELLANEOUS and enable Logger Mode.
What is it PowerSuspend?
This new powersuspend PM kernel driver is a replacement for it and existing early_suspend drivers. It should give better battery life.
What is it Intelli-Plug?
Intelliplug is a replacement for mp decision. Intelli-Plug is Faux123 open source solution to Qualcomm's closed source mpdecision. Intelli-Plug is disable by default. It conflicts with mpdecsion, so is HIGHLY recommend turning off mpdecision when using intelli-plug! (If you use Synapse the change is automatic. If you enable Intelli-plug mpdecision will turn off).
What is it Intelli-Thermal?
an intelligent MSM thermal throttling kernel driver designed to replace the
closed sourced thermald(aemon) from Qualcomm.
What is it Frandom?
Frandom is a kernel random number generator, which is 10-50 times faster than what you get from /dev/urandom. And it uses very little (/dev/frandom) or none (/dev/erandom) of the kernel's entropy pool, so it is very useful for applications that require a handy source for lots of random data.
What is it CRC?
CRC is a mechanism aiming to prevent data corruption when is enabled (reduce the performance around 30%). So if you disable it improve the performance but your data can be corrupted. Use it at your risk.
/sys/module/mmc_core/parameters/crc
Do you have issues in Synapse?
Go to the Play store and install busybox on rails.
Ve a la play store e instala busybox on rails, eso arreglará cualquier fallo en Synapse.
Shealt doesn't work (FC's)
Clear data of Shealt
How to use NTFS OTG?
Install USB OTG Helper . Connect your ntfs otg then open USB OTG Helper apk click on "mount". That's it. Use your favorite xplorer to open the OTG.
Know/Reported/Fixed issues
Know issues
1. Synapse doesn't show CPU governor tunables.
I'm trying to fix it. FIXED
2. Sometimes Synapse (and others kernel control apks) show that the min frequency is 1190MHz (or other frequency).
Just cancel it. FIXED
3. Ondemand doesn't work well. FIXED
Thanks for the report @Vangelis13
4. The OTG doesn't work in r8. FIXED
Great work mate! I am sure many custom roms will use it by default!
Most value adding kernel I have ever used...
Sent from my SM-N915F using XDA Free mobile app
Thank you very very much.
5CV15343YV6584512
Anybody on sm-n915p get their data running if I can't figure this out I'm about to just clean install ROM or Odin lollipop update and flash but major thanks for this wonderful creation
Thanks so much!
One zip file covers all those models of the Edge? Nice work.
dinaps86 said:
Anybody on sm-n915p get their data running if I can't figure this out I'm about to just clean install ROM or Odin lollipop update and flash but major thanks for this wonderful creation
Click to expand...
Click to collapse
I can't even get it to boot. It show's the splash screen, then a quick glimpse of something down both sides of the screen, then goes black. It never boots. My ROM is stock with Knox and it's on removed by me with Titanium Backup, and SuperSU Beta V2.49
I can't think of any other changes.
I flashed the zip, wiped cache and dalvik and rebooted. It did not boot. So I installed the zip again, and wiped same. No go again. So then I factory reset, and tried to reboot. Nothing still. What else can I try? The instructions are pretty basic. I"m not doing anything wrong here am I? Lol
---------- Post added at 12:58 AM ---------- Previous post was at 12:49 AM ----------
Nevermind. I was flashing 910 not 915. I was not paying attention. I thought the whole site was dedicated to our beloved Edge. My bad.
It has booted. I will play with it tonight and post my findings tomorrow. Thank you Gentlemen for your work here. I am really excited about having a permissive SELinux Kernel.
---------- Post added at 01:10 AM ---------- Previous post was at 12:58 AM ----------
dinaps86 said:
Anybody on sm-n915p get their data running if I can't figure this out I'm about to just clean install ROM or Odin lollipop update and flash but major thanks for this wonderful creation
Click to expand...
Click to collapse
My data is boinked too.
A big thank you.. Looks good now let's play..
Guys, the kernel was tested on F, G and T variant and I supposed that it's compatible with P but as I see is not.
Next is now. Powered by ET!
All running very nice.. 915f .. Thanks again ..
Pafcholini said:
Guys, the kernel was tested on F, G and T variant and I supposed that it's compatible with P but as I see is not.
Next is now. Powered by ET!
Click to expand...
Click to collapse
Yeap we could not find any P tester. Better delete it from the list until you get solid feedback.
Sent from my SM-N915F using XDA Free mobile app
Very nice kernel. Flashed 4 hours ago. Using it on 915G and the ROM is very responsive plus very good battery life. Thanks for long awaited custom kernel which can be tweaked by synapse.
Sent from my SM-N915G using XDA Free mobile app
myaslioglu said:
Yeap we could not find any P tester. Better delete it from the list until you get solid feedback.
Sent from my SM-N915F using XDA Free mobile app
Click to expand...
Click to collapse
I'll test it out and see what wrong with the data
Sleepycloud said:
I can't even get it to boot. It show's the splash screen, then a quick glimpse of something down both sides of the screen, then goes black. It never boots. My ROM is stock with Knox and it's on removed by me with Titanium Backup, and SuperSU Beta V2.49
I can't think of any other changes.
I flashed the zip, wiped cache and dalvik and rebooted. It did not boot. So I installed the zip again, and wiped same. No go again. So then I factory reset, and tried to reboot. Nothing still. What else can I try? The instructions are pretty basic. I"m not doing anything wrong here am I? Lol
---------- Post added at 12:58 AM ---------- Previous post was at 12:49 AM ----------
Nevermind. I was flashing 910 not 915. I was not paying attention. I thought the whole site was dedicated to our beloved Edge. My bad.
It has booted. I will play with it tonight and post my findings tomorrow. Thank you Gentlemen for your work here. I am really excited about having a permissive SELinux Kernel.
---------- Post added at 01:10 AM ---------- Previous post was at 12:58 AM ----------
My data is boinked too.
Click to expand...
Click to collapse
Our device isn't supported I know a little about developing but not much, do you? If dev doesn't mind maybe we can mess with it bc I'm probably gonna just launch the device out my window at this point I got v4a to work though bud without selinux being set to permissive there's a zip on the main v4a thread go a few pages back i don't know how to post a file on here otherwise I'd just post it if u need me to pm u the file you do need init.d support (just use tx_dbs deodexed rom)
dinaps86 said:
Our device isn't supported I know a little about developing but not much, do you? If dev doesn't mind maybe we can mess with it bc I'm probably gonna just launch the device out my window at this point I got v4a to work though bud without selinux being set to permissive there's a zip on the main v4a thread go a few pages back i don't know how to post a file on here otherwise I'd just post it if u need me to pm u the file you do need init.d support (just use tx_dbs deodexed rom)
Click to expand...
Click to collapse
I didnt get ur point mate. Maybe wrong thread?
Sent from my SM-N915F using XDA Free mobile app
This only for LolliPop and above?
I tried flashing the 915T on my stock deodexed Tmo Edge and it booted but with a black screen. Waited a few and could hear the unlocking sound when I swiped the screen but couldn't see squat. Weird.
Lolipop or kk?

[AOSP] [KERNEL] Deathly ZE551ML/ZE550ML

Code:
/*
*
* I not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns do some research
* YOU are choosing to make these modifications,
* and if you point the finger at me for messing up your device, i will laugh at you.
*
*/
Kernel Features:
Updated to latest kernel.org version (3.10.85)
Exfat Support
Interactive Governor from fugu
VNSWAP support
UKSM
BLK-throttle improvements
Async FSync from HTC
CDG congestion control
Optimized Sfck Compression
Tons of under the hood optimizations and tweaks (entropy, mm, readahread, slub, fs, fuse, int_sqrt, memcopy, lib/string)
Compiled with Google's 4.9 x86_64 toolchain instead of 4.8
The following IO's added:
SIO
SIOPLUS
FIOPS
ZEN
FIFO
VR
BFQ
ROW
The following cpu govs added:
BioShock
ConverativeX
LionHeart
YankActive
Adaptive
Wheatley
LagFree (Default)
CM Downloads:
0.4 Z00A
0.4 Z008
CM Older versions:
0.3 Z00A
0.2 Z00A
0.1 Z00A
Slim Downloads:
0.4 Z00A
0.4 Z008
Slim Older versions:
None yet
Paranoid Android Downloads:
0.4 Z00A
Paranoid Android Older versions:
None yet
Kernel Source:
Here
Please look at what zip you are downloading currently i only support CM, Slim, PA please do not flash it on any alternate roms or stock
Credits:
@TheSSJ for his work on the stock kernel
@crpalmer , @jrior001 for bringing up the zf2 and its kernel
@dorimanx for his universal Exfat
@Mazda for bring the kernel up to the latest kernel.org
Changelog:
0.4
Added ROW IO
Added Lagfree CPU Gov (New Default)
Blk-Throttle improvements
CDG congestion control
Enabled/Added the following CDG schedulers:
HHF, FQ_PIE, FQ, FIFO, CAKE
Optimized Sfck Compression
Initial Z008 support
Alphabetize the IO's and CPU Gov's
Kernel updated to 3.10.85
0.3
ADB fixed (forgot to build 0.2 with the cm patches)
Added the BFQ IO (Will switch it to default if my testing goes well)
Added Async Fsync from HTC
Added UKSM support
VNSWAP support aka Virtual Nand Swap Device which simulates Swap Area (Someone on reddit wanted it added and it looks like it could be good)
Tons of under the hood optimizations and tweaks (entropy, mm, readahread, slub, fs, fuse, int_sqrt, memcopy, lib/string)
0.2
Removed THESSJACTIVE cpu gov (Added its hotplugging to YankActive)
Add Wheatley cpu gov (New Default)
Added all of the TCP congestion algorithm's (New default is VENO)
Cleaned up the source code so everything has proper authorship and its cleaner
0.1
Initial Release
Kernel Adiutor is my preferred method of controlling the kernel.
Screenshots (Will not be updated often):
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
My Current setup:
Regular use i do not game at all on this device, which is why i dial back the cpu max (There is no need for 2.3 GHz)
CPU Gov: Lagfree
IO Scheduler: cfq
IO Internal Storage Read-ahead: 1024 kb
IO External Storage Read-ahead: 512 kb
TCP Congestion algorithm: Veno
Max CPU Freq: 1583 MHz
Min CPU Freq: 500 MHz
Packet Schedulers/Congestion Avoidance Algorithms:
Info taken from here
CDG vs. Cubic vs. Westwood:
CDG
CAIA-Delay Gradient (CDG) is a hybrid congestion control algorithm which reacts to both packet loss and inferred queuing delay. It attempts to operate as a delay-based algorithm where possible, but utilises heuristics to detect loss-based TCP cross traffic and will compete effectively as required. CDG is therefore incrementally deployable and suitable for use on shared networks. During delay-based operation, CDG uses a delay-gradient based probabilistic backoff mechanism, and will also try to infer non congestion related packet losses and avoid backing off when they occur. During loss-based operation, CDG essentially reverts to reno-like behaviour. CDG switches to loss-based operation when it detects that a configurable number of consecutive delay-based backoffs have had no measurable effect. It periodically attempts to return to delay-based operation, but will keep switching back to loss-based operation as required.
Cubic
CUBIC is an enhanced version of BIC: it simplifies the BIC window control and improves its TCP-friendliness and RTT-fairness. The window growth function of CUBIC is governed by a cubic function in terms of the elapsed time since the last loss event. Our experience indicates that the cubic function provides a good stability and scalability. Furthermore, the real-time nature of the protocol keeps the window growth rate independent of RTT, which keeps the protocol TCP friendly under both short and long RTT paths.
Westwood
TCP Westwood estimates the available bandwidth by counting and filtering the flow of returning ACKs and adaptively sets the cwnd and the sshtresh after congestion by taking into account the estimated bandwidth.TCP Westwood, is a sender-side-only modification to TCP New Reno that is intended to better handle large bandwidth-delay product paths (large pipes), with potential packet loss due to transmission or other errors (leaky pipes) and with dynamic load (dynamic pipes). TCP Westwood+ is an evolution of TCP Westwood, in fact it was soon discovered that the Westwood bandwidth estimation algorithm did not work well in the presence of reverse traffic due to ACK compression. Westwood+ is friendly towards TCP Reno and fairer than Reno in bandwidth allocation.
Packet Schedulers:
Why use a non default packet scheduler?
Packet schedulers are a portion of the kernel that queues network data on a specific interface and governs how they are transmitted and received including buffers. Below I will breakdown a couple of the packet schedulers included in this kernel.
fq_codel
FQ_Codel (Fair Queuing Controlled Delay) is queuing discipline that combines Fair Queuing with the CoDel AQM scheme. FQ_Codel uses a stochastic model to classify incoming packets into different flows and is used to provide a fair share of the bandwidth to all the flows using the queue. Each such flow is managed by the CoDel queuing discipline. Reordering within a flow is avoided since Codel internally uses a FIFO queue.
pfifo_fast
The FIFO algorithm forms the basis for the default qdisc on all Linux network interfaces (pfifo_fast). It performs no shaping or rearranging of packets. It simply transmits packets as soon as it can after receiving and queuing them. This is also the qdisc used inside all newly created classes until another qdisc or a class replaces the FIFO.
A real FIFO qdisc must, however, have a size limit (a buffer size) to prevent it from overflowing in case it is unable to dequeue packets as quickly as it receives them. Linux implements two basic FIFO qdiscs, one based on bytes, and one on packets. Regardless of the type of FIFO used, the size of the queue is defined by the parameter limit. For a pfifo the unit is understood to be packets and for a bfifo the unit is understood to be bytes.
pie
PIE is designed to control delay effectively. First, an average dequeue rate is estimated based on the standing queue. The rate is used to calculate the current delay. Then, on a periodic basis, the delay is used to calculate the dropping probabilty. Finally, on arrival, a packet is dropped (or marked) based on this probability. PIE makes adjustments to the probability based on the trend of the delay i.e. whether it is going up or down.The delay converges quickly to the target value specified. alpha and beta are statically chosen parameters chosen to control the drop probability growth and are determined through control theoretic approaches. alpha determines how the deviation between the current and target latency changes probability. beta exerts additional adjustments depending on the latency trend. The drop probabilty is used to mark packets in ecn mode. However, as in RED, beyond 10% packets are dropped based on this probability. The bytemode is used to drop packets proportional to the packet size.
fq
A packet scheduler is charged with organizing the flow of packets through the network stack to meet a set of policy objectives. The kernel has quite a few of them, including CBQ for fancy class-based routing, CHOKe for routers, and a couple of variants on the CoDel queue management algorithm. FQ joins this list as a relatively simple scheduler designed to implement fair access across large numbers of flows with local endpoints while keeping buffer sizes down; it also happens to implement TCP pacing.
FQ keeps track of every flow it sees passing through the system. To do so, it calculates an eight-bit hash based on the socket associated with the flow, then uses the result as an index into an array of red-black trees. The data structure is designed, according to Eric, to scale well up to millions of concurrent flows. A number of parameters are associated with each flow, including its current transmission quota and, optionally, the time at which the next packet can be transmitted.
That transmission time is used to implement the TCP pacing support. If a given socket has a pace specified for it, FQ will calculate how far the packets should be spaced in time to conform to that pace. If a flow's next transmission time is in the future, that flow is added to another red-black tree with the transmission time used as the key; that tree, thus, allows the kernel to track delayed flows and quickly find the one whose next packet is due to go out the soonest. A single timer is then used, if needed, to ensure that said packet is transmitted at the right time.
The scheduler maintains two linked lists of active flows, the "new" and "old" lists. When a flow is first encountered, it is placed on the new list. The packet dispatcher services flows on the new list first; once a flow uses up its quota, that flow is moved to the old list. The idea here appears to be to give preferential treatment to new, short-lived connections — a DNS lookup or HTTP "GET" command, for example — and not let those connections be buried underneath larger, longer-lasting flows. Eventually the scheduler works its way through all active flows, sending a quota of data from each; then the process starts over.
There are a number of additional details, of course. There are limits on the amount of data queued for each flow, as well as a limit on the amount of data buffered within the scheduler as a whole; any packet that would exceed one of those limits is dropped. A special "internal" queue exists for high-priority traffic, allowing it to reach the wire more quickly. And so on.
One other detail is garbage collection. One problem with this kind of flow tracking is that nothing tells the scheduler when a particular flow is shut down; indeed, nothing can tell the scheduler for flows without local endpoints or for non-connection-oriented protocols. So the scheduler must figure out on its own when it can stop tracking any given flow. One way to do that would be to drop the flow as soon as there are no packets associated with it, but that would cause some thrashing as the queues empty and refill; it is better to keep flow data around for a little while in anticipation of more traffic. FQ handles this by putting idle flows into a special "detached" state, off the lists of active flows. Whenever a new flow is added, a pass is made over the associated red-black tree to clean out flows that have been detached for a sufficiently long time — three seconds in the current patch.
cake
The CAKE Principle:
(or, how to have your cake and eat it too)
This is a combination of several shaping, AQM and FQ
techniques into one easy-to-use package:
- An overall bandwidth shaper, to move the bottleneck away
from dumb CPE equipment and bloated MACs. This operates
in deficit mode (as in sch_fq), eliminating the need for
any sort of burst parameter (eg. token buxket depth).
Burst support is limited to that necessary to overcome
scheduling latency.
- A Diffserv-aware priority queue, giving more priority to
certain classes, up to a specified fraction of bandwidth.
Above that bandwidth threshold, the priority is reduced to
avoid starving other classes.
- Each priority class has a separate Flow Queue system, to
isolate traffic flows from each other. This prevents a
burst on one flow from increasing the delay to another.
Flows are distributed to queues using a set-associative
hash function.
- Each queue is actively managed by Codel. This serves
flows fairly, and signals congestion early via ECN
(if available) and/or packet drops, to keep latency low.
The codel parameters are auto-tuned based on the bandwidth
setting, as is necessary at low bandwidths.
The configuration parameters are kept deliberately simple
for ease of use. Everything has sane defaults. Complete
generality of configuration is not a goal.
The priority queue operates according to a weighted DRR
scheme, combined with a bandwidth tracker which reuses the
shaper logic to detect which side of the bandwidth sharing
threshold the class is operating. This determines whether
a priority-based weight (high) or a bandwidth-based weight
(low) is used for that class in the current pass.
This qdisc incorporates much of Eric Dumazet's fq_codel code,
customized for use as an integrated subordinate.
How to apply a packet scheduler:
1. Open terminal on your device
2. Use the "su" command to become root
3. Use tc to change the packet scheduler(qdisc) on your device. I have included an example below, the first line is for WiFi and the second for data. In the example, we are setting the qdisc to fq_pie, which is a mix of PIE with per flow rate shaping from fq.
Code:
tc qdisc add dev wlan0 root fq_pie
tc qdisc add dev rmnet_data0 root fq_pie
4. Confirm your packet scheduler has been applied by using the tc tool again. I have included an example below.
Code:
tc qdisc
To use another packet scheduler after applying a previous one, you will need to either reboot or remove the added qdisc from each interface using the command I have included below.
Code:
tc qdisc del root dev wlan0
tc qdisc del root dev rmnet_data0
I never expected that someone would have made a kernel for cm *irony off*
Great job man, looking forward to see the features you are going to implement
DUDE!! Dude... DUDE!!
Already installed . Which programa are you using for kernel info and change between IO and governors?
Thank you so much .
Enviado desde mi ASUS_Z00A mediante Tapatalk
Awesome work! Been waiting for a kernel the past few days since CM dropped.
ppmeis said:
Already installed . Which programa are you using for kernel info and change between IO and governors?
Thank you so much .
Enviado desde mi ASUS_Z00A mediante Tapatalk
Click to expand...
Click to collapse
Kernel Adiutor
https://play.google.com/store/apps/details?id=com.grarak.kerneladiutor&hl=en
@deadman96385 any advice about which governor and IO for best performance?
Enviado desde mi ASUS_Z00A mediante Tapatalk
ppmeis said:
@deadman96385 any advice about which governor and IO for best performance?
Enviado desde mi ASUS_Z00A mediante Tapatalk
Click to expand...
Click to collapse
I have not had time to figure out what the best combo is yet
ppmeis said:
@deadman96385 any advice about which governor and IO for best performance?
Enviado desde mi ASUS_Z00A mediante Tapatalk
Click to expand...
Click to collapse
If you want best performance, I'd say take performance gov with FIOPS scheduler. Don't complain about battery
You are AWESOMEEEEEE MANNNN....!!!!!!!
ask.
What gov and io to save battery?
allasca said:
You are AWESOMEEEEEE MANNNN....!!!!!!!
ask.
What gov and io to save battery?
Click to expand...
Click to collapse
TheSSJactive + SIOPLUS
Best standby battery saving imo . My phone could last 2 days with moderate using , SOT up to 5 hours
Anylove for Z550ML Dude..?
Cyborg.Gangster said:
Anylove for Z550ML Dude..?
Click to expand...
Click to collapse
Not trying to burst your bubble but I'm going to say no; this kernel is for CM and currently CM itself only supports Z00A [Z551ML].
funkencool said:
Not trying to burst your bubble but I'm going to say no; this kernel is for CM and currently CM itself only supports Z00A [Z551ML].
Click to expand...
Click to collapse
Damn,, Even If We Get CM for z500 version also?
Cyborg.Gangster said:
Damn,, Even If We Get CM for z500 version also?
Click to expand...
Click to collapse
Things could be different when/if that happens. As for right now and to the best of my knowledge, none of the current CM devs have a Z550 they can test with, and I doubt they want to be responsible for bricked devices.
funkencool said:
Things could be different when/if that happens. As for right now and to the best of my knowledge, none of the current CM devs have a Z550 they can test with, and I doubt they want to be responsible for bricked devices.
Click to expand...
Click to collapse
Dude........................................................
it bricks only if they install z551 vesion cm on their z550 one na... not if they build a separate one for z550 one na..
Dude please be optimistic.."Crossed Fingers"
Is the kernel working fine with CM? Any bugs?

[Kernel][Stock Vendor][MIUI][Android R] ztc1997 kernel v1.20.1 for Redmi K30

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Compatibility:
Based on Android R Xiaomi official kernel source.
Works perfectly on MIUI 12, may works on other ROMs based on Android 11 stock vendor. OSS vendor NOT supported.
Features:
Built with latest aosp-clang and enabled ThinLTO, LLVM Polly compilation optimization
GPU undervolted
ZRAM: Use lz4 as default compressor, swappiness allows up to 200 (default 130)
PELT scheduler mechanism for power efficiency
Optimize EAS energy model
Enabled power efficient workingqueue and adjust some driver to use it
Use BBR as default
Wakelock blocker
kcal and KLapse support
A lot of other optimizations
Known issues:
Proximity sensor not working (fixed)
Dt2w may not work on some AOSP based ROMs (You can force enable dt2w by changing /sys/touchpanel/double_tap to 1)
Installation:
Flash via recovery
Use Horizon Kernel Flasher
Download: GitHub Release
Source: GitHub
Support: Telegram
Anyone can port this kernel without additional authorization.
Change logs:
v1.20.2
Allow user to skip thermal throttling when charging (It is NOT enabled by default for security reason. For user who facing slow charging, enable Usb Fast Charge or Force Fast Charge in any kernel tuning apps, then re-plug the charger.)
v1.20.1
Add Zstd compression algorithm
Minor bug fixes
v1.20.0
Perform ion freeing buffer and PID map reads on the LITTLE CPU cluster
Update jump_label from upstream
Remove some debug/unused features
v1.19.1
Re-add kcal and KLapse by user request
Fine-tune cpu input boost and schedutil parameters
v1.19.0
Remove some unstable changes
Rollback to original frequency table
Add cpu input boost
v1.18.0
Switch to PELT scheduler mechanism
Some scheduler fine-tuning from Pixel 4
v1.17.0
Add automatic compaction mechanism
Fix for wrong physical panel dimensions
v1.16.1
dt2w can now take effect immediately
Increase vmstat interval to 20 seconds
Revert dynamic Stune Boost and sched_boost
Revert some unstable changes
v1.16.0
Add sdFAT fs support thanks to @chiru2000 (Fix for random reboot when an SD card inserted)
v1.15.2
Revert dynamic cpuset for background tasks
Some optimizations of cpuset and memory allocation
v1.15.1
Revert some unstable changes
v1.15.0
Add Dynamic Stune Boost
Add sched_boost on input events
v1.14.0
Expose dt2w switcher to userspace (/sys/touchpanel/double_tap)
Disable in-kernel LMK, use userspace lmkd instead
Some other improvements
v1.13:
Disable Full Refcount Validation
Import some improvement of zram, cpuidle, proc, cfq
Default io scheduler switch back to cfq
tcp: Disable timestamps by default
hwtracing: Add a driver for disabling coresight clocks
Disable some debug/useless features
v1.12.2
Switch back to original thermal control driver (Will control heat but reduce performance)
v1.12.1
Re-enable MEMCG (Disable it will cause the proximity sensor not work)
Switch back to Android LMK
Set default swappiness to 130
sysctl: Rename swappiness to rswappiness
Decrease Down frequency temperature (For safety)
v1.12
Add f2fs rapid gc by arter97
Update lz4 lib and use lz4 as default compressor of zram
Update PID map reads optimization from sultan kernel
schedutil: Unlock highest freqs when devfreq boost max
Boost whenever the top app changes
Import some optimization for CRC32 and XOR (Heavily used by network protocols)
msm: kgsl: use kmem_cache pool for draw objects (Reduce millions of times of memory allocating)
Block some userspace boost
v1.11.1
Change the compiler to aosp-clang 12.0.4 (Stability of proton-clang cannot be guaranteed)
scsi: ufs: set IRQ's affinity to CPU1 (Reduce the load on CPU0 a little)
scsi: ufs Async suspend/resume callbacks.
schedutil: Don't limit frequency if devfreq boost max
msm: kgsl: Relax CPU latency requirements to save power
dcache: increase DNAME_INLINE_LEN on ARM64 to 96 bytes (Improve the efficiency of caching long name files)
dts: sdmmagpie: Remove 1804mhz of Low-Power cluster (Non-efficient)
v1.11
schedutil: Wait for up_delay before using non-efficient frequencies
schedutil: Set default value for hispeed_load, hispeed_freq, pl
schedutil: Remove iowait boost
scsi: ufs: Hardcode and relax UFS CPU latency requirement
scsi: ufs: disable clock scaling
sched: Avoid walt irq work in offlined cpu
sched/tune: Introduce SchedTune Assist, enable prefer_idle for top-app, foreground
msm: thermal: simple: Introduce simple MSM thermal solution
power supply: qpnp-qg: Allow to set charge_full greater than charge_full_design (for those users replaced large-capacity battery)
v1.10
zram: use z3fold backend
add lower freq to llcc-bw bus
Finally a kernel supported for oss...Thanks and keep it up
I am using miui 12.1.4 hellas
Everything is very good only has a very slow charging error
Hope you fix it soon <3
Kaizzz said:
I am using miui 12.1.4 hellas
Everything is very good only has a very slow charging error
Hope you fix it soon <3
Click to expand...
Click to collapse
Unable to reproduce, the charging speed on my phone is normal.
Doesn't work on my device, freezes a few seconds after successfully booting, then restarts.
ROM: xiaomi.eu_multi_HMK30_21.4.7_v12-11
ztc1997 said:
View attachment 5273111
Compatibility:
Based on Android R Xiaomi official kernel source.
Works on ROMs based on Android 11 stock vendor, such as MIUI, EvolutionX, and etc.
Features:
Built with latest aosp-clang and enabled ThinLTO, LLVM Polly compilation optimization
GPU undervolted
ZRAM: Use z3fold backend, use lz4 as default compressor, swappiness allows up to 200
Optimize frequency tables and OPP capacities (Make CPU work at the most efficient frequency possible)
Dynamic cpuset for background task
Enabled power efficient workingqueue and adjust some driver to use it
Backport and enable HAVE_MOVE_PMD and HAVE_MOVE_PUD
Use BBR as default
Wakelock blocker
KLAPSE Support
A lot of other optimizations
Known issues:
Proximity sensor not working (fixed)
Dt2w may not work on some AOSP based ROMs
Installation:
Flash via recovery
Use Horizon Kernel Flasher
Download: GitHub Release
Source: GitHub
Anyone can port this kernel without additional authorization.
Click to expand...
Click to collapse
I face random reboots. After boot 4-5 sec works then freeze for some time nd reboot. Rom evolution x. Stock vendor based
I also face random reboots. POCO X2 with Android 11 stock vendor
rajesh14289 said:
I also face random reboots. POCO X2 with Android 11 stock vendor
Click to expand...
Click to collapse
Looks like it was due to my sd card partition as exfat. Once I changed it to vfat everything worked fine.
rajesh14289 said:
I also face random reboots. POCO X2 with Android 11 stock vendor
Click to expand...
Click to collapse
This got fixed when I changed my sdcard to vfat/fat32
rajesh14289 said:
I also face random reboots. POCO X2 with Android 11 stock vendor
Click to expand...
Click to collapse
This is fixed in 1.16 by @chiru2000. Thanks
Thanks a lot for this great job..... For this Kernel...provides very good battery backup and smooth performance....in miui hellas 21.4.28
It would be great to have LMK changing profiles+KCal..... All other kernels have that.....it would complete this kernel
So,I'm requesting for these features @ztc1997
Hope You'll consider adding them....thanks again
Cpt.mactavish said:
Thanks a lot for this great job..... For this Kernel...provides very good battery backup and smooth performance....in miui hellas 21.4.28
It would be great to have LMK changing profiles+KCal..... All other kernels have that.....it would complete this kernel
So,I'm requesting for these features @ztc1997
Hope You'll consider adding them....thanks again
Click to expand...
Click to collapse
kcal has been re-added in v1.19.1.
According to Google’s suggestion, this kernel has used userspace lmkd to replace in-kernel lmk, which has a number of issues.
To configure lmkd, see to aosp doc.
Thanks for adding Klapse and kcal...and that lmkd doc explains all....thanks again #ztc1997
@ztc1997 kcal and klapse is not working,in miui..
Shouldn’t it supposed to be working in miui?
Cpt.mactavish said:
@ztc1997 kcal and klapse is not working,in miui..
Shouldn’t it supposed to be working in miui?
Click to expand...
Click to collapse
kcal parameter does not take effect in real time, it will take effect after reopening the screen.
Thanks a lot
ztc1997 said:
kcal parameter does not take effect in real time, it will take effect after reopening the screen.
Click to expand...
Click to collapse
Thanks a lot...for being so kind

Categories

Resources