Related
Hi,
Could you generalize a download from OmniRom without kernel ?
A lot of OmniRom users a poweruser and used another kernel
bbk said:
Hi,
Could you generalize a download from OmniRom without kernel ?
A lot of OmniRom users a poweruser and used another kernel
Click to expand...
Click to collapse
No. The included kernel is the only supported configuration, and it will always be this way.
Why? Anything else results in a testing nightmare. It's bad enough when we change out blobs that require a matching kernel change and a maintainer's thread gets flooded with "it's not working with X kernel any more".
Anyone can submit changes to Omni's kernels for review in gerrit, so that leads to the question:
1) Why is the maintainer of an alternate kernel not upstreaming to gerrit? What are they hiding?
2) If a change was submitted to gerrit, why was it rejected? In many cases, some of the "features" of alternate kernels are highly dangerous (such as disabling per-file fsync and allowing devices to pull more than 500 mA from a standard USB host port)
This thread will be about changes i have made to the device trees for the t700,t705,t800,t805 which should in the long run make maintaining the variants a lot easier the primary changes i have done are combine all 4 of the variants into 1 kernel source as well as make a common device tree so they can inherit everything that is the same across devices.
Kernel Changes:
The Base kernel from Cyanogenmod supports klimtwifi (T700) and klimtlte (T705) to add support for chagallwifi (T800) all that is needed is to add its defconfig which is this file
https://github.com/LiquidSmooth-Dev...arch/arm/configs/deathly_chagalllte_defconfig
To add support for the Chagallte (T805) it was a little more complicated for to do but very simple for you guys for a little background T805 is exactly the same chipset as the other Galaxy Tab S's except for whatever reason Samsung decided to put a different gpu (Midgard_wk04) everyone else uses a mali_t6xx.
The stuff developers actually need to support Chagalllte are the following:
Defconfig:
https://github.com/LiquidSmooth-Dev...arch/arm/configs/deathly_chagalllte_defconfig
The GPU addition commit:
https://github.com/LiquidSmooth-Dev...mmit/c8e96e86c902cbc2b13d34e7e7158623eacf5d84
Bam that was easy now any kernel can support all 4 main variants of the Tab S
Device tree and vendor repos
First part i want to place links to all of the stuff that's needed to make a rom for each device in one place.
(Disclaimer the trees will be LiquidSmooth but it is very easy to convert them to any rom)
Klimtwifi (T700):
https://github.com/LiquidSmooth-Devices/android_device_samsung_klimtwifi
https://github.com/TheMuppets/proprietary_vendor_samsung/tree/cm-12.1/klimtwifi
Klimtlte (T705)
https://github.com/LiquidSmooth-Devices/android_device_samsung_klimtlte
https://github.com/schwabe93/vendor_samsung_klimtlte
Chagallwifi (T800)
https://github.com/LiquidSmooth-Devices/android_device_samsung_chagallwifi
https://github.com/diego-cr/android_vendor_samsung_chagallwifi
Chagalllte (T805)
https://github.com/LiquidSmooth-Devices/android_device_samsung_chagalllte
https://github.com/Andrewt12/android_vendor_samsung_chagalllte
WIP Common Device Tree:
When bringing up support for LiquidSmooth for these devices i noticed that they are all pretty much copied each other (which makes sense) but because of it there was tons of duplicated code between the devices so i decided to make a common device tree so any future code changes could be placed in one place instead of over 4 device trees. This is still a WIP because i do not have all the devices so i can not test them all in my eyes they should all work fine. The common device tree will also hopefully will be rom independent so no changes would be needed on a per rom basis. I can for sure say klimtwifi and chagallwifi work with my common tree, Chagalllte and klimtlte need to be tested still.
Common Device tree repo:
https://github.com/LiquidSmooth-Devices/android_device_samsung_exynos5420-common
Common device tree migration commits
Klimtwifi:
https://github.com/LiquidSmooth-Dev...mmit/444b4fc08f82eeeabe8e0a533539fe0c2fadd723
https://github.com/LiquidSmooth-Dev...mmit/cdf5f06c8a29bb237b964d5ee602d151c6323677
Klimtlte:
https://github.com/LiquidSmooth-Dev...mmit/8570d466e2b5b88c316c7f1576bf8ea9051c5e2a
Chagallwifi:
https://github.com/LiquidSmooth-Dev...mmit/5be51eb30283355109c65513ea209dd1d6855ff2
Chagalllte:
https://github.com/LiquidSmooth-Dev...mmit/5ff21d73a9cad3f7f9cf7f79b29bdbab0d8b2b1e
One more improvement that myself and @diegocr made was finally made a pernament fix to Chagallwifi's (T800) wifi issue he made a custom release tool in the device tree to make it so you would not have to manually patch it every time. I then took that and fixed the root of the issue which was that the vendor repo was not putting the files in the right spot. (My orig commit also did egl but that was not needed) the commit that did it is this:
https://github.com/diego-cr/android...mmit/1fc5135eda985ddc159f8465ee114e67aa5dfcae
Now into the features of my Deathly kernel
XDA:DevDB Information
[Dev Info] [Deathly Kernel] [AOSP] [Lollipop 5.1.1], Kernel for the Samsung Galaxy Tab S
Contributors
deadman96385
Kernel Special Features:
Version Information
Status: Testing
Created 2015-06-22
Last Updated 2015-06-21
Deathly Kernel
I have had a deathly kernel on most devices i own the goal of it is to get as many options and features into a kernel but still be stable. For the Tab S i took the aosp cm base and have updated it against kernel.org from 3.4.105 too 3.4.108 along with pull in a bunch of features from other exynos 5420 devices
As you read above i have made a common tree which changes the ramdisk so i have to provide two zips one with the new format one with old format currently the only rom that i personally have built with the new version is the latest klimtwifi and chagawifi all other roms will boot loop with it so use the old version
Currently i only have flashable for Klimtwifi (T700) i will generate the others once i get back from my trip.
New Ramdisk option:
http://www.drdevs.com/devs/teamliquid/Kernels/klimtwifi/New_format/
Old Ramdisk option:
http://www.drdevs.com/devs/teamliquid/Kernels/klimtwifi/Old_format/
Features of the Deathly kernel:
Will support all 4 main tab s devices (will add support for the US carrier variants if aosp is brought up)
CPU Voltage Control
CPU OverClock/UnderClock
GPU Voltage Control
GPU OverClock/UnderClock
MIF/INT Voltage Control (I will not show how to configure this if you know how too then you can)
Wolfson Sound Control Thanks to oloendithas for fixing it for stereo out
UKSM instead of KSM
Added the following IO Schedulers: fifo, fiops, sioplus, tripndroid, vr, zen, bfq (Default)
Full f2fs support updated off the mainline (Stock cm kernel has limited support)
Modified Thermal Throttling temperatures for all devices so hopefully they won't get as hot (WIP)
Android Logger disabled by default can be enabled over sysfs
Exynos thermal exposed to sysfs
WQ power efficient workqueues (Still need to apply in more places)
Frandom Support
Readahead bumped to 256 from 128
Details how to configure all of the features i will add the rest once i come back
GPU Configuration:
To configure the max or min gpu frequency you would go to either of the following files in a root enabled file browser and change the value inside
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq_gpu
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq_gpu
The allowed values for the files are as followed:
667, 600, 533, 480, 420, 350, 266, 177, 100
T800 owners the default min gpu freq is 100 on all roms if that causes issues raise the min freq to 266 you will probably not notice a battery decreases if that still does not work let me know i'll take a look at the code.
Reserved
Reserved
Thanks, working great on CM12.
Thank you man.. Im glad someone finely separated the device tree... And specially Happy about a new kernel that I can use in my Project Roms.
With all Credits going to you of course.. thanks again.
Hey mate, thanks for this!
I'm a little unsure about the new and old ramdisk thingy.
Running aicp on my klmitwifi, new ramdisk is cool?
Will try anyway, but let me know please!
Edit :
just checked, didn't stupidly before, Looks like the kernel is baked in your AICP rom.
Thanks again for your hard work!
Edit edit:
tried the v02 on the rom mentioned, had to revert cause I was having many ui fc.
Used new ramdisk version, could be that or I should have done a clean flash maybe?
Thanks for this, hopefully if fixes the lag issue for me on CM12 with the T800.
Thanks for all the hard work, grid .1 and .2 both worked perfect on bliss rom
Thanks, I will use your kernel on my chagallwifi SlimLP builds
Wait, does the Deathly kernel already in CarbonROM for T700 have F2FS support already? Or is that for the New Version and not yet built for klimtwifi? Thanks
SkOrPn said:
Wait, does the Deathly kernel already in CarbonROM for T700 have F2FS support already? Or is that for the New Version and not yet built for klimtwifi? Thanks
Click to expand...
Click to collapse
The f2fs version in the carbon build is not updated like it is now so i can not guarantee it works the next build will work though
deadman96385 said:
The f2fs version in the carbon build is not updated like it is now so i can not guarantee it works the next build will work though
Click to expand...
Click to collapse
OK, thanks. Hope your enjoying your time off... :good:
I'm going to backup your kernel and try ashyx's new build released today. Its closer to stock but has F2FS support also. Then I will test yours once its updated. Loving this new tab of mine, almost forgot how much fun it was trying to find the sweet spot on a device, lol. My Nexus 7 found its sweet spot a long time ago and now its just a plain ole boring tablet. hehe
diegocr said:
Thanks, I will use your kernel on my chagallwifi SlimLP builds
Click to expand...
Click to collapse
...Slim LP, for t800 maybe, where to find it?
m.
meduza2 said:
...Slim LP, for t800 maybe, where to find it?
m.
Click to expand...
Click to collapse
In SlimRoms Builders Collective
diegocr said:
In SlimRoms Builders Collective
Click to expand...
Click to collapse
...nice Do you intend to make an own SLIM LP thread?
m.
meduza2 said:
...nice Do you intend to make an own SLIM LP thread?
m.
Click to expand...
Click to collapse
Great idea, but now I have no time to keep updated
diegocr said:
Great idea, but now I have no time to keep you updated
Click to expand...
Click to collapse
Would be really great!!
I would like to see SLIM LP on my tab s A platform to exchange user experience for our specific device would be very helpful for you and us
m.
meduza2 said:
Would be really great!!
I would like to see SLIM LP on my tab s A platform to exchange user experience for our specific device would be very helpful for you and us
m.
Click to expand...
Click to collapse
http://forum.xda-developers.com/galaxy-tab-s/development/rom-ezio84-slimlp-t3146025
Just ordered the phone today, will get it today , but my model is CAZ-AL10. Anyway, only thing I think the kernel really needs is maybe some governor/IO schedule options and the latest security patches from google. Is anyone working on this? I downloaded the source, and have done some basic kernel building, basically building someone else's git repo, but how would one go about merging the latest security patch to the kernel? I know how to add governor/IO stuff, but I have looked all over and cannot find anything to help me with this question. Is it just a matter of syncing AOSP source?
Regarding this thread https://forum.xda-developers.com/moto-g4-plus/development/kalilinux-nethunter-t3639411
The OP tywinlannister did not patch the kernel source code with Android USB HID PATCH To use the Android device as keyboard or mouse..This should be applied for nethunter ROM, But he didn't..
And I asked resurrection remix ROM maintainer Jleeblanch for Athene to look at this issue he did it , after applying the patch it didn't successfully compile ,there were errors..By seeing the error he said that the official kernel is partially patched already,so it is causing those errors..
If anybody looks into the problem it would be appreciated just in your free time only ...
The link to kernel source of Jleeblanch is the "Kali branch" https://github.com/Jleeblanch/android_kernel_motorola_msm8952
Any problem or suggestions regarding to this can be discussed here itself , that others can address the issue..
I too have been waiting for a working kernel so I am going to attempt to compile a working kernel with hid with my limited kernel development knowledge. I think it probably won't work as two far better devs than me have yet been unable however I will try anyway
Any help from fellow devs would be greatly appreciated
Dougleplex said:
I too have been waiting for a working kernel so I am going to attempt to compile a working kernel with hid with my limited kernel development knowledge. I think it probably won't work as two far better devs than me have yet been unable however I will try anyway
Any help from fellow devs would be greatly appreciated
Click to expand...
Click to collapse
I am also a newbie to kernel development but I manually patched the hid sources to kernel source..
But when we complied it all those errors.
First I think we should delete all those hid patches all applied to the stock kernel source. Then compile it and then apply the patch by pelya...
My ROM s kernel developer say MM kernel will be easy but it is also partially patch
You may give it a try
Dhanush-raj said:
I am also a newbie to kernel development but I manually patched the hid sources to kernel source..
But when we complied it all those errors.
First I think we should delete all those hid patches all applied to the stock kernel source. Then compile it and then apply the patch by pelya...
Click to expand...
Click to collapse
I'm going to attempt to patch jleeblanch's rr kernel and then work backwards depending on the errors as last time I did something like this (s7 edge nethunter kernel) the error was a corrupted source and could easily have been fixed by finding a different repository rather than starting from scratch (what we did). I'm unsure as to what will happen after that however your idea is just as valid and I will try straight after (if you haven't already)
Test this kernel
Note that this is the Invicta kernel. You need a revert before the actual patch. Both commits are available on my gitlab.
Merged both into a single commit. Note that Invicta kernel is still 3.10.84. Upstream kernels may need additional changes. Test and let me know.
If you want to apply the patch to your kernel, you can use the attached patch file or use the commands below. ( using lineage kernel as example )
Code:
git clone https://github.com/LineageOS/android_kernel_motorola_msm8952.git
cd android_kernel_motorola_msm8952
git checkout cm-14.1
git remote add invicta https://gitlab.com/sileshn/android_kernel_motorola_athene.git
git fetch invicta
git cherry-pick 04aa0b10521b76e57226b2d1633e2b91cfa40263
If you don't get errors, you are good to go. If it errors, it needs more changes.
Silesh.Nair said:
Note that this is the Invicta kernel. You need a revert before the actual patch. Both commits are available on my gitlab.
Merged both into a single commit. Note that Invicta kernel is still 3.10.84. Upstream kernels may need additional changes. Test and let me know.
If you want to apply the patch to your kernel, you can use the attached patch file or use the commands below. ( using lineage kernel as example )
Code:
git clone https://github.com/LineageOS/android_kernel_motorola_msm8952.git
cd android_kernel_motorola_msm8952
git checkout cm-14.1
git remote add invicta https://gitlab.com/sileshn/android_kernel_motorola_athene.git
git fetch invicta
git cherry-pick 04aa0b10521b76e57226b2d1633e2b91cfa40263
If you don't get errors, you are good to go. If it errors, it needs more changes.
Click to expand...
Click to collapse
Kernel version 3.10.105 was initially the kernel I tried patching. I was easily able to merge the patch, but compiling it was a different story. According the errors I got, a lot of thing we're duplicated. I told the guy above that the MM based kernel (3.10.84 - which is the same version for MM thru Nougat on stock) would probably be the best bet. Looks like you had little trouble at all with merging into your Invicta Kernel (which is also kernel version 3.10.84).
Good job and thank you [emoji41]
Silesh.Nair said:
Note that this is the Invicta kernel. You need a revert before the actual patch. Both commits are available on my gitlab.
Merged both into a single commit. Note that Invicta kernel is still 3.10.84. Upstream kernels may need additional changes. Test and let me know.
If you want to apply the patch to your kernel, you can use the attached patch file or use the commands below. ( using lineage kernel as example )
If you don't get errors, you are good to go. If it errors, it needs more changes.
Click to expand...
Click to collapse
Thanks @Silesh.Nair I have been waiting long time for this patch. Once again thank you sir...
The patch is working perfectly in 3.10.105 i.e jleeblanch kernel source..
Linux version 3.10.107-lineageOS ([email protected]) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05) ) #1 SMP PREEMPT Sat Aug 5 04:20:04 PDT 2017
And thank you @Jleeblanch Also
boot tool
Silesh.Nair said:
Note that this is the Invicta kernel. You need a revert before the actual patch. Both commits are available on my gitlab.
Merged both into a single commit. Note that Invicta kernel is still 3.10.84. Upstream kernels may need additional changes. Test and let me know.
If you want to apply the patch to your kernel, you can use the attached patch file or use the commands below. ( using lineage kernel as example )
Code:
git clone https://github.com/LineageOS/android_kernel_motorola_msm8952.git
cd android_kernel_motorola_msm8952
git checkout cm-14.1
git remote add invicta https://gitlab.com/sileshn/android_kernel_motorola_athene.git
git fetch invicta
git cherry-pick 04aa0b10521b76e57226b2d1633e2b91cfa40263
If you don't get errors, you are good to go. If it errors, it needs more changes.
Click to expand...
Click to collapse
Hey which tool did you used to make boot.img.
Marella ram_youtubr said:
Note that this is the Invicta kernel. You need a revert before the actual patch. Both commits are available on my gitlab.
Merged both into a single commit. Note that Invicta kernel is still 3.10.84. Upstream kernels may need additional changes. Test and let me know.
If you want to apply the patch to your kernel, you can use the attached patch file or use the commands below. ( using lineage kernel as example )
Hey which tool did you used to make boot.img.
Click to expand...
Click to collapse
I am using lazyflasher
https://github.com/jcadduono/lazyflasher
Just clone this repo and place the zimage in there and type make, you will get a zip file. Just flash it through twrp recovery. Because only the kernel is changed , so i am just replacing the zimage. No need of unpacking and repacking of boot image.:good:
i have compiled a zimage from kali_defconfig from above source.but when i flased it to phone the phone is not booting.
I NEED A FIX FOR THIS
Marella ram_youtubr said:
i have compiled a zimage from kali_defconfig from above source.but when i flased it to phone the phone is not booting.
I NEED A FIX FOR THIS
Click to expand...
Click to collapse
Which toolchian did you use, and what kernel source and rom you are using .
Give me as detailed information as possible!
Dhanush-raj said:
Which toolchian did you use, and what kernel source and rom you are using .
Give me as detailed information as possible!
Click to expand...
Click to collapse
Kernel Source:-https://github.com/Jleeblanch/android_kernel_motorola_msm8952/tree/kali-nougat
toolchain:- https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 nougat-release
rom:- lineage 14.1 official
Marella ram_youtubr said:
Kernel Source:-https://github.com/Jleeblanch/android_kernel_motorola_msm8952/tree/kali-nougat
toolchain:- https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 nougat-release
rom:- lineage 14.1 official
Click to expand...
Click to collapse
Don't use that source it isn't patched correctly, although i said mr. Jleeblanch to try , so he created it. The hid patch is merged into his resurrected kernel, but for mac injection i dont remember. So you better start from the first.
Use lineage kernel source and apply the patch from this thread #6th post, and see what toolchain is used to build lineage 14 kernel and use it. And additionally you have to make some changes in the defconfig, which is explained in the kali-nethunter github page.
Dhanush-raj said:
Don't use that source it isn't patched correctly, although i said mr. Jleeblanch to try , so he created it. The hid patch is merged into his resurrected kernel, but for mac injection i dont remember. So you better start from the first.
Use lineage kernel source and apply the patch from this thread #6th post, and see what toolchain is used to build lineage 14 kernel and use it. And additionally you have to make some changes in the defconfig, which is explained in the kali-nethunter github page.
Click to expand...
Click to collapse
thanks buddy
Dhanush-raj said:
Don't use that source it isn't patched correctly, although i said mr. Jleeblanch to try , so he created it. The hid patch is merged into his resurrected kernel, but for mac injection i dont remember. So you better start from the first.
Use lineage kernel source and apply the patch from this thread #6th post, and see what toolchain is used to build lineage 14 kernel and use it. And additionally you have to make some changes in the defconfig, which is explained in the kali-nethunter github page.
Click to expand...
Click to collapse
sileshn has removed his source
Marella ram_youtubr said:
sileshn has removed his source
Click to expand...
Click to collapse
https://forum.xda-developers.com/mo...ustom-kernel-developers-t3641363/post73257121
Dhanush-raj said:
https://forum.xda-developers.com/mo...ustom-kernel-developers-t3641363/post73257121
Click to expand...
Click to collapse
He had deleted his repo from gitlab
Marella ram_youtubr said:
He had deleted his repo from gitlab
Click to expand...
Click to collapse
use this bro...
Dhanush-raj said:
use this bro...
Click to expand...
Click to collapse
Actually my orginal phone is honor 6x.I love portable hacking.Like with nethunter.I tried to build nethunter kernel for honor 6x.But i failed at HID.So i took by brothers old phone That is moto g4 plus.later i found that moto g4 plus at android 7 is 32 bit.As there is no nethunter for 32 bit i have decided that atleast i should use linux deploy.But later i suck at wifi drivers.When i enable wifi drivers in kernel then phone doenst boot.
The final thing is can anyone help me in fixing this so that i can build a complete usable kernel with Net Hunter support
I'm kinda new here, so please excuse me if this is not the best place to ask and it should instead be posted in another section.
First, a bit of context: I recently bought a refurbished H910 to practice android development since it was fairly cheap, and after testing its features and unlocking the bootloader to install custom roms, i opted to start compiling a kernel of my own with some changes to begin involving myself with the development side of things. For now, i am using the Lineage OS 18.1 kernel sources on github as a base for the kernel, then after making sure that the kernel compiled, i flashed it into the phone and basically everything works with the only exception being the bluetooth, and maybe the IR Blaster, but that one is working just like the stock kernels on different Android 11 roms.
Now getting to the issue itself in more details... it boils down to the phone's bluetooth refusing to turn on while running that custom kernel of mine on any Android 11 ROM, be it Lighthouse, Superior OS Xcalibur or Lineage 18.1, the bluetooth tile gets stuck on the "Turning on..." icon animation for a while and then returns to the disabled state. Reverting to the stock kernels or even using other custom kernels like Lyb's or Gamma make the Bluetooth work again without needing a wipe, which tells me that the problem is definitely somewhere in my kernel. I could of course test it on some Android 10 ROMs, but the outcome will most likely be the same.
I even took some logcats via ADB Shell but they are kind of broad and mostly explain that the service had some problems with "com.android.bluetooth service has died: psvc PER", followed by a "scheduled restart of crashed service com.android.bluetooth...". Both of which never happen on those ROM's stock kernels, where the bluetooth works as expected. I looked around on Lyb/Gamma kernel sources on github, and there aren't any major differences to the defconfigs for example with the bluetooth driver configuration also being just about the same.
I'm not sure if this will be of any help, but as for the toolchains and compilers, i am using clang 11.0.2 383902b1 as the main compiler, gcc 4.9 as the ARM32 cross-compiler, and gcc from 4.9 up to 10.3 as the AARCH64 cross-compiler, all running on Manjaro. I also changed that combination dozens of times, but to no avail.
So am i missing something during the compilation process? With all those things i already checked, i keep getting a feeling that something really simple is going over my head. Also, i can post the link to my github repository here if needed, there's a branch made specifically to check the BT since it has only the changes made to assure that the kernel compiles.
Edit: The problem was solved!!! It actually comes down to using the exact toolchains provided by the lineage OS source tree for the device (that might be optional, but it's how i managed to get it working) and checking if everything has been installed correctly. It seems some files failed to download the last time i did a 'repo sync' on the source and that was what might have caused this.