it´s all up on the repo the github link in the OP points to.Is the source code not available anymore? Github link seems to be outdated
Nvm sorry I didn't check the branches. Thank you
No last commit was on August 27th.
Hello
CC drivers/staging/qcacld-3.0/core/dp/txrx3.0/dp_txrx.o
CC drivers/staging/qcacld-3.0/core/dp/txrx3.0/dp_rx_thread.o
AR drivers/staging/qcacld-3.0/built-in.a
AR drivers/staging/built-in.a
AR drivers/built-in.a
make[1]: Leaving directory '/home/lossani/Desktop/tools/kernel/out'
make: *** [Makefile:146: sub-make] Error 2
VDSOA arch/arm64/kernel/vdso/note.o
VDSOA arch/arm64/kernel/vdso/sigreturn.o
/home/lossani/Desktop/tools/proton/bin/as: unrecognized option '-EL'
/home/lossani/Desktop/tools/proton/bin/as: unrecognized option '-EL'
clang-13clang-13: : error: error: assembler command failed with exit code 1 (use -v to see invocation)assembler command failed with exit code 1 (use -v to see invocation)
/home/lossani/Desktop/tools/proton/bin/as: unrecognized option '-EL'
clang-13: error: assembler command failed with exit code 1 (use -v to see invocation)
make[2]: *** [../arch/arm64/kernel/vdso/Makefile:57: arch/arm64/kernel/vdso/note.o] Error 1
The actual error happens probably earlier during compilation already.Hello
I'm trying to compile your kernel but I get these errors I don't know what it is exactly:
I'm using kirisakura_defconfig and proton toolchainsCode:CC drivers/staging/qcacld-3.0/core/dp/txrx3.0/dp_txrx.o CC drivers/staging/qcacld-3.0/core/dp/txrx3.0/dp_rx_thread.o AR drivers/staging/qcacld-3.0/built-in.a AR drivers/staging/built-in.a AR drivers/built-in.a make[1]: Leaving directory '/home/lossani/Desktop/tools/kernel/out' make: *** [Makefile:146: sub-make] Error 2
Can you tell me what toolchains or compile options you use? Any guide you have around?
Also, do you know what is the stock Asus ROG Phone 3 kernel compiled with, seems to be GCC and not CLANG? I see two paths "kernel/msm-4.19" and "vendor"
Thank you in advance!
The actual error happens probably earlier during compilation already.
Tool chains are prebuilt clang found on google repo, as well as GCC. Check my buildscript for the exact clang versions I use.
DTC ext called by the buildscript, is dtc built from aosp source.
The stock source as it is, is not compilable for a standalone build.
Don't know which toolchains the stock kernel is built with. I think some older clang supplied by QCOM to the oems.
Hello again,
I'm sorry to ask for this but I'm really stuck trying to compile your kernel, CleanSlate as well as stock one.
Seems to keep giving built-in.a errors in drivers.
Could you please link me to the toolchains you use? I got DTC from here https://android.googlesource.com/platform/external/dtc/ and compiled it and still get the same error. I only changed the paths for the other stuff, I'm also using these binaries as it is, just downloaded it and pointed to path bin:
I don't know if this is needed: https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/ as it seems to be commented out.
With your kernel reached some good point pass built-in.a error but it stopped at some WireGuard compilation error of a redefinition. Not sure if it is toolchain related.
In other topic, can I just directly update through zip file on ROG Phone 3 website to new version WW-18.0410.2109.172? Will it replace with no errors the custom kernel with stock one or do I need to go back to stock kernel first, also what about Magisk, do you know if it gets deleted when applying manual update?
Please help me out, I will really appreciate it.
Thanks!
Oh sorry, I mixed out about the 32 bit toolchain which was commented in CleanSlate build script.clang you can get from here:
compare the versioning in my script with that repo to see the exact build I´m using.
the links to GCC are correct. Clone the repos and reset the histories before GCC was deprecated on master branch. (so before remove GCC) It´s still needed for how the kernel is compiled on 4.19 for us.
32bit toolchain is not commented out in my buildscript, I´m not sure where you saw that:
![]()
Kirisakura_OBIWAN/build_kirisakura.sh at master_caf_linuxstable_custom · freak07/Kirisakura_OBIWAN
Contribute to freak07/Kirisakura_OBIWAN development by creating an account on GitHub.github.com
the error you added to your post after I quoted it, seems to be a toolchain problem. Either you need different changes for proton clang or need to adjust your build commands for proton clang. I don´t have any experience with proton clang so I can´t help you there.
If you adjust my buildscript to reflect your environment there should be no problems. for LTO at the end to be successful you need 32GB of RAM.
for the update, put full firmware.zip in internal sdcard (root of sdcard). reboot, press notification to trigger the update. when it asks to reboot, say you want to reboot later. then go to magisk manager, choose install, then install to inactive slot. Disable your magisk modules just in case and reboot.
Now you´ll be rooted on new firmware with stock kernel.
Yes you have to wait let's chill @Freak07 got thisWhat about version *.172 ? Will be released updated kernel for this firmware ?
Update to 1.0.7_R
Hey guys and girls,
So here´s the next update.
The kernel is now made for the firmware 18.0410.2109.172. Please make sure to update to this firmware before flashing the kernel to avoid potential issues. You can always flash the previous kernel, before I find time to update the kernel with the latest source, just don´t report issues if you decide to do so.
Link to full firmware zip: https://dlcdnets.asus.com/pub/ASUS/...S_I003_1-ASUS-18.0410.2109.172-1.1.5-user.zip
More details in the changelog below and on GitHub as usual.
I´d advise everybody to read the instructions in the OP and follow them. They are written for a reason, because they ensure everything will be working as expected.
Kernel is made for the latest stock rom from Asus, you must update your phone to the most recent Asus update, before flashing the kernel.
Enjoy!
Changelog:
- Include Source for 18.0410.2109.172
- Adjust battery saver (accessible via cleanslate config app) cpufreqs to most efficient ones according to freqbench
I wish you all a nice day/evening!
Download is below
Download is in this folder:![]()
Downloads for : -Android- Generic Device/Other | AndroidFileHost.com | Download GApps, Roms, Kernels, Themes, Firmware and more. Free file hosting for all Android developers.
Download GApps, Roms, Kernels, Themes, Firmware, and more. Free file hosting for all Android developers.www.androidfilehost.com
Instructions how to flash the kernel can be found in the OP!
But look at this post too
To make use of the CleanSlate features you need to download both CleanSlate Apps:
Please take a look at the CleanSlate thread for CleanSlate features. On the CleanSlate thread you will find links to both apps, companion and configuration app, to control the CleanSlate features.
If you use the CleanSlate features and benefit over time, maybe think about giving something back to @tbalden and purchase them from PlayStore.
Have fun, enjoy the kernel and your phone.
Donations are not mandatory but very welcome.
If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
hey,Hi @Freak07! Is there any chance you could update Android 10 kernel with new security patches and drivers?
For some reason Android 11 doesn't work for me. I mean it's working but phone is freezing when unplugged from usb3 dock. And I'm docking it many times a day in my work place.
Have to hard reboot after which makes me really madWould be really grateful and I will defo buy you a coffee or even breakfast if you could help
![]()
Thanks a lot for your hard work! Much appreciated.
I have few questions about the customization you did in your kernel source code. Does the module that requires root for this kernel (the one that gets installed as a Magisk module) is referenced or written in any way in the kernel source code? For example the UCI from Clean Slate is there as code. If so, what are the key parts included? You upstreamed from Google AOSP and included CodeAurora tags right?
I finally compiled your kernel but I tried to compile the stock one, including the techpack and other "missing" stuff following the Clean Slate structure but it never boots, well, I tried to implement parts of code from your kernel to compile with LTO and that one seems to not boot at all, so I tried to compile the most stock-like one without LTO and it boots but it takes a lot of time to boot and when it does the UI and other stuff like WiFi doesn't work or crashes.
I read somewhere in ROG Phone 5 forum that I needed to disable module signature check, I did but still same result with LTO compilation, didn't try the one that boots without module signature check though, but the question is: What else should I look at in order to compile stock one?
Thank you!
Thanks for your reply, you made me notice some stuff I was not counting on.hey,
unfortunately I´m usually only updating the kernel, that´s matching the android version the device is currently running from as official firmware.
The reason is that I´m not able to test a build for Android 10 prior to releasing it here. On one hand I lack the time (and motivation) to switch between Android 10 and Android 11 on the other I lack the time to maintain two kernel branches for a device.
If you´re running the latest A10 release from this thread you´re far ahead on CAF-Upstream and Linux-Stable upstream compared to the stock A11 kernel. Both contain most security patches that end up in the monthly security bulletin.
Of course at one point there might be something you´re missing, but it´s still a good option.
I´m also curious, can you link me the usb3 dock you´re having problems with and try to describe the exact configuration you have problems with? Do you utilize some mods or settings not exposed on the official settings?
Does that problem also happen on A11 stock kernel?
If there´s an obvious bug we might be able to forward this to asus and try to get it fixed.
The magisk helper module doesn´t require root per se, it requires a working magisk environment as we need to replace a few kernel modules during bootup.
The functionality of creating that module is part of the anykernel3, you find the source code for this on github.
Drivers can be compiled either directly into the zImage or outside the zImage as kernel modules. Those kernel modules (.ko files) need to be replaced with the ones that are compiled during compilation of my kernel, because they have to match the kernel they´re compiled against. That´s what the magisk helper module does.
That´s also the reason your compiled stock kernel has broken WiFi. WiFi driver gets compiled as a kernel module on stock firmware that´s loaded (insmod) during bootup.
Those modules always have to match the exact kernel. So insmoding will fail because you compiled your kernel and now it tries to insmod the stock kernel´s wifi driver module.
You have a few options. On a kernel like CleanSlate that´s very close to stock, except the added UX features, you can "force load" those modules and override the check. Depending on the code changes this can be fine, introduce bugs or not work at all depending how far you stray from the stock kernel.
My kernel has wifi driver built into the zImage instead of externally as a kernel module. You need to change the wifi driver to work when not being built as a kernel module though.
Due to how the fan is handled in asus OS, this driver needs to be shipped as a kernel module. The only way for me is to compile the kernel module, and replace it via magisk during bootup, as I can´t resort to force loading kernel modules.
Similar problems might apply to other drivers if you try to get the released kernel source into a compilable standalone kernel. Audio drivers need to be compiled also inline for example.
But if you already got it booting, the hardest step is done. Take kernel logs and compare with the stock one and I hope you will eventually get there.