Related
A black screen on boot (or just the backlight coming on, but no animation) is sometimes caused by mismatched kernel and vendor graphics driver-related blobs, assuming you are building your own kernel. Here's how to check (I'm putting this here because I'm not yet allowed to post in the dev thread):
Assuming your source is in ~/android/system :
1) Determine the vendor blob version:
cd ~/android/system/vendor/bn/encore/proprietary/lib/egl
strings lib* | grep build;
You should see something like : OpeGL ES 2.0 build [email protected]
2) Now determine the version the kernel expects:
cd ~/android/system/kernel/bn/encore/drivers/gpu/pvr
grep PVRVERSION_BUILD pvrversion.h
You should see something like : #define PVRVERSION_BUILD 789263
If you see a number other than 789263, your vendor blobs do not match the kernel you are using.
In my case, this was caused by me extracting the blobs from my Nook when it was running CM7,
and trying to use them to build CM10.
Check eyeballer's github to get the right vendor blobs.
Hope this helps someone (thanks would be appreciated ). I got this info with the help of Steven676, Krylon360 and others.
FEEL FREE TO DONATE US FOR ALL WE'RE DOING FOR YOU!
For general discussions, bug reports and FAQ, write HERE!
Credits:
alfsamsung
P880-dev
csk1jw
MoltenMotherBoard!
Downloads:
MoltenMotherBoard mirror | AndroidFileHost
Full sources:
MoltenMotherBoard sources: MoltenMotherBoard | Github
Device: platform_device_lge_p880 | Github
Kernel: lge-kernel-p880 | Github
Changelog:
20151122:
AOSP 5.1.1_r29 branch up to 2015/11/21
20151121:
p880: kernel: various upstream changes from android-6.0.0_r0.4/5 branch (thanks to @csk1jw)
p880: ril: cleaner and lighter patches (thanks to @csk1jw)
p880: gps: cleaner and lighter patches (thanks to @csk1jw)
AOSP 5.1.1_r13 branch up to 2015/11/20
20150826:
p880: kernel: enable cleancache, remove cpu boost driver
p880: kernel: mm: frontswap: core frontswap functionality
AOSP 5.1.1_r13 branch up to 2015/08/26
20150824:
frameworks/base: fix wakelock issues
p880: set zRAM values with LZ4 and 256MB of RAM
p880: kernel: enable SWAP and LZ4
AOSP 5.1.1_r13 branch up to 2015/08/24
20150714:
frameworks/base: fix GPS for old GPS HALs along with @csk1jw patches
AOSP 5.1.1_r8 branch up to 2015/07/14
20150625:
p880: cm-12.1 kernel branch rebase
AOSP 5.1.1_r1 branch up to 2015/06/25
20150423:
AOSP 5.1.1_r1 branch up to 2015/04/23
20150406:
p880: restore old 'Recent Apps' behavior
AOSP 5.1.0_r3 branch up to 2015/04/01
20150327:
AOSP 5.1.0_r3 branch up to 2015/03/27
20150318:
p880: android-5.1.0_r1 bringup
AOSP 5.1.0_r1 branch up to 2015/03/17
20150123:
p880: revert any update from 2015/01/18
p880: update spn overrides (v3)
P880-dev cm-12.0 branch up to 2015/01/18
AOSP 5.0.2_r1 branch up to 2015/01/23
20150122:
p880: update spn overrides (v3)
P880-dev cm-12.0 branch up to 2015/01/22
AOSP 5.0.2_r1 branch up to 2015/01/22
20150121:
@alfsamsung: p880: prop: reduce ro.ril.wake_lock_timeout and misc cleanup
@alfsamsung: p880: SE policies: allow init to start lgsecclk and set radio props
@alfsamsung: p880: ril: cleanup
frameworks/opt/telephony: implement UICC TLV Data decoding
p880-dev cm-12.0 branch up to 2015/01/21
AOSP 5.0.2_r1 branch up to 2015/01/21
20150120:
frameworks/opt/telephony: Revert: implement UICC TLV Data decoding
p880: add spn overrides
P880-dev cm-12.0 branch up to 2015/01/20
AOSP 5.0.2_r1 branch up to 2015/01/20
20150118:
build: prevent recovery partition to get replaced
frameworks/opt/telephony: implement UICC TLV Data decoding
P880-dev cm-12.0 branch up to 2015/01/18
AOSP 5.0.2_r1 branch up to 2015/01/18
20150117:
p880: update patches method
@P880-dev: p880: audio_effects adjustements
@P880-dev: p880: fix NFC
build: ota: remove cruft
frameworks/native: compatibility work around for bad graphics driver dependency
hax: Add back the SURFACE_SKIP_FIRST_DEQUEUE legacy EGL workaround
p880: fix RIL typo
@P880-dev: p880: add missing cam include
@P880-dev: p880: add 48000 a2dp sampling rate
@P880-dev: p880: update AudioWrapper to fix video recording
@P880-dev: p880: update SE policies
surfaceflinger: squashed fixes for additional hwrotation
libgui: squashed commits for MR0 devices
frameworks/base: fix GPS for old GPS HALs
P880-dev cm-12.0 branch up to 2015/01/17
AOSP 5.0.2_r1 branch up to 2015/01/17
20150111:
binder: add legacy MemoryDealer constructor for Nvidia OMX adaptor
p880: enable ffmpeg decoders
p880: revert audio primary outputs updates
libgui: add pre-MR2-compatible symbol for setPosition and setOrientation
libutils: refbase: jellybean mr1 compat
p880: temporary revert few overlays
frameworks/base: reintroduce button-backlight (and respective inactivity timeout)
@alfsamsung: p880: SE policies updates
@alfsamsung: p880: GPS fixes
@P880-dev: p880: update RIL for 5.0
@P880-dev: p880: GPS fix and config cleanup
P880-dev cm-12.0 branch up to 2015/01/10
AOSP 5.0.2_r1 branch up to 2015/01/10
20150107:
build: use an updated apns-conf.xml version
p880: include MMB vendor
build: bring back Camera2 into the package
libutils: put back the unused virtuals in Vector<>
telephony: SignalStrength: hotfix GSM and TD-SCDMA
init: add a mechanism to extend the property service in device configs
telephony: RIL: squashed support for old RIL
bionic: linker: enable support for non-PIE executables
libbt: add support for board-specific configuration
p880: patches: correct frameworks/opt/telephony repo path name
telephony: RIL: make RIL subclassable
telephony: allow a device to include its own RIL subclass
build: exclude Home launcher
frameworks/av: stagefright: add legacy MediaBuffer::acquireBuffer symbol
build: include Launcher3 and Camera2 modules by default
p880: temporary revert few overlays
camera.tegra: fix camera_common.h include
frameworks/av: libstagefright: extended media support via FFMPEG
bionic: linker: avoid logcat warning with pre KK/LP blobs
build: prevent zip to replace recovery partition
build: do not report an error if building with Sun JDK
build: include kernel inline build
build: make OUT_DIR an absolute path
p880: add patches support
P880-dev cm-12.0 branch up to 2015/01/03
AOSP 5.0.2_r1 branch up to 2015/01/06
Issues:
-----
Do you want to report an issue? Do it here!
In order to do it, create a new issue, choosing correct labels corrisponding to: Device/OS which you're using, ROM/project you're on, kind of issue.
Also, please, be sure you're running the ROM/project in the exact way we've provided it to you (do not create issues if you're using different
kernel, mod, plugins and dependencies we didn't tell to use).
General Questions: MoltenMotherBoard Projects | General Questions and Info
XDA:DevDB Information
AOSP Lollipop, ROM for the LG Optimus 4X HD
Contributors
MoltenMotherBoard, streambinder
Source Code: https://github.com/MoltenMotherBoard/platform_local
ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.1.x
Based On: AOSP
Version Information
Status: Stable
Created 2015-01-07
Last Updated 2015-08-26
Hey. I'm the project mantainer. Again.
Just to ping it:
streambinder said:
First of all, it's my first thread here: then, I don't want to be overbearing in offering my work, never.
If I would ever result like that, please tell me.
About the project: my team has always followed AOSP projects, even with ARMv6.
This time I decided to work on it, for this phone, as I need bugfree sources even for it, as for all the others custom ROMs.
The build shared is only the result of the first compilation, quickly tested by me.
I would like to ask you to test and report any bug you experience, so that we can reach as soon as possible a bugfree release.
Click to expand...
Click to collapse
This time, I've something else to tell you.
The build is now uploading is pretty stable and the only issues that are affecting it are the ones listed above (as NFC continously crashes, I excluded it from the build).
Updates will come, do not worry, but tomorrow gonna have an exam, and on Monday another one, so... please, be patient.
For testers, have fun with this build!
And... for @fritzcola, this is for you: http://pastebin.com/qUZ9pmKx
Cheers!
Here's a little hands-on clip, made by @EsromG5:
isn't our kernel based on 3.1.x, not 3.0.x?
good job :good:
Flying_Bear said:
isn't our kernel based on 3.1.x, not 3.0.x?
good job :good:
Click to expand...
Click to collapse
Sorry, my mistake.
Anyway, build is up!
Just flashed rom. Feels smooth. Mobile data work without issue for now:good:
Issues:
-can't make outgoing calls (major)
-camera(already known)
-no root acces(you can fix that flashing this ---> http://download.chainfire.eu/641/SuperSU/UPDATE-SuperSU-v2.40.zip)
-lack of options (it's early stage, so :good
Install take a little longer just like start(at boot animation) be patient
I still cant place a call like on euphoria rom :/
streambinder said:
Sorry, my mistake.
Anyway, build is up!
Click to expand...
Click to collapse
There are problems with flashing, don't flash it yet guys.It gives an error; I'll edit and add the lines soon
After rebooting into recovery, it was fixed (as far as I can remember the error was about sys/.../tegra3/app mount failed)
It was probably because I mounted sdcard as flash storage via TWRP before I flashed
xperia u20i said:
Just flashed rom. Feels smooth. Mobile data work without issue for now:good:
Issues:
-can't make outgoing calls (major)
-camera(already known)
-no root acces(you can fix that flashing this ---> http://download.chainfire.eu/641/SuperSU/UPDATE-SuperSU-v2.40.zip)
-lack of options (it's early stage, so :good
Install take a little longer just like start(at boot animation) be patient
Click to expand...
Click to collapse
Thanks for your report:
- can you pull a log? I test every RIL function and everything is working properly on my side, calls too.
- already known.
- not a prio: as you said, you only need to flash a patch.
- can confirm: that's exactly why I love AOSP.
ex0rt said:
I still cant place a call like on euphoria rom :/
Click to expand...
Click to collapse
Can you pull a log? I don't have any problem.
ottomanhero said:
There are problems with flashing, don't flash it yet guys.It gives an error; I'll edit and add the lines soon
Click to expand...
Click to collapse
Did not have any issue while flashing, it only takes a little bit more.
Which error do you have?
streambinder said:
Thanks for your report:
- can you pull a log? I test every RIL function and everything is working properly on my side, calls too.
- already known.
- not a prio: as you said, you only need to flash a patch.
- can confirm: that's exactly why I love AOSP.
Can you pull a log? I don't have any problem.
Did not have any issue while flashing, it only takes a little bit more.
Which error do you have?
Click to expand...
Click to collapse
I can confirm that there is no flashing error.
Log is here...
edit
https://www.dropbox.com/s/clpj7ntf9k5h4x4/2015-01-07_12.34.zip?dl=0
xperia u20i said:
I can confirm that there is no flashing error.
Log is here...
edit
https://www.dropbox.com/s/clpj7ntf9k5h4x4/2015-01-07_12.34.zip?dl=0
Click to expand...
Click to collapse
Have you wiped /system, /data and /cache partitions before flashing AOSP?
And if you have, I saw you restored few backups with Titanium - and/or maybe something else -, have you checked if making calls worked out-of-box.
I suggest you to wipe everything and test it as the first thing you do once ROM boots up.
streambinder said:
Have you wiped /system, /data and /cache partitions before flashing AOSP?
Click to expand...
Click to collapse
yes, i made full wipe. everything except internal sd card
I edited my post, while this is my usual procedure when flashing ROMs (first mount as USB storage, then copy over and flash) it was seemingly fixed by rebooting to recovery and attempting to flash again.
xperia u20i said:
yes, i made full wipe. everything except internal sd card
Click to expand...
Click to collapse
Have you edited anything before testing calls?
ottomanhero said:
I edited my post, while this is my usual procedure when flashing ROMs (first mount as USB storage, then copy over and flash) it was seemingly fixed by rebooting to recovery and attempting to flash again.
Click to expand...
Click to collapse
No problem, dude.
Glad to see it's working for you, too.
@streambinder Feels pretty smooth after a few minutes!!
streambinder said:
Have you edited anything before testing calls?
Click to expand...
Click to collapse
No, installed rom and gapps (pa gapps) enter email, and flash super su, but maybe i flashed after that tried to make a call i can't remember exactly-
Nothing of that should messed out things, i think.
fritzcola said:
@streambinder Feels pretty smooth after a few minutes!!
Click to expand...
Click to collapse
Yup, I totally agree with you!
xperia u20i said:
No, installed rom and gapps (pa gapps) enter email, and flash super su, but maybe i flashed after that tried to make a call i can't remember exactly-
Nothing of that should messed out things, i think.
Click to expand...
Click to collapse
Maybe, or maybe not.
I suggest you to try: just flash only the AOSP package - do not with the other you mentioned - and check at first calls.
As I do not have your issues, we'll just try to narrow the possibilities field.
streambinder said:
Yup, I totally agree with you!
Maybe, or maybe not.
I suggest you to try: just flash only the AOSP package - do not with the other you mentioned - and check at first calls.
As I do not have your issues, we'll just try to narrow the possibilities field.
Click to expand...
Click to collapse
ok..my battery is empty now (don't know how ) i'll try to make a test again just with flashed rom, today, if not, tomorrow morning.
I got error while flashing and system doesn't boot here's my error
mount: failed to mount /dev/block/platform/sdhci-tegra.3/by-name/APP at /system: Device or resource busy
streambinder said:
Can you pull a log? I don't have any problem.
Click to expand...
Click to collapse
I didn't flashed gapps when I tried it, must say it was really smooth, but I need to call people . Can you recommend me an app for logs and I will try to get it asap.
xperia u20i said:
ok..my battery is empty now (don't know how ) i'll try to make a test again just with flashed rom, today, if not, tomorrow morning.
Click to expand...
Click to collapse
Ok, waiting for your updates.
CrazyWinner said:
I got error while flashing and system doesn't boot here's my error
mount: failed to mount /dev/block/platform/sdhci-tegra.3/by-name/APP at /system: Device or resource busy
Click to expand...
Click to collapse
Have you formatted /system before flashing the ROM?
WELCOME TO THE SNAPPATCH
INTROUnleash Your Snapdragon AOSP OS on a unexpected Way
The Snappatch isn't a Mod or a Tweak, it's a Custom ROM without including the OS Parts. Or in other Words, a POM. The Snappatch is the 4th Revision of the POM, containg the knowledge of researching and testing on over 8 Android Versions, over 20 Devices, or just 8 Years if You want so. The Goal is to set the Quality of everything as high as possible. Part of that is enabling Services, the Optimization of Hard and Software Configurations, and deep going Changes under the Hood which You will find nowhere else in such a big and goodworking Combination. Copied, but never reached! Forget obsolete or not working Modules and Tweaks, forget Audio Mods and Viper! The Snappatch contains only really working Content, and Options that You need and maybe not even knowed about. Take a closer look on the Thread and the Website for more Informations. But Words can't explain the Magic, You've to expierence it...
CONTENT
SNAP AROMA 3
SNAP OPEN GAPPS
SNAP SUPERSU
SNAP MAGISK
SNAP BUSYBOX
SNAP PROP PATCH
SNAP AUDIO SYSTEM
SNAP AUDIO EXTRAS
SNAP SOUND EXTRAS
SNAP DEVICE TRANSFORMATION
AND A LOT MORE
SNAP MEANS THAT THE USED CONTENT IS CHANGED, CUSTOMIZED, CREATED AND/OR OPTIMIZED BY MIUSTONE. TAKE A LOOK ON THE CREDITS IF YOU WANT TO THANK SOMEONE
FEATURES
SAFETYNET PASSING AND SECURE
TESTED AND SUPPORTED BY MIUSTONE
ANDROID FOR WORK READY AND OPTIMIZED
UNLOCKED AND ENABLED 4K AND HDR PLAYBACK
UNLOCKED AND ENABLED GOOGLE PIXEL FEATURES
BETTER RENDERING HANDLING AND GAMING EFFICIENCY
ENABLED HIGHER AUDIO QUALITY AND VARIOUS SERVICES
ENABLED HIDDEN ANDROID AND QUALCOMM FUNCTIONS
PORTED VARIOUS FEATURES AND CONTENT FROM SNAPDRAGONS
SMOOTHER AND SILKIER SCROLLING AND RESPONSIVENESS
VARIOUS STORAGE AND INDEXING SERVICE OPTIMIZATIONS
ENABLED DEVICE SERIAL NUMBER IN ABOUT PHONE
ENABLED SCREEN ROTATION ON SETUP WIZARD, HOME AND LOCKSCREEN
ENABLED VARIOUS FUNCTIONS FOR MORE OPTIONS IN THE GOOGLE SETTINGS
VARIOUS BACKGROUND BASIC SERVICE HANDLING OPTIMIZATIONS
AND SO MUCH MORE WHICH DOESN'T FITS IN MY WORDS
SNAP GAPPS
OPENGAPPS SUPER
HEAVILY DEBLOATED
BARELY MINIMUM SET
FULL FUNCTIONALITY
EXTRA SERVICES
PIXEL STYLE
SNAP AUDIO
THE SNAP AUDIO SYSTEM OPTION IS BASED ON A ADVANCED SONY SOUND ENHANCEMENTS PORT
INCLUDING THE LATEST SONY XPERIA LIBRARIES AND AUDIO CONFIGS AS REPLACEMENTS
OPTIMIZED FOR STEREO SPEAKERS BESIDES SUPPORTING DIFFERENT HEADSET TYPES AND OPTIONS
NOT JUST ANOTHER AUDIO MOD
TRUST YOUR EARS
NOT YOUR EYES
CREDITS
amarullz for AROMA
Chainfire for SuperSU
topjohnwu for Magisk
YashdSaraf for BusyBox
OpenGApps for GApps
EmojiOne for free Emojis
AND OF COURSE THANKS TO XDA AND ALL USERS AND DEVS WHO HAVE CONTRIBUTED TO ANDROID AND THIS PROJECT
IF YOU WANT TO SUPPORT MY PROJECTS
BECOME A PATRON
XDA:DevDB Information
SNAPPATCH, Tool/Utility for the ZTE Axon 7
Contributors
Miustone, Miustone, Miustone, Miustone
Version Information
Status: Beta
Current Beta Version: 18.4.4 BEASTMODE
Beta Release Date: 2018-04-04
Created 2018-02-15
Last Updated 2018-04-13
Instructions:
-Format Data / Disable Encryption (Backup Your Files to a External Storage before)
-Wipe Data, System and Caches (If You don't want to face Issues after Patching)
-Flash Oreo AOSP (Avoid booting the System before the Patch is applied)
-Reboot Recovery (Make sure Your Device isn't charging to keep the heat low)
-Flash Patch (Do Your thing, choose what You want but follow this Instructions)
-Reconnect Charger (No worries, it will not burn like a Note 7)
-Reboot System (Let it charge till 100% to get the Battery Calibration)
(The POM may exit to the Recovery while flashing, please repeat the Instructions from the second Step and make sure Your Device isn't getting hot before starting the Patch. AROMA has Performance Problems with TWRP, this can only be avoided on this Way)
Officially Supported Devices:
-Axon 7
(You want Official Support for Your Device? Talk to @Miustone)
Custom Prop:
If You want to change some Settings like for the Rotation of the Homescreen, Lockscreen, Setupwizard
or more advanced Things, can You simply use a File called "snap.prop" from Your Internal Storage using the Custom Prop Option within the Patch.
All You need to do is extracting the default Prop File from META-INF\com\google\android\aroma\snap\patch\prop. Place the file on the Root of Your Internal Storage,
and make sure TWRP has Access to it. Make Your changes and flash it using the Snappatch. That's all. As addition can You use "!#" to remove all Lines containing "#",
or remove anything You want by using "!anythingyouwant" (First example exists on the default Prop). The next is the Backup. Give it a yes, YES or just y or Y to make a backup
of Your current build.prop. Use NO, no, n or N to skip the Backup Function. If You want to know more just ask Me!
Kernel Tipps:
-Disable Touchboost on all Cores
-Underclock Your Cores to Max. 2GHz and 1,4GHz (Big - Little)
-Set the CPU Governors to Interactive and Conservative (Big - Little)
-Set the GPU to Max. 401MHz
-Set the I/O Sheduler Read-Ahead to 1024kB (Internal)(External may be slower = 512kB)
Developer Settings:
-Set Chrome (Beta, Dev, Canary) as Webview and access chrome://flags for more Options
-Set All Animation Scalings to 1.0 or 1.5
-Set "Forced Resizing of all Activities" to On
-Set "Allow External Storage using by Apps" to On
Download:
SNAPPATCH WEBSITE
If You want to support Me, take a look on the Info Section on the Website and/or consider sharing the Patch on Social Media and/or XDA!
Hello again! I just decided to create a Thread after sharing My latest Patch somewhere else, and getting Questions about it. It is good to use on 8.1 but keep in mind it is a Beta! No Bugs at all, but some Things may be not final or something will be added or removed on the final Release. The Beta will come all few Days, the Releases will come every first of the Month. And now happy flashing!
I'm having trouble understanding what this is exactly. Is this like an all in one flash file for AOSP ROMs so we don't have to run all the commands separately? Is this just for AOSP Oreo or does this include Nougat ROMs as well?
Thanks, works great on AEX Oreo 5.2 ROM.
ibphantom said:
I'm having trouble understanding what this is exactly. Is this like an all in one flash file for AOSP ROMs so we don't have to run all the commands separately? Is this just for AOSP Oreo or does this include Nougat ROMs as well?
Click to expand...
Click to collapse
It is mostly to compare with a AROMA based Custom ROM. While a custom ROM contains a Firmware/OS is the Patch just containing the changes i would usually made, plus even more since the Patch System is giving more Options as a simple ROM. I started with Miui Ports over to Stock ROMs, but i see more potential is AOSP, since it delivers the latest Android Versions even for Devices with bad/slow/stopped OEM Update Support besides providing a more unified Base to work with. The Snappatch is already the 4. Version of the Patch System and is specially made for Flagship Snapdragons (820+) running Oreo. Nougat isn't supported anymore, same for Stock, but i always recommend to try it out. If it does not Bootloop or gives tons of FCs, should it be fine to use on Your favorite ROM. Hope that explains it a bit better as i did it before. My English isn't that good to create complex Texts, sorry for that! :silly:
Always available for more Questions! BR
@BrianTeague glad it works well for You! Hope You'd enjoy it
not for android N, right?
xboxbr said:
not for android N, right?
Click to expand...
Click to collapse
The post right above yours...
"Nougat isn't supported anymore, same for Stock, but i always recommend to try it out. If it does not Bootloop or gives tons of FCs, should it be fine to use on Your favorite ROM"
xboxbr said:
not for android N, right?
Click to expand...
Click to collapse
Cablespider said:
The post right above yours...
"Nougat isn't supported anymore, same for Stock, but i always recommend to try it out. If it does not Bootloop or gives tons of FCs, should it be fine to use on Your favorite ROM"
Click to expand...
Click to collapse
Right, besides of the Kernel and the GApps should everything flash flawless, but if You face issues out of Oreo will they not getting fixed. Feel free to try it with any OS (MIUI, Stock, Nougat AOSP) and Share Your expierence Here. I'm sure that would Help others...
BR
BrianTeague said:
Thanks, works great on AEX Oreo 5.2 ROM.
Click to expand...
Click to collapse
Bro can you link me to this rom? Is it for axon 7? Thanks
And thanks for this patch man gonna give it a try then post back :3
J0nhy said:
Bro can you link me to this rom? Is it for axon 7? Thanks
And thanks for this patch man gonna give it a try then post back :3
Click to expand...
Click to collapse
It's on the AEX thread over at the ROMs section, not too hard to find it
J0nhy said:
Bro can you link me to this rom? Is it for axon 7? Thanks
And thanks for this patch man gonna give it a try then post back :3
Click to expand...
Click to collapse
Over here - https://forum.xda-developers.com/axon-7/development/rom-aospextended-rom-v4-3-t3618950
AEX (AOSP Extended)
You are welcome!
Miustone said:
UNLOCKED AND ENABLED GOOGLE PIXEL FEATURES
BETTER RENDERING HANDLING AND GAMING EFFICIENCY
ENABLED HIGHER AUDIO QUALITY AND VARIOUS SERVICES
ENABLED HIDDEN ANDROID AND QUALCOMM FUNCTIONS
PORTED VARIOUS FEATURES AND CONTENT FROM SNAPDRAGONS
Click to expand...
Click to collapse
Would you elaborate on these?
This patch did not solve the echo issue on calls for me, on AEX Oreo, but I would appreciate receiving feedback from others who have installed this, to confirm.
Thanks!
In case anybody is wondering, here are the build.prop modifications that this patch adds:
Code:
af.fast_track_multiplier=1
af.resampler.quality=5
assertdisplay.value=128
audio.adm.buffering.ms=5
audio.deep_buffer.media=true
audio.dolby.ds2.enabled=false
audio.dolby.ds2.hardbypass=false
audio.ds1.metainfo.key=273
audio.heap.size.multiplier=1
audio.hifi_rec.concert_gain=-100
audio.hifi_rec.concert_lcf=0
audio.hifi_rec.concert_lmt=0
audio.hifi_rec.normal_gain=30
audio.hifi_rec.normal_lcf=75
audio.hifi_rec.normal_lmt=0
audio.hifi_rec.offset_gain=40
audio.legacy.postproc=true
audio.noisy.broadcast.delay=600
audio.offload.16bit.enable=1
audio.offload.24bit.enable=1
audio.offload.32bit.enable=1
audio.offload.buffer.size.kb=1024
audio.offload.disable=0
audio.offload.gapless.enabled=true
audio.offload.min.duration.secs=30
audio.offload.multiaac.enable=true
audio.offload.multiple.enabled=true
audio.offload.passthrough=true
audio.offload.pcm.16bit.enable=true
audio.offload.pcm.24bit.enable=true
audio.offload.pcm.32bit.enable=true
audio.offload.pcm.enable=true
audio.offload.pstimeout.secs=5
audio.offload.track.enable=true
audio.offload.video=true
audio.parser.ip.buffer.size=262144
audio.safx.pbe.enabled=true
audio_hal.period_size=192
av.offload.enable=true
av.streaming.offload.enable=true
bt.max.hfpclient.connections=1
camera.aux.packagelist=org.codeaurora.snapcam,com.qualcomm.saltproject,com.qualcomm.saltproject2
camera.disable_zsl_mode=0
camera2.portability.force_api=1
com.qc.hardware=1
com.sonymobile.dseehx_enabled=true
config.foss.path=/system/etc/FOSSConfig.xml
config.foss.xml=1
dalvik.vm.appimageformat=lz4
dalvik.vm.build-mode=smart
dalvik.vm.dex2oat-swap=true
dalvik.vm.dex2oat-thread_count=4
dalvik.vm.dexopt-flags=v=y,o=y,m=y
dalvik.vm.image-dex2oat-filter=smart
dalvik.vm.isa.arm.features=default
dalvik.vm.usejit=true
dalvik.vm.usejitprofiles=true
dalvik.vm.verify-bytecode=true
db.log.slow_query_threshold=100
debug.bt.discoverable_time=0
debug.composition.type=gpu
debug.drm.mode.auto=1
debug.drm.mode.force=3840x2160
debug.egl.hw=1
debug.egl.swapinterval=-1
debug.enable.gamed=1
debug.enabletr=true
debug.gralloc.enable_fb_ubwc=1
debug.gralloc.enable_fb_ubwc=1
debug.hwc.force_gpu=1
debug.mdpcomp.maxlayer=4
debug.qc.hardware=1
debug.qctwa.preservebuf=1
debug.qctwa.statusbar=1
debug.qualcomm.sns.daemon=i
debug.qualcomm.sns.hal=i
debug.qualcomm.sns.libsensor1=e
debug.sf.enable_hwc_vds=1
debug.sf.hw=1
debug.sf.hwc.canUseABC=1
debug.sf.latch_unsignaled=1
debug.sf.no_hw_vsync=0
debug.sf.nobootanimation=0
debug.sf.swaprect=1
dev.defaultwallpaper=/system/snap.jpg
dev.pm.dyn_samplingrate=1
dev.pm.gpu_samplingrate=1
dmid=-1286820014
doze.pulse.brightness=15
doze.pulse.delay.in=500
doze.pulse.duration.in=1000
doze.pulse.duration.out=1000
doze.pulse.duration.visible=3500
doze.pulse.notifications=1
doze.pulse.proxcheck=1
doze.pulse.sigmotion=1
doze.shake.acc.threshold=100
doze.use.accelerometer=1
doze.vibrate.sigmotion=0
drm.service.enabled=true
flac.sw.decoder.16bit.support=true
flac.sw.decoder.24bit.support=true
flac.sw.decoder.32bit.support=true
hdr_capable=1
htc.audio.hdaudio.videoplayback=1
htc.build.stage=2
htc.scanrecorder=1
hw.cabl.level=Auto
hwui.render_dirty_regions=true
lockscreen.rot_override=true
log.tag.launcher_force_rotate=VERBOSE
lpa.encode=true
lpa.releaselock=true
lpa.use-stagefright=true
media.aac_51_output_enabled=true
media.mediadrmservice.enable=true
media.stagefright.audio.sink=280
media.stagefright.enable-aac=true
media.stagefright.enable-http=true
media.stagefright.enable-player=true
media.stagefright.enable-qcp=true
media.stagefright.enable-scan=true
mm.enable.qcom_parser=760765
mm.enable.qcom_parser=760765
mm.enable.smoothstreaming=true
mm.enable.smoothstreaming=true
mmp.enable.3g2=true
mpq.audio.decode=true
net.dns1=8.8.8.8
net.dns2=8.8.4.4
net.tethering.noprovisioning=true
persist.adb.notify=1
persist.af.fast_track_multiplier=1
persist.af.resampler.quality=5
persist.android.strictmode=0
persist.audio.aov=ON
persist.audio.dirac.speaker=true
persist.audio.dual_audio=ON
persist.audio.dualmic.config=true
persist.audio.fluence.audiorec=true
persist.audio.fluence.speaker=true
persist.audio.fluence.voicecall=true
persist.audio.fluence.voicecomm=true
persist.audio.fluence.voicerec=true
persist.audio.handset.mic=digital
persist.audio.heap.size.multiplier=5
persist.audio.hifi.int_codec=true
persist.audio.hifi=true
persist.audio.hifi_adv_support=1
persist.audio.hifivoice=true
persist.audio.hp=true
persist.audio.lowlatency.rec=true
persist.audio.ns.enabled=ON
persist.audio.ras.enabled=true
persist.audio.ssr.3mic=false
persist.audio.uhqa=1
persist.audio.voice.clarity=ON
persist.audio.vr.enable=true
persist.autorun.mode=1
persist.bootanim.preload=1
persist.bt.a2dp.aac_disable=false
persist.bt.a2dp_offload_cap=sbc-aptx-aptxhd-aac
persist.bt.enableAptXHD=true
persist.camera.HAL3.enabled=1
persist.camera.gyro.android=4
persist.camera.tnr.preview=1
persist.camera.tnr.video=1
persist.camera.tof.direct=1
persist.cne.feature=1
persist.data.df.agg.dl_pkt=10
persist.data.df.agg.dl_size=4096
persist.data.df.dev_name=rmnet_usb0
persist.data.df.dl_mode=5
persist.data.df.iwlan_mux=9
persist.data.df.mux_count=8
persist.data.df.ul_mode=5
persist.data.iwlan.enable=true
persist.data.mode=concurrent
persist.data.netmgrd.qos.enable=true
persist.data.wda.enable=true
persist.debug.coresight.config=none
persist.debug.wfd.enable=1
persist.delta_time.enable=true
persist.denoise.process.plates=0
persist.dpm.feature=1
persist.fuse_sdcard=true
persist.gps.qc_nlp_in_use=1
persist.hal.binderization=true
persist.hvdcp.allow_opti=1
persist.hwc.enable_vds=1
persist.igps.sensor=on
persist.ims.disableADBLogs=1
persist.ims.disableDebugLogs=1
persist.ims.disableIMSLogs=1
persist.ims.disableQXDMLogs=1
persist.ims.disableUserAgent=1
persist.mm.enable.prefetch=true
persist.net.doxlat=true
persist.power.useautobrightadj=true
persist.radio.RATE_ADAPT_ENABLE=1
persist.radio.ROTATION_ENABLE=1
persist.radio.VT_CAM_INTERFACE=2
persist.radio.VT_ENABLE=1
persist.radio.VT_HYBRID_ENABLE=1
persist.radio.add_power_save=1
persist.radio.apm_mdm_not_pwdn=1
persist.radio.videopause.mode=1
persist.radio.volte.dan_support=true
persist.rcs.supported=1
persist.rmnet.data.enable=true
persist.sensors.pocket_delay=1000
persist.service.adb.enable=0
persist.service.bdroid.ssrlvl=3
persist.service.clearaudio.enable=1
persist.service.clearphase.enable=1
persist.service.debuggable=0
persist.service.dseehx.enable=0
persist.service.enhance.enable=1
persist.service.sforce.enable=1
persist.service.swiqi3.enable=1
persist.service.xfrm.enable=1
persist.service.xloud.enable=1
persist.service.xrfm.mode=1
persist.speaker.prot.enable=false
persist.sys.app_rotation=1
persist.sys.colorgamut.mode=1
persist.sys.composition.type=gpu
persist.sys.dalvik.multithread=true
persist.sys.force_highendgfx=true
persist.sys.hiddenmenu.type=4
persist.sys.highlux.menu_on=1
persist.sys.isUsbOtgEnabled=1
persist.sys.media.avsync=true
persist.sys.purgeable_assets=1
persist.sys.root_access=1
persist.sys.scrollingcache=1
persist.sys.sdcardfs=force_on
persist.sys.ssr.enable_ramdumps=1
persist.sys.storage_preload=1
persist.sys.strictmode.disable=1
persist.sys.strictmode.visual=0
persist.sys.ui.hw=1
persist.sys.usb.config=charging
persist.sys.usb.factory=0
persist.sys.use_32bpp_alpha=1
persist.sys.use_dithering=1
persist.sys.video.enhancer=1
persist.sys.wfd.virtual=0
persist.telephony.support.ipv4=1
persist.telephony.support.ipv6=1
persist.timed.enable=true
persist.ts.rtmakeup=false
persist.tuning.qdcm=1
persist.vendor.audio.ras.enabled=true
persist.vendor.audio.speaker.prot.enable=false
persist.vendor.radio.add_power_save=1
persist.vendor.radio.wait_for_pbm=1
persist.volte_enalbed_by_hw=1
persist.zygote.preload_threads=4
pm.dexopt.ab-ota=quicken
pm.dexopt.bg-dexopt=quicken
pm.dexopt.boot=verify-profile
pm.dexopt.core-app=quicken
pm.dexopt.first-boot=verify-at-runtime
pm.dexopt.forced-dexopt=quicken
pm.dexopt.install=interpret-only
pm.dexopt.nsys-library=quicken
pm.dexopt.shared-apk=quicken
profiler.force_disable_err_rpt=1
profiler.force_disable_ulog=1
qcom.hw.aac.encoder=true
qcom.thermal=thermal-engine
qdcm.diagonal_matrix_mode=1
qdcm.only_pcc_for_trans=1
ro.adb.secure=0
ro.afwdata.LGfeatureset=NAOBASE
ro.apn.uservalue.protocol=IPV4V6
ro.astcenc.astcsupport=1
ro.audio.hifi=true
ro.bionic.ld.warning=1
ro.bluetooth.a4wp=true
ro.bluetooth.alwaysbleon=true
ro.bluetooth.emb_wp_mode=true
ro.bluetooth.remote.autoconnect=true
ro.bluetooth.wipower=true
ro.boot.vendor.overlay.theme=Pixel
ro.build.PTP_Feature=true
ro.build.chinasense=7.4.9
ro.build.display.id=SNAPPATCH 18.2
ro.build.display_manufacture_sn=1
ro.build.id=SNAPPATCH 18.2
ro.build.overseas=1
ro.build.selinux=0
ro.build.sense.version=8.0
ro.build.shutdown_timeout=0
Choose an username... said:
Would you elaborate on these?
Click to expand...
Click to collapse
Sure, the Thread is just not finalized yet cause a lack of Time. Was the same before with the Light Patch. The Documentation around My work is something i can't gleam with...
joaste said:
This patch did not solve the echo issue on calls for me, on AEX Oreo, but I would appreciate receiving feedback from others who have installed this, to confirm.
Thanks!
Click to expand...
Click to collapse
The Echo Issues will be fixed on the next Public Version. I tried a known fix and it worked, but it destroys the noise reduction (On Calls and Loudspeaker Calls(More Background Sound)). Hope i can optimize that a bit to get both, the fix AND the noise reduction. I'll keep You informed on G+
BR
Great mod!!! Beautiful, Powerfull and easy. I miss:
1. The face unlock enabled in your gaaps. Rom has the option for fast face unlock in Settings/Extensions/Lockscreen/Lockscreen UI/Face auto unlock
Here is ho to trick it:
- edit the gapps inteller.sh file and include the bold line line:
# Is device FaceUnlock compatible
if ( ! grep -qE "Victory|herring|sun4i" /proc/cpuinfo ); then
for xml in $SYSTEM/etc/permissions/android.hardware.camera.front.xml $SYSTEM/etc/permissions/android.hardware.camera.xml; do
if ( awk -vRS='-->' '{ gsub(/<!--.*/,"")}1' $xml | grep -q "feature name="android.hardware.camera.front" ); then
faceunlock_compat=true
break
fi
faceunlock_compat=false
done
else
faceunlock_compat=false
fi
faceunlock_compat=true
2. The option in aroma of changing the buttons to Tasks-Home-Back mapping. to do this you have to edit the file system/usr/keylayout/synaptics_dsx.kl. Yo use the Tasks-Home-Back mapping it should be:
key 158 APP_SWITCH
key 102 HOME
key 187 BACK
key 143 WAKEUP
Thanks!!
p82maarj said:
Great mod!!! Beautiful, Powerfull and easy. I miss:
1. The face unlock enabled in your gaaps. Rom has the option for fast face unlock in Settings/Extensions/Lockscreen/Lockscreen UI/Face auto unlock
Here is ho to trick it:
- edit the gapps inteller.sh file and include the bold line line:
# Is device FaceUnlock compatible
if ( ! grep -qE "Victory|herring|sun4i" /proc/cpuinfo ); then
for xml in $SYSTEM/etc/permissions/android.hardware.camera.front.xml $SYSTEM/etc/permissions/android.hardware.camera.xml; do
if ( awk -vRS='-->' '{ gsub(/<!--.*/,"")}1' $xml | grep -q "feature name="android.hardware.camera.front" ); then
faceunlock_compat=true
break
fi
faceunlock_compat=false
done
else
faceunlock_compat=false
fi
faceunlock_compat=true
2. The option in aroma of changing the buttons to Tasks-Home-Back mapping. to do this you have to edit the file system/usr/keylayout/synaptics_dsx.kl. Yo use the Tasks-Home-Back mapping it should be:
key 158 APP_SWITCH
key 102 HOME
key 187 BACK
key 143 WAKEUP
Thanks!!
Click to expand...
Click to collapse
Next Version will contain Faceunlock, thanks for sharing that. I wasn't aware of this Part and wondered why it's missing in the Android Settings. Do You know more about the installer.sh? I would like to force it also to flash the Pixel Camera Config instead of the Legacy One. Maybe is there also more to get out of the Super Pack!? Any help is much appreciated!
But the keylayout is really Device Specific, besides the Kernel should the Patch stay Unified and clean as far as possible. The Axon 7 has this Buttons, but i think it was one of the last Devices with them. Even the Axon 9 is expected to get a 18:9 Screen (Missing Front Speakers and Buttons).
I would prefer creating a external flashable zip containing system/usr/keylayout/synaptics_dsx.kl with changed Layout if there is non yet. Since 99% of the Devices don't have them. To create Options for that inside the Patch would mean useless Options for all other Devices or the need to remove them again before releasing the Patch for other Devices. Hope You understand that...
And sorry if something doesn't makes sense here, it was a long night with much coffee :silly:
Please, will it be possible to add an option to enable Jojoc battery tweaks in aroma ? ( https://forum.xda-developers.com/axon-7/how-to/tweak-jojoc-tuning-battery-focused-t3704831 ).
Otherwise, everything is working smoothly on latest AEX. :good:
Hi all!
What is this?
This is my mostly-working Razer Phone 2 Kernel and TWRP device tree!
I've been reading threads where people are having issues compiling the Razer-provided source for the RP2 and figured I should post what I have so others can use it to help achieve a fully working source-built kernel.
I'm also including a set of scripts to repack a Magisk-patched boot.img so you can iterate on building a new kernel rapidly, and am including a prebuilt magisk-patched boot.img with the custom kernel so we can QA other features while focusing on the known-broken things.
Also also, I'm including an exfat kernel module (not built into kernel for now) so that can be tested too!
Click to expand...
Click to collapse
Why is this mostly-working?
I've tested many features on this kernel and so far the only feature *not* working is the microphone. (Audio recording, haven't tested in-call audio)
This kernel is a mashup of Razer's source and a few other OSS repos from CAF - specifically the TFA98XX driver, and the audio-kernel repositories, so there's a bit of integration left to do to get all the audio features working.
I also had to edit the defconfig to get the DTB to build, and have to build with some special flags to use the prebuilt DTB compiler (dtc) since the one included in the source isn't capable of compiling the FIH DTBs inside the Razer-provided source (correct me if I'm doing something wrong here, but this was how I ended up getting it to work).
The kernel parameter skip_initramfs has also been renamed to skip__initramfs to break the silly bootloader skipping the ramdisk (and thereby breaking Magisk). This means you don't need to run Magisk's binary patch to rename that kernel argument to make Magisk or TWRP work.
Keep in mind, though, that this means if you use this kernel with a 100% stock ramdisk, you'll only ever get recovery since new Android ramdisks only contain recovery! (Thanks Dees_Troy for the refresher course!)
If you're familiar with the new audio-kernel CAF stuff, please let me know! I could use your assistance getting the microphone working.
It seems like the microphone isn't working because of some mismatches between the in-kernel msm audio drivers and the Razer customized drivers in the vendor partition.
I get errors like
Code:
[31269.485217] send_afe_cal_type cal_block not found!!
in dmesg when attempting to record audio. This seems isolated to the q6afe drivers in the kernel (specifically here: https://github.com/thecubed/android_kernel_razer_sdm845/blob/master/techpack/audio/dsp/q6afe.c#L1593 ) not playing nice with the prebuilt snd_soc_sdm845 kernel module.
Click to expand...
Click to collapse
Where do I get this?
See here for the TWRP device tree (and detailed instructions on how to set up your build tree): https://github.com/thecubed/android_device_razer_cheryl2
See here for just the kernel source: https://github.com/thecubed/android_kernel_razer_sdm845
See here for a kernel-less boot.img skeleton that you can drop your newly minted kernel into and repack with mkbootimg: http://downloads.codefi.re/thecubed/aura2/kernel/magisk_custom_kernel_skel.tar.gz
See here for a prebuilt boot.img with this custom kernel which includes Magisk: http://downloads.codefi.re/thecubed/aura2/kernel/boot_magisk_custom_9.img
See here for an exfat module you can insmod from a booted phone with custom kernel to try mounting exfat SD cards: http://downloads.codefi.re/thecubed/aura2/kernel/exfat_module.tar.gz
See here for a stock Magisk-patched boot.img for when you're done playing with this: http://downloads.codefi.re/thecubed/aura2/kernel/boot_magisk.img
Click to expand...
Click to collapse
How do I use this?
First off, this isn't for the average user. This kernel is *under development* and is not fully working yet. This means don't try this kernel on your mom's phone, your neighbor's phone, or any device that you aren't comfortable developing for.
Secondly, to test this, you'll need to be oem unlocked. There's plenty of guides to do this, but be aware that it erases all data on your phone when doing so. You could try using adb backup first, but I didn't have much success with that.
I'd suggest looking at the first link in the Where do I get this section and reading the README for the device tree as it'll have the most detailed instructions.
The gist is you'll need to download a minimal OmniROM manifest, add some lines to a file in .repo/local_manifests/cheryl2.xml, and run mka kernel to get a kernel image.
After that, you'll want to use mkbootimg to build a bootable magisk-patched boot.img, which you'll flash to your device with fastboot flash boot_X path/to/boot.img (where X is the active boot partition).
Once you've got the Image.gz-dtb file from your $OUT/obj/KERNEL_OBJ/arch/arm64/boot/Image.gz-dtb you'll want to repack it into a magisk-patched boot.img
Repacking the boot.img can be done with this command:
Code:
mkbootimg \
--kernel Image.gz-dtb \
--ramdisk boot_magisk.img-ramdisk.gz \
--cmdline 'console=ttyMSM0,115200n8 earlycon=msm_geni_serial,0xA84000 androidboot.hardware=qcom androidboot.console=ttyMSM0 video=vfb:640x400,bpp=32,memsize=3072000 msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 service_locator.enable=1 swiotlb=2048 androidboot.configfs=true androidboot.usbcontroller=a600000.dwc3 buildvariant=user' \
--base 0x00000000 \
--pagesize 4096 \
--kernel_offset 0x00008000 \
--ramdisk_offset 0x01000000 \
--second_offset 0x00f00000 \
--tags_offset 0x00000100 \
--os_version 8.1.0 \
--os_patch_level 2018-10 \
-o ../boot_magisk_custom.img
Click to expand...
Click to collapse
FAQ
Does this have TWRP?
No. This does not have TWRP. The device tree is for TWRP eventually, and to make compiling the kernel easier (since Android kernels don't like compiling outside of Android's makefile system anymore)
Does this have Magisk?
Yes! It's "pre-patched" too, as long as you're using my prebuilt one above.
Do I need the custom kernel to use the exfat module?
Yes. This is because the Razer stock kernel has module signing forced. I don't have Razer's kernel module signing key so I can't compile kernel modules for the stock kernel. My kernel has module signing set to allow mismatched signatures, so both the Razer modules in /vendor/lib/modules (required for sound) and my exfat module can coexist.
Why is exfat not compiled into the kernel?
Laziness, primarily. Actually, in this case I just didn't want to add extra variables to testing the kernel. If adding exfat into the kernel directly causes other issues it could potentially derail my quest to get this kernel up to par with the stock kernel.
Why did other kernels not boot?
Most likely due to incompatible audio-kernel revisions, or dtb issues. I'm not sure, but getting this kernel to compile required a bit more hacking than it should have.
Are you working on TWRP for Razer Phone 2?
Yep. Look for another post once the kernel is good to go. I aim to get encryption support working too, unless Dees_Troy beats me to it
Is audio still not working?
I'll update the post to remove the WIP tag and the section about audio as soon as it's working.
Is anything else not working?
Feel free to download and test to let me know what else isn't working and I'll add it to the OP.
Click to expand...
Click to collapse
Acknowledgements
Special thanks to Rashed97 and Dees_Troy for all their help.
Click to expand...
Click to collapse
y u quote OP?
Thanks for your work! Looking forward for a stable version. Wanna help but RP2 is currently my only working phone..
u sir,deserve a beer,thanks for working rp2 and not to forget other devs who help u along the way,we will wait patiently,cheers!!!!
Thank you.
Interesting discovery just now, seems that the stock kernel gives the same 'error' in dmesg when recording audio (but obviously audio recording still works).
Code:
[ 1365.950315] send_afe_cal_type cal_block not found!!
This could mean that Razer doesn't have a calibration profile for the microphone anyway (interesting, wonder if there's an opportunity to improve recording quality here?) and that I'm barking up the wrong tree re: calibration mismatches.
I've also confirmed that I get the same 'ASoC: no backend DAIs enabled for [backend name here]' messages in the stock kernel when brute force trying all PCM inputs with:
Code:
for f in `seq 1 80`; do tinycap /sdcard/wavs/device-$f.wav -D 0 -d $f -r 48000; done
It's also (very) possible that I don't understand how tinycap works.
I dumped the list of PCM inputs/outputs with:
Code:
for f in `ls -d /proc/asound/sdm845tavilsndc/** | grep pcm`; do echo "$f : `grep 'id' $f/info`"; done
and
Code:
cat /proc/asound/pcm
on both kernels (stock and custom) and they seem to match.
I'm thinking I should figure out how to record sound outside of android (from adb only) from stock kernel, and use that same test to try in the custom kernel. If I can find a test like that, I should be able to determine if I need to rename one of my DAI links to match whatever's baked into the XML files in /vendor/etc .
Any ideas?
Are you using the audio.a2dp.default.so driver?
Warrior1988: A2DP isn't in play here, and I'm using the stock /system and /vendor partitions, so any razer-customized tweaks are still present.
Currently, I've been working on figuring out the codec mappings to make sure that when audio is being recorded in the custom kernel that all the appropriate routing is set to enable audio from the tfa98xx chip (NXP amplifier, apparently supports digital microphones too?) or the wcd934x codec.
I'm not sure where the microphones are physically connected internally, so I'm working backwards from what gets enabled/disabled when recording audio in the stock kernel.
So far I have observed a few things (pardon my potentially incorrect terminology, the whole linux ASOC sound layer is new to me):
1. Audio in the stock and custom kernels is being captured by the mixer device called "SDM845 Media1", and it is capturing from SLIMBUS_0_TX input.
Code:
[Recording]
aura:/sys/module # cat /sys/kernel/debug/asoc/sdm845-tavil-snd-card/SDM845\ Media1/state
[SDM845 Media1 - Playback]
State: new
Backends:
No active DSP links
[SDM845 Media1 - Capture]
State: start
Hardware Params: Format = S16_LE, Channels = 1, Rate = 16000
Backends:
- SLIMBUS_0_TX
State: start
Hardware Params: Format = S16_LE, Channels = 1, Rate = 48000
2. You can also see when recording and not recording that in both kernels the SLIMBUS_0_TX input is wired correctly to the right mixer:
Code:
[Not recording]
aura:/sys # cat ./kernel/debug/asoc/sdm845-tavil-snd-card/platform:soc:qcom,msm-pcm-routing/dapm/SLIMBUS_0_TX
SLIMBUS_0_TX: Off in 2 out 0 - R0(0x0) mask 0x1
stream Slimbus Capture inactive
out "static" "SLIM0_UL_HL"
in "static" "Slimbus Capture"
in "static" "BE_IN"
[Recording]
aura:/sys # cat ./kernel/debug/asoc/sdm845-tavil-snd-card/platform:soc:qcom,msm-pcm-routing/dapm/SLIMBUS_0_TX
SLIMBUS_0_TX: On in 2 out 1 - R0(0x0) mask 0x1
stream Slimbus Capture inactive
out "static" "SLIM0_UL_HL"
out "SLIM_0_TX" "MultiMedia1 Mixer"
in "static" "Slimbus Capture"
in "static" "BE_IN"
Now that I've observed those things, I need to do a bit more research on how audio can get enabled/disabled on each of the chips that touch it.
For instance, in the custom kernel, I noticed that during recording sounds the DMIC* lines on the second tfa98xx aren't enabled. I haven't checked in the stock kernel yet - but if the tfa98xx chip is providing mic bias, it's possible that everything is wired right for input but since the mic bias isn't on, the mic isn't powered and thus we get no sound.
(Updated side note, why is Razer Phone 2 is using two TFA9888 chips? The tfa98xx.cnt firmware references TFA9892 which is mono only, too. I need to see a disassembly to figure out what chips it's actually using...)
Code:
aura:/sys # cat ./kernel/debug/asoc/sdm845-tavil-snd-card/codec:tfa98xx.4-0034/dapm/DMIC*
DMIC1: Off in 1 out 0
out "static" "AIF OUT"
DMIC2: Off in 1 out 0
out "static" "AIF OUT"
DMIC3: Off in 1 out 0
out "static" "AIF OUT"
DMIC4: Off in 1 out 0
out "static" "AIF OUT"
aura:/sys # cat ./kernel/debug/asoc/sdm845-tavil-snd-card/codec:tfa98xx.4-0035/dapm/DMIC*
DMIC1: Off in 1 out 0
out "static" "AIF OUT"
in "static" "MIC BIAS1"
DMIC2: Off in 1 out 0
out "static" "AIF OUT"
DMIC3: Off in 1 out 0
out "static" "AIF OUT"
in "static" "MIC BIAS3"
DMIC4: Off in 1 out 0
out "static" "AIF OUT"
Update: just noticed that this path doesn't exist on stock kernel. So the TFA driver I have doesn't match the one Razer is using. Interesting!
Also, I'm not sure why SLIMBUS_2 playback/capture aren't shown as 'dynamic DAI' linked (the '(*)' means it's a dynamic DAI)... Probably not important though.
Code:
aura:/proc/asound # cat pcm
00-00: MultiMedia1 (*) : : playback 1 : capture 1
00-01: MultiMedia2 (*) : : playback 1 : capture 1
00-02: VoiceMMode1 (*) : : playback 1 : capture 1
00-03: VoIP (*) : : playback 1 : capture 1
00-04: MultiMedia3 (*) : : playback 1
00-05: SLIMBUS_0 Hostless (*) : : playback 1 : capture 1
00-06: AFE-PROXY RX msm-stub-rx-6 : : playback 1
00-07: AFE-PROXY TX msm-stub-tx-7 : : capture 1
00-09: AUXPCM Hostless (*) : : playback 1 : capture 1
00-10: SLIMBUS_1 Hostless (*) : : playback 1 : capture 1
00-11: SLIMBUS_3 Hostless (*) : : playback 1 : capture 1
00-12: SLIMBUS_4 Hostless (*) : : playback 1 : capture 1
00-13: MultiMedia5 (*) : : playback 1 : capture 1
00-14: Listen 1 Audio Service (*) : : capture 1
00-16: MultiMedia10 (*) : : playback 1 : capture 1
00-17: MM_NOIRQ (*) : : playback 1 : capture 1
00-18: HDMI_RX_HOSTLESS (*) : : playback 1
00-19: VoiceMMode2 (*) : : playback 1 : capture 1
00-20: Listen 2 Audio Service (*) : : capture 1
00-21: Listen 3 Audio Service (*) : : capture 1
00-22: Listen 4 Audio Service (*) : : capture 1
00-23: Listen 5 Audio Service (*) : : capture 1
00-24: Listen 6 Audio Service (*) : : capture 1
00-25: Listen 7 Audio Service (*) : : capture 1
00-26: Listen 8 Audio Service (*) : : capture 1
00-27: MultiMedia9 (*) : : playback 1 : capture 1
00-33: MM_NOIRQ_2 (*) : : playback 1 : capture 1
00-34: SLIMBUS8_HOSTLESS Capture (*) : : capture 1
00-35: Slimbus4 Capture tavil_vifeedback-35 : : capture 1
00-36: SLIMBUS_2 Hostless Playback tavil_rx2-36 : : playback 1
00-37: SLIMBUS_2 Hostless Capture tavil_tx2-37 : : capture 1
00-38: MultiMedia6 (*) : : playback 1 : capture 1
00-39: USB Audio Hostless (*) : : playback 1 : capture 1
00-80: QUAT_MI2S_RX Hostless (*) : : playback 1
Meanwhile, we've reached out to Razer to see if they'll bless us with the full and complete kernel source this time
I doubt it. They won't even answer simple questions as to an estimate of when we're getting Pie
blackknightavalon said:
I doubt it. They won't even answer simple questions as to an estimate of when we're getting Pie
Click to expand...
Click to collapse
>simple question
>eta
pick one
Any progress on this kernel? I'm really curious now that we have pie.
No progress as of yet, I've been busy with work recently and Razer hasn't dropped source for the new kernel version (still 4.9 but a different patch level).
I'm hopeful that Razer will drop the complete source for Pie's kernel and I can backport that to the Oreo kernel for those who want to keep the old OS.
I haven't updated my RP2 to Pie yet so I can test out any changes once the source for the new kernel is out. I'll be sure to post here when I have any updates
Audio-kernel source is out! https://s3.amazonaws.com/cheryl-factory-images/audio-kernel-aura-2009.tar.gz
I'll be rebuilding my kernel very soon and testing.
https://s3.amazonaws.com/cheryl-factory-images/
Warrior1988 said:
https://s3.amazonaws.com/cheryl-factory-images/
Click to expand...
Click to collapse
Yup, I'm building it right now!
Yup, it works! I have fully working audio and microphone now. Seems like there's a bunch of DAI changes and some offset changes to calibration stuff that FIH added (ugh).
Please hold while I get the commit up on my Github, and I'll get a build with exfat going here in just a minute after.
Plan is:
- Github updates (readme changes, etc) UPDATE: done
- Upload this current build I just tested for anyone that wants it
- Add exfat module to kernel and rebuild / test UPDATE: exfat support works, BUT I need to recompile vold to support exfat. I can mount the SD card just fine, but Android doesn't understand that it's mounted because vold isn't tracking it
Also, <3 u razer, thanks
I'm bummed to hear about the layoffs, and I really appreciate whomever uploaded the source even after that. Hopefully Razer's phone team will grow again and get to make us a Razer Phone 3 at some point in the future.
For anyone that's still running 8.1 and wants to try my custom kernel (no, no exfat support yet until I get vold fixed), here's a link: http://downloads.codefi.re/thecubed/aura2/kernel/boot_magisk_custom_10.img
Github has been updated as well.
I'll be sure to update the OP tomorrow when it's not 2AM.
EDIT: Fixed link, 2AM is not kind to my typing skills
Awesome work! Very excited to try it out tomorrow.
Also sad to see your post about their layoffs. Pretty fun phone with much potential for future.
I think some of the reviews are pretty harsh given the penchant of Pixel / Samsung / Apple worship out there.
Anyway, thanks so much for this.
thecubed said:
For anyone that's still running 8.1 and wants to try my custom kernel (no, no exfat support yet until I get vold fixed), here's a link: http://downloads.codefi.re/thecubed/aura2/boot_magisk_custom_10.img
Github has been updated as well.
I'll be sure to update the OP tomorrow when it's not 2AM.
Click to expand...
Click to collapse
Thank you for this!
It's showing up "Not found" on the download link though.
jal3223 said:
Thank you for this!
It's showing up "Not found" on the download link though.
Click to expand...
Click to collapse
Fixed the link in my previous post - sorry about that!
I'll be updating the OP tonight too when I get home from work.
Looking good! Is the sound as good as stock (or maybe better, considering the low volume crackling we get)?
Hoping to give this a shot soon, as soon as I figure out rooting on 9.0. I saw a thread about it, but nobody answered my question there, and light digging through threads didn't turn up an answer, so trying this kernel will have to wait a bit. Makes me miss the HTC root days, when finding out about root was a simple yes or no situation... lol.
PIXELARITYPIXELARITY contains pixel exclusives, fix and tweaks to boost user experience on devices running Android 9/10
Compatibility
Android 9
Android 10
Magisk 19+
List of Not Supported
Pixel Experience ROM
Huawei and Samsung Devices
Notes
For Those Having Problems Regarding Bootanimation You Can Manually Rename The Bootanimation To Work
For A/B Devices
Navigate to /system_root/system/product/media/
Rename bootanimation-dark.zip to bootanimation.zip
Replace existing bootanimation.zip with the renamed file
Reboot
For A-Only Devices
Navigate to /system/product/media
Rename bootanimation-dark.zip to bootanimation.zip
Replace existing bootanimation.zip with the renamed file
Reboot
Instructions
Download and install the module
Choose using vol keys
Reboot after you finished installing
Changelog
v3.8
HOTFIX
Fixed Module Installation
Cleanup
Code Optimization
v3.7
Bug Fixes and Improvements
Updated Props
Fixed SafetyNet
Fixed Status Bar Padding on Some Android 10 Devices
Mini Cleanup
v3.6
Bug Fixes and Improvements
Merged Props from QP1A.190711.020 for Android 10
Added Easle Services
Updated Bootanimation
Updated Perms
Fixed Force Close Google App from Android 9 ROMs
Fixed Bootloop When Uninstalling the Module
Removed Scone & Tips for Android 9
Enhanced Safety Parameters for Confirmed Not Suppoted Phones/R̶O̶M̶
Negates Samsung, Huawei Devices
N̶e̶g̶a̶t̶e̶s̶ ̶M̶e̶m̶e̶u̶i̶ ̶R̶O̶M̶
Major Cleanup
v3.5
Stability and Improvements
Fixed Android 9 Compatibility
Fixed Mi 8 SE Overlay
Added Scone and Tips
Removed Force Mount (RW) on AB Devices
Removed Overlays for Android 9 ROMs
Updated Perms
Updated Props
Updated Overlays
Moved Gaming Mode & Sound Mod to a Separate Moodule
Renewed Module Build ID for Faster Tracking
Cleanup
v3.4
Major Bug fixes
Fixed Module Installation with FDE, LKT & NFS (Can be used with PIXELARITY now)
Fixed Soundfx with DTS & ViPER (Can be used with PIXELARITY now)
Added Option for Fonts
Adjusted Gaming Mode Tweak Values
Cleanup
v3.3
General
Gaming Mode
Improved Memory Management
Disabled CPU/GPU Thermal Throttling
Fast Charge Enabled
VFS Cache Pressure Set to 150
Adjusted Entropy Values
More...
Reverted Fonts From Build 31114 with Fixes
Fixed Mic Issues
Fixed Static Sounds (Report if your phone still have crackling noise)
Fixed Signal Drop
Fixed Asus Sound Issues
Fixed Padding on Notched Phones
Fixed In-Call Audio Mi 9 SE
Initial Support for All Devices on Q GSIs and Pie ROMs (Except Pixels)
Improved Haptic Feedback
Improved Network Connectivity
Updated Overlays
Corrected Pie Props
Removed OTA Certs
Added Config to Enable Max Resolution Videos
Mini Cleanup
Module
Fixed Mount on A/B Devices
Added Device Restrictions (Pixel Phones Wont be Installing the Module Anymore)
Renewed ASCII Art (To make it readable on recovery)
Rewrite Code in More Efficient Way
Updated and Moved Notes in Front of README.md
Added Choice Not To Change Bootanimation
Switched Thermal Verification (Now vol
cancel thermal disabling, helpful to set default on legacy device)
v3.2
General
Added Q Easter Egg
Merged Props From QPP6.190730.005
Revert Fonts From Build 31000
Fixed Unreadable Characters
Fixed Dark Bootanimation Thanks to SpeedoWBT
Fixed Application of Bootanimation on A/B Devices
Disable GPU Throttle
Optimized GPU
Optimized CPU
Removed OBB Fix
Cleanups
Lavender / Violet
Fixed Bootloop When Disabling Thermals
Beryllium
Fixed BT Sounds When Thermals Disabled
Fixed Content Padding
Removed New Assistant Gesture Animation
Dropped Statusbar Fixes
Wayne / Jasmine Sprout
Initial Support
Adjusted Device Default Content Padding (Requested)
Sirius
Initial Support
Module
Get Exact Device Model
Updated Module Description
Improved Scripts
Fixed Misspelled Content
Added Support For Generic GSI
Added GNU Public License v3.0
Added Support For Jasmine Sprout, Wayne, and Sirius
Added Choice Whether Dark or Light Bootanimation to be Installed
v3.1
General
Added OBB Fix
Added Option to Disabe Thermals
Updated Fonts
Updated Props
Whyred
Removed Camera Libs
Revert Perf Profile (will be installed only if KangarooX detected)
Lavender / Violet
Fixed Status Bar Height
Fixed Content Padding
Fixed Safety Net
Beryllium
Fixed Status Bar Height
v3.0
General
Updated Fonts
Updated Overlays
Prioritize SBC Over AAC
Removed Thermals
Removed Perf Profiles
Removed NFC XMLs (Finally found causing battery drain)
Props Cleanups
Lavender / Violet
Fixed Status Bar Padding
Added New Google Assistant Gesture Animation
Beryllium
Added New Google Assistant Gesture Animation
Module
Add Lavender, Violet and Beryllium Support
Add ROM Check Function
v2.9
General
Fixed Pixel Style Rounded Corners cant apply other SystemUI Mod
Fixed Low In-Call Audio
Fixed Heating Issues
Updated Wlan Configs
Updated Sound Trigger & Mixer Paths
Updated Thermals
Updated Audio Libs
Updated Font
Updated Props
Set IME Height Ratio to 1
Added Overlays from Bonito
Added Adblock Hosts
Added Daydream Support
Added Graphics Lib from MIUI
GPU Tune-Up
Cleanups
Module
Fixed Module Installation now you can just flash over the old module
All New ASCII Art ᕙ(@°▽°@)ᕗ
Used TAR.XZ Compression Format to reduce file size significantly
Preparation for Lavender and Beryllium
v2.8
Fixed Random Reboot and System UI Crash on Whyred Default
Fixed In-Call whereby cant Turn Off Loudspeaker
Fixed No In-Call Audio
Fixed Stutters in Earpiece Speaker
Updated Props
Set Google Sans as System Wide Font
Set Wlan Scan Interval to 180
Improved Audio Experience
Improved Gesture Animations
Improved User Interface FPS
Improved Mic Quality
Performance Improvements
Return of Pixel Style Rounded Corners
Cleanups
v2.5
Fixed SafetyNet Issues Thanks to Alex
Fixed Initail In-Call Audio
Fixed "Ok, Google" and Gboard Voice Input Now Works Simultaneously
Fixed Heating Issues
Added Thermals from Srfarias
Updated Props
v2.0
Removed VR Maps
Changed Thermal Values
Fixed Wifi Not Detecting 5Ghz Band
Added Wifi Boost
Added New Assistant Gesture Animation to Whyred Default Mod
Set 30px Rounded Corners to Whyred Default Mod
v1.5.2
Updated Props
Reduced Module Size Significantly
Added New Thermals
Added Camera Patch from Nhappymann
Added Smart Replies
Added Patch to Gboard to have Faster Offline Voice Recognition
Fixed "Ok, Google" Detection Thanks to Alex
Removed Ambient Sense (Not Working)
Removed Dream Liner (Useless)
Removed Pixel Tips (Useless)
Removed Easle Services (Crashing)
Removed Scone (Crashing)
Changed Rounded Corner From 80px to 70px
v1.0
Initial Release
Credits
Gabriel Howard and Pix3lify Devs for my inspiration / motivation to create the module
Master Jaymin and Master Skittles for answering my noob questions
Master Fawkes for helping me to solve anything
Zackptg5 for Unity template
topjohnwu for Magisk
All of Telegram Friends that helps me bring up PIXELARITY
LIKED MY WORK? DONATE VIA PAYPAL
After the installation I got stuck in the boot animation, I can't even turn off the device anymore. Any idea?
Nokia 8
tyrean said:
After the installation I got stuck in the boot animation, I can't even turn off the device anymore. Any idea?
Nokia 8
Click to expand...
Click to collapse
What's your rom?
To uninstall reflash module on recovery to uninstall.
Kyliekyler said:
Reflash module on recovery to uninstall
Click to expand...
Click to collapse
I'd love to, but I'm stuck in the boot animation and can't turn off the smartphone or get it to do anything.
Solved!
Pixel 3 XL?
Should this installed on a Pixel 3 xl? And what is the purpose of the module?
hawki said:
Should this installed on a Pixel 3 xl? And what is the purpose of the module?
Click to expand...
Click to collapse
I also have no clue what this module actually does. The description is really vague.
hawki said:
Should this installed on a Pixel 3 xl? And what is the purpose of the module?
Click to expand...
Click to collapse
Uhm this module blocks pixels from installing, I forgot to add on list of unsupported.
moosefist said:
I also have no clue what this module actually does. The description is really vague.
Click to expand...
Click to collapse
Sorry but this only add pixel exclusives which includes:
Easle services
Tips
Scone
AR/VR Support
Gboard (Pixel Style)
QS Battery Estimate (If they're not appearing on Android 10)
Black theme (Android 9 but ROM dependent)
Padding fixes (Android 10 device specific)
Overall smoothness
Kyliekyler said:
Sorry but this only add pixel exclusives which includes:
Easle services
Tips
Scone
AR/VR Support
Gboard (Pixel Style)
QS Battery Estimate (If they're not appearing on Android 10)
Black theme (Android 9 but ROM dependent)
Padding fixes (Android 10 device specific)
Overall smoothness
Click to expand...
Click to collapse
Thank you for the description! Where did you pull the gboard from?
Also this module causes a bootloop on OnePlus 7 Pro running the latest android Q OOS
Do I need magisk to flash this......or flashing with twrp will do??
Aruss5 said:
Do I need magisk to flash this......or flashing with twrp will do??
Click to expand...
Click to collapse
Youu can flash it on twrp but u need magisk to be installed first
hawki said:
Should this installed on a Pixel 3 xl? And what is the purpose of the module?
Click to expand...
Click to collapse
This can't be installed on Pixel devices, sorry for vague description
eqbirvin said:
Thank you for the description! Where did you pull the gboard from?
Also this module causes a bootloop on OnePlus 7 Pro running the latest android Q OOS
Click to expand...
Click to collapse
Gboard can be pulled using props. Bootloop is a problem, if u can help me solve the bug, I would really appreciate it.
Oneplus 6T bootloop as well Lineage 17.0
mattish.91 said:
Oneplus 6T bootloop as well Lineage 17.0
Click to expand...
Click to collapse
I think the module isnt compatible with oneplus devices, there were enough reports of bootloop
Kyliekyler said:
I think the module isnt compatible with oneplus devices, there were enough reports of bootloop
Click to expand...
Click to collapse
Works great with my OnePlus 5
Thanks for your work on this useful module.
I use this on my Zenfone 5Z to get Safetynet/GPay working. Also gave me the ability to use my Google assistant hotword when my screen is off.
Although when this module is active, I lose access to my AUX camera. Editing my vendor/build.prop does not help (specifically editing the vendor.camera.aux.packagelist property). Uninstalling the module gives me back access to AUX camera in all camera apps.
Is there a way I can get around this? Seems like my actual build.prop values are being ignored, thus vendor.camera.aux.packagelist is not set and my camera apps aren't granted access to AUX camera. Any thoughts?
EDIT: I found the config files pixelarity9 and 10 under /common. After editing the values in there, AUX camera now works :good:
EDIT 2: Apparently this completely breaks BlueTooth for the Zenfone 5z
I've been trying to install this on my Nexus 7 2013 (running Pie-AOSP Extended). After a successful install, my Nexus 7 (2013) will not boot; uninstalling it in recovery returns my N7 2013 to working order. Pix3lify seems to work fine, but I'm stuck with another Boot Animation.
Works fine on my Nexus 6 (running Pie-AOSP Extended) with no issues, and I had both Pixelarity and Pix3lify installed there. What am I missing to get this working on my Nexus 7 2013? Running Magisk 19.4 on both Nexus 7 and Nexus 6.
Struck on Boot logo. Had to recover from TWRP. [emoji3525]
Sent from my GM1911 using Tapatalk
Anyone get this to work on one plus 7 pro on Android 10?