[DEV] Porting kernel 3.10.x to d2 for Lollipop - Galaxy Note II, Galaxy S III Developer Discussion

As we know, Android Lollipop is being released soon, and it requires a kernel that is 3.10.y, which is not available for our device. I'm not great with kernels and would in no way consider myself a kernel developer, but I have applied the neccessary patches to get the kernel version up to 3.10.0, which can be found here https://github.com/frap129/android_kernel_samsung_d2. Because I'm not a kernel developer, I am looking for some help in at least getting this kernel somewhat ready before the release of 5.0, so we can all get the latest update ASAP. Any and all help is apreciated!

Does your kernel compile and boot on cm11? If it does, there shouldn't be much problems in getting it working on L.

Any news? Does it compile?

frap129 said:
As we know, Android Lollipop is being released soon, and it requires a kernel that is 3.10.y, which is not available for our device. I'm not great with kernels and would in no way consider myself a kernel developer, but I have applied the neccessary patches to get the kernel version up to 3.10.0, which can be found here https://github.com/frap129/android_kernel_samsung_d2. Because I'm not a kernel developer, I am looking for some help in at least getting this kernel somewhat ready before the release of 5.0, so we can all get the latest update ASAP. Any and all help is apreciated!
Click to expand...
Click to collapse
nope android 5.0 doesnt require new kernel, you could build it on 3.0.y like i am doing on my Note 2 oh and as far as i know new nexus devices are still on 3.4.y

Ivan_Meler said:
nope android 5.0 doesnt require new kernel, you could build it on 3.0.y like i am doing on my Note 2 oh and as far as i know new nexus devices are still on 3.4.y
Click to expand...
Click to collapse
yes, but the new Samsung tablets (at least) are being shipped with the 3.10.x kernels.. 'course they're still running kitkat at the moment, but definitely cannot wait to see if/when they get kit kat.
I'll have to report back later after I take pictures of the 'about phone' page lol [if you want proof anyway]

frap129 said:
As we know, Android Lollipop is being released soon, and it requires a kernel that is 3.10.y, which is not available for our device. I'm not great with kernels and would in no way consider myself a kernel developer, but I have applied the neccessary patches to get the kernel version up to 3.10.0, which can be found here https://github.com/frap129/android_kernel_samsung_d2. Because I'm not a kernel developer, I am looking for some help in at least getting this kernel somewhat ready before the release of 5.0, so we can all get the latest update ASAP. Any and all help is apreciated!
Click to expand...
Click to collapse
ztotherad said:
yes, but the new Samsung tablets (at least) are being shipped with the 3.10.x kernels.. 'course they're still running kitkat at the moment, but definitely cannot wait to see if/when they get kit kat.
I'll have to report back later after I take pictures of the 'about phone' page lol [if you want proof anyway]
Click to expand...
Click to collapse
I know samsung does things like that (i have few other devices from them) but hey thats samsung and they are lazy so they dont want to update kernel version after device is relesed so they do this not to feel outdated on softwere side

Whoops! I read somewhere that the newly expanded SELinux permissions had some dependency on the 3.10.y kernel. Oh well, I guess Ill just test it anyways so I can brag that I have a newer kernel than anyone else if it works

frap129 said:
Whoops! I read somewhere that the newly expanded SELinux permissions had some dependency on the 3.10.y kernel. Oh well, I guess Ill just test it anyways so I can brag that I have a newer kernel than anyone else if it works
Click to expand...
Click to collapse
That would definitely be awesome! Be sure to report back your results. I'm not an experienced ROM or kernel developer, but I'll be attempting on bringing a pure AOSP 5.0.0_r2 to my GS3. I'm not sure how successful I'll be, but my first step involved me planning on copying over our vendor repo from CM's M11 or M12 release (whenever that gets out) and trying to build Lollipop against it.

polarEskimo said:
That would definitely be awesome! Be sure to report back your results. I'm not an experienced ROM or kernel developer, but I'll be attempting on bringing a pure AOSP 5.0.0_r2 to my GS3. I'm not sure how successful I'll be, but my first step involved me planning on copying over our vendor repo from CM's M11 or M12 release (whenever that gets out) and trying to build Lollipop against it.
Click to expand...
Click to collapse
I was planning on working on that as well over the weekend.

polarEskimo said:
That would definitely be awesome! Be sure to report back your results. I'm not an experienced ROM or kernel developer, but I'll be attempting on bringing a pure AOSP 5.0.0_r2 to my GS3. I'm not sure how successful I'll be, but my first step involved me planning on copying over our vendor repo from CM's M11 or M12 release (whenever that gets out) and trying to build Lollipop against it.
Click to expand...
Click to collapse
You will need to change many things in device tree to get it compile oh and dont forget to disable cm overlays

Ivan_Meler said:
You will need to change many things in device tree to get it compile oh and dont forget to disable cm overlays
Click to expand...
Click to collapse
I'm very new to the AOSP build process and didn't have much luck last night getting the CM device sources to play nicely with AOSP. I'm finding it difficult to find any relevant guides on porting over the CM device trees to pure AOSP. If you or anyone else can help by explaining the process or pointing to a guide that I may have missed, I'd be grateful. Plus the more people we have collaborating on his, the better our chances of getting Lollipop on our devices.

I'm working on porting 5.0 to our phone, tweaked the device tree and got the build running but (as expected) i'm running into SEpolicy hell. The new selinux implementation in lollipop is proving to be trouble. I've just made a few more edits and the build is moving along, I'll post results shortly.
If anyone cares to help I'll walk you through what I've done so far. One thing to note is you need to adjust vendorsetup.sh to say full_d2lte-eng instead of cm_d2lte-eng and create AndroidProducts.mk that points at full_d2lte.mk (you can use the hammerhead device tree as a reference to do this)
That will get your device tree to regester properly. If you don't do the above you'll get a "no config makefile found" error when you try to select d2lte with lunch.
As far as the actual tree, you're gonna wanna grab device/samsung/d2lte, device/samsung/msm8960-common, vendor/samsung/d2lte, vendor/samsung/msm8960-common, vendor/cm, vendor/cyngn, and kernel/d2.
You'll also need a couple things from /hardware, namely hardware/samsung. There's a couple things you'll need to remove from msm8960-common in /device, I can't remember the specific file name but the error message will tell you.
Follow those instructions and you'll get where I'm at, with the build crapping out on SEpolicy

Restl3ss said:
I'm working on porting 5.0 to our phone, tweaked the device tree and got the build running but (as expected) i'm running into SEpolicy hell. The new selinux implementation in lollipop is proving to be trouble. I've just made a few more edits and the build is moving along, I'll post results shortly.
If anyone cares to help I'll walk you through what I've done so far. One thing to note is you need to adjust vendorsetup.sh to say full_d2lte-eng instead of cm_d2lte-eng and create AndroidProducts.mk that points at full_d2lte.mk (you can use the hammerhead device tree as a reference to do this)
That will get your device tree to regester properly. If you don't do the above you'll get a "no config makefile found" error when you try to select d2lte with lunch.
As far as the actual tree, you're gonna wanna grab device/samsung/d2lte, device/samsung/msm8960-common, vendor/samsung/d2lte, vendor/samsung/msm8960-common, vendor/cm, vendor/cyngn, and kernel/d2.
You'll also need a couple things from /hardware, namely hardware/samsung. There's a couple things you'll need to remove from msm8960-common in /device, I can't remember the specific file name but the error message will tell you.
Follow those instructions and you'll get where I'm at, with the build crapping out on SEpolicy
Click to expand...
Click to collapse
Wow, this is awesome. It sounds like you've gotten the furthest than any of us. I appreciate the instructions, but is there any chance you could push your repos to GitHub? And do you think the SELinux stuff you're running into has anything to do with our device being on the 3.4 kernel instead of 3.10?

polarEskimo said:
Wow, this is awesome. It sounds like you've gotten the furthest than any of us. I appreciate the instructions, but is there any chance you could push your repos to GitHub? And do you think the SELinux stuff you're running into has anything to do with our device being on the 3.4 kernel instead of 3.10?
Click to expand...
Click to collapse
It's not a kernel thing so much as a device tree thing. (Kitkat vs lollipop) the policy.conf (along with a few other things) in the device tree is designed for kitkat and isn't playing very nice with the 5.0 source. I'm trying to bang it out a bit by swapping a few C and header files in the build core.
As for my last build, my tweaks got me past where I was but now I'm hanging on a new set of SElinux errors.
I've been at this for less than 12 hours so given that timeframe this looks promising.
I'm trying to think of what the best way to go about this is. I could either try to adapt the tree for the new source or I could try to adapt the source for the old tree (use KitKat SElinux implementation on lollipop). The latter would have more success with root but the former is the correct way to do it (and would get us cyanogenmod 12 faster once they start nightlies, as I can push the changes to gerrit)

Restl3ss said:
It's not a kernel thing so much as a device tree thing. (Kitkat vs lollipop) the policy.conf (along with a few other things) in the device tree is designed for kitkat and isn't playing very nice with the 5.0 source. I'm trying to bang it out a bit by swapping a few C and header files in the build core.
As for my last build, my tweaks got me past where I was but now I'm hanging on a new set of SElinux errors.
I've been at this for less than 12 hours so given that timeframe this looks promising.
I'm trying to think of what the best way to go about this is. I could either try to adapt the tree for the new source or I could try to adapt the source for the old tree (use KitKat SElinux implementation on lollipop). The latter would have more success with root but the former is the correct way to do it (and would get us cyanogenmod 12 faster once they start nightlies, as I can push the changes to gerrit)
Click to expand...
Click to collapse
Again, any chance you can post your source? You don't have to try and work on it on your own. The more people that look at the progressions you made, the better our chances are at success.

polarEskimo said:
Again, any chance you can post your source? You don't have to try and work on it on your own. The more people that look at the progressions you made, the better our chances are at success.
Click to expand...
Click to collapse
I'll push what I've got to github after this experiment

Cyanogen is updating sources to lolipop right now and omni has semi working source so it will be easier to port 5.0 since we wont need to edit device tree that much

Ivan_Meler said:
Cyanogen is updating sources to lolipop right now and omni has semi working source so it will be easier to port 5.0 since we wont need to edit device tree that much
Click to expand...
Click to collapse
Yes but, they have a tentative deadline of dec. 1st to start pushing out the first nightlies. We likely won't be in the first wave either, since d2 is now 3 generations out of date.
I'd much rather just port aosp and have it in 2 weeks rather than wait 3 weeks to even begin work.
Side note. If/when I get this working I'm calling it PotatOS

Managed to work past my problem with SElinux for now, the build has now moved on to... another set of errors!
Build currently hangs at this:
Code:
host C++: libutils_32 <= system/core/libutils/StopWatch.cpp
host C++: libutils_32 <= system/core/libutils/String8.cpp
host C++: libutils_32 <= system/core/libutils/String16.cpp
host C++: libutils_32 <= system/core/libutils/SystemClock.cpp
host C++: libutils_32 <= system/core/libutils/Threads.cpp
host C++: libutils_32 <= system/core/libutils/Timers.cpp
system/core/libutils/Timers.cpp: In function 'nsecs_t systemTime(int)':
system/core/libutils/Timers.cpp:43:13: error: 'CLOCK_BOOTTIME' was not declared in this scope
build/core/binary.mk:618: recipe for target 'out/host/linux-x86/obj32/STATIC_LIBRARIES/libutils_intermediates/Timers.o' failed
make: *** [out/host/linux-x86/obj32/STATIC_LIBRARIES/libutils_intermediates/Timers.o] Error 1
#### make failed to build some targets (01:19 (mm:ss)) ####
Going to bed, will get back at it in the morning. Source should be up on github by tomorrow night

Restl3ss said:
Yes but, they have a tentative deadline of dec. 1st to start pushing out the first nightlies. We likely won't be in the first wave either, since d2 is now 3 generations out of date.
I'd much rather just port aosp and have it in 2 weeks rather than wait 3 weeks to even begin work.
Side note. If/when I get this working I'm calling it PotatOS
Click to expand...
Click to collapse
I'm with you on that, I'd rather have pure AOSP than buggy CM nightlies. Also interesting choice of ROM name lol. Thanks for your hard work and I'm looking forward to pulling down your repos so I can take a stab at these compile-time issues.

Related

building kernel from aosp source

im trying to build the kernel from androids googlesource website, and want to know which defconfig i need to use to start the build
tegra3_android_defconfig
tegra_android_defconfig
tegra3_defconfig
tegra_defconfig
i couldnt find a grouper specific one
azoller1 said:
im trying to build the kernel from androids googlesource website, and want to know which defconfig i need to use to start the build
tegra3_android_defconfig
tegra_android_defconfig
tegra3_defconfig
tegra_defconfig
i couldnt find a grouper specific one
Click to expand...
Click to collapse
tegra3_android_defconfig seems to be the one.
Yes, I am trying to rebuild their from source. But, when I have testing on running. There are found red splash when I click them on screen. May I know what the caused of this ?
Thanks.
Ok, The problem has resolved now .
AOSP's guide to building kernels is quite useful. I actually used it earlier today.
http://source.android.com/source/building-kernels.html
It contains building instructions (obviously) as well as the proper defconfig for all AOSP devices.

[ROM][11-17-2014][5.0] Unofficial CM12 Builds

First off, I just want to say I don't mean to step on anyone's toes. Thanks for all the work so far from digitalhigh, bracketslash, santod040 and everyone who has posted information about or commits to the CM12 build tree. This is not my code, all I have done is disable enough stuff to get it to build and boot. A LOT OF STUFF IS BROKEN. This is intended for developers only right now. I will try to update the builds as I can but please don't expect true nightly builds.
DISCLAIMER: I am in no way responsible for malfunctioning or bricked devices if you run this software. If you do not agree to these terms, DO NOT DOWNLOAD. Again, this is seriously broken right now.
What doesn't work:
-Almost everything
What works:
-Wifi
-Touchscreen
-Sound
Changelog:
Merged (compare to build date)
Open (not in build yet)
Installation notes:
As I have yet to find a way to easily disable NFC for the builds, you will have to remove the /system/app/Nfc to stop those force closes. I just went to TWRP, mounted system, then ran "rm -rf /system/app/Nfc" to disable NFC for now.
Downloads:
2014-11-17: Download (Android File Host)
Edit: Please see bracketslash's thread for future downloads: http://forum.xda-developers.com/ver...ment/cm12-unofficial-unstable-builds-t2941198
bring it on bro
This saved me some time. Guess I'll see what I can do.
There was a new commit added to the open section that "adds dependency on device/qcom/sepolicy"
http://review.cyanogenmod.org/#/q/status:open+project:CyanogenMod/android_device_htc_m8,n,z
That was fast!
krazie1 said:
There was a new commit added to the open section that "adds dependency on device/qcom/sepolicy"
http://review.cyanogenmod.org/#/q/status:open+project:CyanogenMod/android_device_htc_m8,n,z
Click to expand...
Click to collapse
Thanks for info. I'll probably just wait on that one to get merged as so much is broken already. I doubt selinux will be the cause of frustration right now Also for anyone interested I made the following modifications to the cm12.0 branch to get this to build:
1) Created local_manifest.xml with muppeteers 12.0 branch
2) Commented out DotCase line in device/htc/m8/device.mk (has issues building)
3) Commented out ro.cwm.forbid_mount and ro.cwm.forbid_format lines in device/htc/m8/system.prop (too long)
4) Added missing overlay resources to main resources (copy the missing variables from build/overlay/frameworks/blah.xml to frameworks/blah.xml)
Ive been patiently waiting for cm12 on this beast
This should be in HTC one m8 original development not the Verizon section. If you want more attention and to help people out repose there
jake.99x3 said:
This should be in HTC one m8 original development not the Verizon section. If you want more attention and to help people out repose there
Click to expand...
Click to collapse
Given the intro post on the "original development" forums, I feel my topic is still more applicable in this section.
http://www.xda-developers.com/android/introducing-original-development-forums-for-more-devices/
djh816 said:
Given the intro post on the "original development" forums, I feel my topic is still more applicable in this section.
http://www.xda-developers.com/android/introducing-original-development-forums-for-more-devices/
Click to expand...
Click to collapse
Good point so then move it to android development. Cm is for all device variants not specifically verizon and won't get Much attention here.
jake.99x3 said:
Good point so then move it to android development. Cm is for all device variants not specifically verizon and won't get Much attention here.
Click to expand...
Click to collapse
While I agree it may not get as much attention, I still think this is the proper place. Android development (not m8 android development) is more for universal android projects or new code bases or ROMs for devices that don't have their own sub forum. That being said, this is a build of already existing code so it should go into a "development" section and given that I only plan to get this working on Verizon variant (as that's what I have) I avoided posting to the generic m8 sub forum. Mods can move as they feel fit but I think it belongs here Feel free to repost any info I have here though.
I'm trying to build and I'm getting stuck on the proprietary binaries.
Specifically this:
Code:
make: *** No rule to make target `vendor/htc/m8/proprietary/bin/adsprpcd', needed by `/home/build/cm12/out/target/product/m8/system/bin/adsprpcd'. Stop.
Any advice?
-xdadevelopers-user
xdadevelopers-user said:
I'm trying to build and I'm getting stuck on the proprietary binaries.
Specifically this:
Code:
make: *** No rule to make target `vendor/htc/m8/proprietary/bin/adsprpcd', needed by `/home/build/cm12/out/target/product/m8/system/bin/adsprpcd'. Stop.
Any advice?
-xdadevelopers-user
Click to expand...
Click to collapse
Hmm I didn't run into this. I just used the get-prebuilts command and didn't have any issue after. I followed these but modified for 12.0 branch:
http://forum.xda-developers.com/ver.../how-to-build-cm11-htc-one-m8-082714-t2860056
Just make sure your local_manifest.xml file has the 12.0 muppeteers branch as shown in example on page 6 of that thread.
djh816 said:
Hmm I didn't run into this. I just used the get-prebuilts command and didn't have any issue after. I followed these but modified for 12.0 branch:
http://forum.xda-developers.com/ver.../how-to-build-cm11-htc-one-m8-082714-t2860056
Just make sure your local_manifest.xml file has the 12.0 muppeteers branch as shown in example on page 6 of that thread.
Click to expand...
Click to collapse
@djh816
Hi compile ROM cm11 for a different device
Could you tell me which Java version are you using to build cm12, since you have just built cm12?
I tried to built cm12 yesterday and I got an error for Java so I installed OpenJDK7 and the it started building but I am getting a lot of non-device related error saying "internal compilation error"
I even tried removing all java version and re-installing OpenJDK7. Set alterantives too but no luck.
So please could you let me know which Java Version are you using for building cm12?
OpenJDK7 or Oracle/sun 7
Thanks
macs18max said:
@djh816
Hi compile ROM cm11 for a different device
Could you tell me which Java version are you using to build cm12, since you have just built cm12?
I tried to built cm12 yesterday and I got an error for Java so I installed OpenJDK7 and the it started building but I am getting a lot of non-device related error saying "internal compilation error"
I even tried removing all java version and re-installing OpenJDK7. Set alterantives too but no luck.
So please could you let me know which Java Version are you using for building cm12?
OpenJDK7 or Oracle/sun 7
Thanks
Click to expand...
Click to collapse
I started with clean ubuntu 14.04 lts x64 and added the packages from bracketslash's thread here. Then I just installed openjdk-7-jdk and openjdk-7-jre after that.
djh816 said:
While I agree it may not get as much attention, I still think this is the proper place. Android development (not m8 android development) is more for universal android projects or new code bases or ROMs for devices that don't have their own sub forum. That being said, this is a build of already existing code so it should go into a "development" section and given that I only plan to get this working on Verizon variant (as that's what I have) I avoided posting to the generic m8 sub forum. Mods can move as they feel fit but I think it belongs here Feel free to repost any info I have here though.
Click to expand...
Click to collapse
HTC One M7 has fully working CM12 build, and that is in ANDROID DEVELOPMENT SECTION The Op said that he has working CM12 rom for M8, you might ask him for advice, how to make your build more stable and with less bugs. That's my opinion anyways. You can check the build for M7 here http://forum.xda-developers.com/htc-one/development/5-0-lollipop-unofficial-cm12-android-5-0-t2943826 :good:
djh816 said:
Thanks for info. I'll probably just wait on that one to get merged as so much is broken already. I doubt selinux will be the cause of frustration right now Also for anyone interested I made the following modifications to the cm12.0 branch to get this to build:
1) Created local_manifest.xml with muppeteers 12.0 branch
2) Commented out DotCase line in device/htc/m8/device.mk (has issues building)
3) Commented out ro.cwm.forbid_mount and ro.cwm.forbid_format lines in device/htc/m8/system.prop (too long)
4) Added missing overlay resources to main resources (copy the missing variables from build/overlay/frameworks/blah.xml to frameworks/blah.xml)
Click to expand...
Click to collapse
You don't need to do all of that.
There's one commit and everything works just fine.... nothing's broken.
http://review.cyanogenmod.org/#/c/76760
...and you may just want to thank invisiblek in your original post. He's the only one that did all of the work to bring up the device.
Gunman84 said:
HTC One M7 has fully working CM12 build, and that is in ANDROID DEVELOPMENT SECTION The Op said that he has working CM12 rom for M8, you might ask him for advice, how to make your build more stable and with less bugs. That's my opinion anyways. You can check the build for M7 here http://forum.xda-developers.com/htc-one/development/5-0-lollipop-unofficial-cm12-android-5-0-t2943826 :good:
Click to expand...
Click to collapse
calling @santod040 for some cm love for m8vzw
munchy_cool said:
calling @santod040 for some cm love for m8vzw
Click to expand...
Click to collapse
if someone wants to make a donation to me, i will cherry pick a commit and brunch a completely working build (apart from universal cm issues).
ajrty33 said:
if someone wants to make a donation to me, i will cherry pick a commit and brunch a completely working build (apart from universal cm issues).
Click to expand...
Click to collapse
Welcome to XDA ..
Lollipop Red M8

WIP* ( port) Linage OS LG Stylo 2 plus

Development is dead. Please delete..
Rmontoya83 said:
Good news I have a working Linage OS 13 build for the lg stylo 2 Plus GSM. Thought it was bug free still has some issues though . My PC took a dump I have the sources saved on my hard drive I will have a new PC on Feb 6 and will release the Rom For Free probably with in a few days from then. As I'm almost done porting a working lineage OS 14 for the device.
I will update the device tree on Github So I can get help from other devs to trouble shoot these issues better and collaborate works. I will also include a working recovery with the Rom for free . I am doing this in my free time so please be patient .
I will keep you posted ?
Any people interested in helping let me know.
Click to expand...
Click to collapse
I am interested in helping, I have the metropcs variant.
Latest up to date software. Due to that I have no root
LG Stylo 2 PLUS
TWRP no ROOT
cragains said:
I am interested in helping, I have the metropcs variant.
Latest up to date software. Due to that I have no root
LG Stylo 2 PLUS
TWRP no ROOT
Click to expand...
Click to collapse
You can downgrade your firmware .
Nice work let me know when the source is up at github , i may be able to help
I'm so anxious I can't wait to get my new PC! I will be compiling a lot faster. You guys are going to like this lineage OS port. Hang in there
Any screenshots?
I'm interested in this also
Pelegius22 said:
Any screenshots?
I'm interested in this also
Click to expand...
Click to collapse
Not at the moment I had the backlight on my display burn out . had to flash the stock rom back for warranty purposes and for some reason every time I try and back up via twrp the data gets corrupted.
So the only place I have a working Rom is stored on a hard drive and I get my PC back on the 6th this month so it will be up soon.
Twrp link
Rmontoya83 said:
You can downgrade your firmware .
Click to expand...
Click to collapse
No PC right now, I moved across the state, and left my PC.
Can't down grade
LG Stylo 2 PLUS
TWRP no ROOT
Got the new laptop up and running building starts tommorrow.
All souces are downloaded . I will start building the device tree tonight hopefully by end of week myself and @messi2050 will have a working lineage OS build for the ph2n. I stood up all night working on the list of proprietary files need for the build.
Now comes the hard work of adding all the required blobs to get it all functional please be patient. As we are doing this in out free time. Once the device tree is all setup it will be a lot easier to port other roms to this device such as omni aokp DU and so much more. I chose a 13 build as I'm new to this and its a lot easier to port a Rom that has many components that are stable with the version.
If you appreciate our work buy us a cup of coffee. Or hit the thanks button for the Devs working on this build .
Thanks to all the xda community.
We should work on a changelog concerning drivers for cheaper models like my tmousa k550.
(((Poll )))) custom kernel with more governors and overclock or stock kernel?
Rmontoya83 said:
(((Poll )))) custom kernel with more governors and overclock or stock kernel?
Click to expand...
Click to collapse
Custom kernel with more governors and overclock! Let me know if you need me to test, I have MetroPCS variant. Thank you also for your time and development for this amazing device!
Rmontoya83 said:
(((Poll )))) custom kernel with more governors and overclock or stock kernel?
Click to expand...
Click to collapse
Custom all the way.
I am sending this to you in hopes of curing my boredom...
Montoya, how are you getting the blobs? I have root when want it, I just don't right now. I have teamoctos synced, I have all the source code for our device. I'm not much of a programmer, but let me know I can help. I have Ubuntu with all the packages for compiling.
we need all the help we can get
Giminji said:
Montoya, how are you getting the blobs? I have root when want it, I just don't right now. I have teamoctos synced, I have all the source code for our device. I'm not much of a programmer, but let me know I can help. I have Ubuntu with all the packages for compiling.
Click to expand...
Click to collapse
@messi2050
has one repository done for device /device
i have the other kernel/
i am working on the blobs using @JackpotClavin utility tool to pull all the blobs needed for the build. once we have a stable tree we can work on building other roms.
Good news we have the the last branch to the tree built so builds will start this week sometime. We have a lot of work ahead still so be patient.
Tree source and blobs are on github.
https://github.com/RichieRich83
@messi2050
You rock brother.
Rmontoya83 said:
Good news we have the the last branch to the tree built so builds will start this week sometime. We have a lot of work ahead still so be patient.
Tree source and blobs are on github.
URL deleted I am too new.
@messi2050
You rock brother.
Click to expand...
Click to collapse
Both you and Messi are doing amazing things. When this is done, both of you are getting a cup of java (I couldn't resist Java instead of Joe or Coffee). I downloaded the jackpotcalvindonkey thing yesterday, did the make on it, but didn't get it out.
Btw, your github shows no public repos.
Well that was quick

[UNOFFICIAL][ROM][10.0/9.0] LineageOS 17.1/16.0 [violet][Q/PIE]

Introduction
A spinoff thread from the previously-supported-official thread by Atman.
This thread will contain my unofficial builds for violet. On the 16.0 version, the only real fix (so far...) have been the fingerprint scanner sepolicy denials. I aim to do monthly/bimonthly builds to keep up to date with security patches, as so far I haven't encountered any other issues (let me know).
On the 17.1 version, I have slowly figured out how to make it work, but it is highly experimental.
The 16.0 ROM is stable (I use it as my daily driver).
If you find any bugs, please do take screenshots, give a way for me to replicate it on my device, and send a logcat. If you're super smart, use a logcat and filter for the keyword so I don't have to do even more digging
Please don't tell me to use PE/Mokee commits.
Yet another update. I've got 17.1 builds working without having to resort to cheap tricks and commits (sort of).
Flash instructions
Same as usual:
Reboot to fastboot and flash recovery with fastboot (You have to use the TWRP linked below. Other versions likely won't boot.)
Reboot to recovery TWRP
Wipe to format data, wipe again to wipe system and cache (not necessary if you're updating, only if you're switching ROMs)
Flash firmware (ADB sideload) (this step is dated. The newer builds have a higher target firmware so you should try to flash without the firmware first, then flash the firmware if the ROM doesn't work.)
Flash the ROM (sideload)
Flash GApps, Magisk, etc. as necessary
Done
Downloads (16.0) (STABLE)
Firmware (Dated firwmare)
Recovery (TWRP)
11-Jun-2021 build (with 05-May-2021 security patch), and MD5 Digest
For previous builds see below
Downloads (17.1)
Here's the 17.1 ROM. Here's the md5 hash. It has the March security patch.
It currently does not boot. If you would like to try and help with development, flash the ROM, and then flash the Chinese Q firmware on top of it (this can be downloaded from xiaomifirmwareupdater). Be warned that there is a risk that the newest android keymaster may re-encrypt your device, which in the worst case may require you to format data and/or reflash recovery and/or flash a fastboot MIUI rom. So, it's a bit risky, but likely won't be an issue.
Credits, Sources, etc.
Too many to mention. Atman Shah for getting this device supported earlier last year. ThE_MarD (Marc Bougoin) for other help. Various other names I've seen - Bruno Martins, Weikai Kong, Wang Han... all of the Lineage dev team. I'm sure I'm missing many people who have been involved in the project. I am new, and very much a latecomer to all of this.
Device Tree: https://gitlab.com/mzha/android_device_xiaomi_violet
Kernel Tree: https://gitlab.com/mzha/android_kernel_xiaomi_violet
Other things see my gitlab: https://gitlab.com/mzha
A telegram group to discuss development for 16.0/17.1: t.me/lineageos_violet
Previous builds
07-Nov-2020 (incl. Oct-2020 security patch), with 07-Nov-2020 MD5 Hash
13-Jul-2020 (incl. Jul-2020 security patch), with 13-Jul-2020 MD5 Hash
11-May-2020 (incl. May-2020 security patch), with 11-May-2020 MD5 Hash
Good to see some devs showing interest on this os
will you be adding any customisation? or does it continue as pure lineage os?
e2vinay said:
Good to see some devs showing interest on this os
will you be adding any customisation? or does it continue as pure lineage os?
Click to expand...
Click to collapse
Pure LineageOS. There's more than enough customised ROMs for violet already in my opinion... and I also don't have that much time
hcnulma said:
Pure LineageOS. There's more than enough customised ROMs for violet already in my opinion... and I also don't have that much time
Click to expand...
Click to collapse
That's great
by any chance will you consider adding signature spoofing support? that would be really great. it would help many users go for microG instead of gapps
I completely understand you're starter.
great work. good luck.
Thank you
e2vinay said:
will you consider adding signature spoofing support?
Click to expand...
Click to collapse
No, but there are a few alternatives:
Merge the changes from this RFC and build it
Download the spoofer from https://download.lineage.microg.org/violet/, or get the (ed)Xposed module, or other possibilities...
Will be official Lineage Os?
Can we expect los 17 soon?
himanshu fulmali said:
Can we expect los 17 soon?
Click to expand...
Click to collapse
As per OP: I'm waiting on both Android 10 firmware blobs + kernel to be released by Xiaomi... I'm not sure how the other ROM devs get around this, if it's easy to forward-port or not. But for now, only LOS 16.
Heyyo @hcnulma good to see you got your thread up and going!
As for 17.1? You can work with your current kernel and cherry-pick the fixes that other maintainers of violet are using and same for the device tree and vendor blobs.
As an example, LeEco msm8996 devives are using kernel source code from Marshmallow just rebased on a CAF Q Tag for our kernel since we never got anything newer...
Even once Xiaomi release their kernel source code for Android 10? It would probably take quite a bit of work to shave it down to what you specifically need and then importing it on top of a fresh CAF tag for the kernel or even more work to try and inplement it into uour current kernel.
To get official builds of LOS 16.0 going again for violet you would need to show that you are capable of fixing any major bugs that arise as well.
https://wiki.lineageos.org/submitting_device.html
anywho, hope this information helps bud!
hcnulma said:
As per OP: I'm waiting on both Android 10 firmware blobs + kernel to be released by Xiaomi... I'm not sure how the other ROM devs get around this, if it's easy to forward-port or not. But for now, only LOS 16.
Click to expand...
Click to collapse
I am pretty sure you can use the pixel experience device tree and kernel to compile the ROM just like every other rom
Thank you. If he is stable enough I will use it to build RR PIE
Zjh0094 said:
Thank you. If he is stable enough I will use it to build RR PIE
Click to expand...
Click to collapse
It's definitely stable...
prajwal2001 said:
I am pretty sure you can use the pixel experience device tree and kernel to compile the ROM just like every other rom
Click to expand...
Click to collapse
From what I understand, using their kernel tree will mean I'll have to change a lot of references in my own device tree, and using their device tree on top of that is essentially just building PE, not Lineage.
In any case, I did find the Snapdragon 675 (ie sm6150) kernel trees for Q in several places, https://github.com/sm6150-dev/android_kernel_xiaomi_sm6150 and https://github.com/PixelExperience-Devices/kernel_xiaomi_sm6150. I'll take a closer look into this...
I did find the most recent CAF kernel under sm6150 here, but there seems to be an issue of this not showing up in /quic/la... Something will be resolved. Hopefully.
Request to create group for discussion in Telegram
hcnulma said:
It's definitely stable...
From what I understand, using their kernel tree will mean I'll have to change a lot of references in my own device tree, and using their device tree on top of that is essentially just building PE, not Lineage.
In any case, I did find the Snapdragon 675 (ie sm6150) kernel trees for Q in several places, https://github.com/sm6150-dev/android_kernel_xiaomi_sm6150 and https://github.com/PixelExperience-Devices/kernel_xiaomi_sm6150. I'll take a closer look into this...
I did find the most recent CAF kernel under sm6150 here, but there seems to be an issue of this not showing up in /quic/la... Something will be resolved. Hopefully.
Click to expand...
Click to collapse
you won't have to make any changes in the kernel as far as I know and as for the device tree you just have to make some changes according to the ROM
as every ROM uses the same device tree
and you won't be making pe instead of lineage as the same device tree and kernel are used in every Q ROM except EvoX which uses crimson kernel
hcnulma said:
It's definitely stable...
Click to expand...
Click to collapse
Thanks. I will use it as my benchmark to build RR pie.
---------- Post added 15th February 2020 at 12:03 AM ---------- Previous post was 14th February 2020 at 11:57 PM ----------
hcnulma said:
In any case, I did find the Snapdragon 675 (ie sm6150) kernel trees for Q in several places, https://github.com/sm6150-dev/android_kernel_xiaomi_sm6150 and https://github.com/PixelExperience-Devices/kernel_xiaomi_sm6150. I'll take a closer look into this...
I did find the most recent CAF kernel under sm6150 here, but there seems to be an issue of this not showing up in /quic/la... Something will be resolved. Hopefully.
Click to expand...
Click to collapse
/quick/la/msm-4.14
prajwal2001 said:
you won't have to make any changes in the kernel as far as I know and as for the device tree you just have to make some changes according to the ROM
Click to expand...
Click to collapse
It is precisely the device tree that I'm worried about. From experience, PE has a lot of platform-specific stuff that Lineage doesn't (and the same the other way), and also from trying to figure out the fix to 16.0 I realised there's a lot of context/definition differences between the two device trees. I'd still give it a look, but I suspect it might be easier to just modify the current 16.0 device tree.
RupeshRN said:
Request to create group for discussion in Telegram
Click to expand...
Click to collapse
https://t.me/lineageos_violet.
Zjh0094 said:
/quick/la/msm-4.14
Click to expand...
Click to collapse
Yeah I already figured it was msm-4.14. Have already cloned it but am also considering cherrypicking changes that other devs have done to their kernel trees from 16.0 -> 17.1 as opposed to starting with the CAF kernel. A work in progress.
Sir I'm noob but mokee dev released android 10 and i think mokee and los are pretty same, will he not help you if you contact him?
An update on where I am:
I'm not sure whether to use the PE or Mokee vendor trees. Neither of them have much resemblance to 16.0 tree I have so cherry picking changes will be a nightmare.
The PE vendor tree has a lot of device-tree-specific commits, which will make it a headache to untangle later on. The Mokee vendor tree also has a lot of differing firmware files, though is a bit more similar to the LOS tree.
I'm doing a bit of experimentation to figure out which one will last better in the long run, since I can't seem to get my hands on any MIUI Android Q firmware blobs.
An update on where I am:
I'm not sure whether to use the PE or Mokee vendor trees. Neither of them have much resemblance to 16.0 tree I have so cherry picking changes will be a nightmare.
The PE vendor tree has a lot of device-tree-specific commits, which will make it a headache to untangle later on. The Mokee vendor tree also has a lot of differing firmware files, though is a bit more similar to the LOS tree.
I'm doing a bit of experimentation to figure out which one will last better in the long run, since I can't seem to get my hands on any MIUI Android Q firmware blobs.
Yet another update. I've got 17.1 builds working without having to resort to cheap tricks and commits (sort of).
Here's the 17.1 ROM. Here's the md5 hash. Needless to say, it's very experimental, not stable in the least (expect to get past boot maybe 70% of the time) - I'm getting very mixed results when experimenting myself. Nevertheless, try it out, see what you get. Install it the same way as usual. Keen to get as many eyes on this as possible

[KERNEL] Major Linux Updates

Hello, I decided to come up with a project that aims to port higher Linux versions. When I say higher Linux versions, I mean those that are Linux 3.5 and up. The goal is to port Linux major updates as high as I can, but the main priorities are one that are LTS like Linux 3.10, 3.14 or even 3.18.
Only Android 7 will work on non-LTS versions. Oreo/pie and Android 10 support will be added only on LTS versions to lessen the conflicts when merging non-LTS versions.
What works:
Boots
Battery
Charger
Touchscreen
Display
USB
Sound
Buttons
Deep sleep
Camera
Video playback
Fingerprint
The rest of the sensors
WiFi
Bluetooth (works on Linux 3.7 and up)
Internet connection
Anything else I can't mention
What doesn't work:
You tell me
Drivers that can't be updated (yet) due to them being heavily modified by CAF and Samsung:
USB
Sound
MMC
Newer versions are more stable than the other due to the fact that I fix more bugs with every update.
The highest version as of now is Linux 3.8. I can only merge major updates during weekends due to my work.
Sources:
Linux 3.5
Linux 3.6
Linux 3.7
Linux 3.8
Linux 3.9
Feel free to open up issues and submit pull requests
It is highly recommended to delete mpdecision from /system/bin/ before flashing
Reserved
i don't understand what is this, is there some wiki i can read?
saikyom said:
i don't understand what is this, is there some wiki i can read?
Click to expand...
Click to collapse
These are kernel updates. Our device comes with Linux 3.4, but I've managed to update that up to 3.8
darrendude1 said:
These are kernel updates. Our device comes with Linux 3.4, but I've managed to update that up to 3.8
what are the benefits of updated kernel..cheers
Sent from my Unknown unknown using XDA Labs
Click to expand...
Click to collapse
Read these:
https://kernelnewbies.org/Linux_3.5
https://kernelnewbies.org/Linux_3.6
https://kernelnewbies.org/Linux_3.7
https://kernelnewbies.org/Linux_3.8
@pascua28
What a Huge Task! As Well as a Pain on the Ares!
Now, I do Have a few Q's for you.
1 IS this "Kernel Patch" Just for your beloved Galaxy S5's ?
2 Will this be for the "Basic" Kernel in an OS (e.g. LineageOS) ?
3 Wouldn't this hurt some of the "Custom Kernels" that we currently have and use?
And of course I must ask, how far do you intend to take this (e.g up and coming 5.7 ) ?
That Said, I am in! I have downloaded all the Kernels . Mostly to compare your changes. Have also saved your GitHub page.
Am wondering though, With some of these "Custom" Kernels..... Wouldn't we see much faster , smoother , and hopefully more Darn Battery with some of the Tweaks that we have with them? Or at least with some kernel manager?
Or, would these break those Kernels (now thinking about it)?
Certainly will be watching this!
Again , this is a huge task to undertake! Sure would love to see 4.1 and above for our phones. Maybe with Your updated Kernel, we could really see some major changes with our phones.... Plus, hopefully easier to Port into the likes of Android 10! ... or Of course jumping a bit here, and a bit positive, but Android 11 !
Good luck sir
godofsalt said:
@pascua28
What a Huge Task! As Well as a Pain on the Ares!
Now, I do Have a few Q's for you.
1 IS this "Kernel Patch" Just for your beloved Galaxy S5's ?
2 Will this be for the "Basic" Kernel in an OS (e.g. LineageOS) ?
3 Wouldn't this hurt some of the "Custom Kernels" that we currently have and use?
And of course I must ask, how far do you intend to take this (e.g up and coming 5.7 ) ?
That Said, I am in! I have downloaded all the Kernels . Mostly to compare your changes. Have also saved your GitHub page.
Am wondering though, With some of these "Custom" Kernels..... Wouldn't we see much faster , smoother , and hopefully more Darn Battery with some of the Tweaks that we have with them? Or at least with some kernel manager?
Or, would these break those Kernels (now thinking about it)?
Certainly will be watching this!
Again , this is a huge task to undertake! Sure would love to see 4.1 and above for our phones. Maybe with Your updated Kernel, we could really see some major changes with our phones.... Plus, hopefully easier to Port into the likes of Android 10! ... or Of course jumping a bit here, and a bit positive, but Android 11 !
Good luck sir
Click to expand...
Click to collapse
1. This is a full Linux upgrade. Nobody has ever done that to our beloved S5 cause it's a truckload of work
2. Uhm, I don't know. LineageOS is very strict on what kernel base to use, but I may propose to use this as a base when I reach 3.10
3. This project might be a good base for custom kernels since it is more updated and I will use this base too for my future custom kernels
4. As far as I can and as long as it works. Of course, I don't wanna die yet by not going too far.
Certainly, it won't break any kernel managers. You can even clone the latest source and add some custom features. It's up to you, but right now, in the process of upgrading, I won't be adding any custom features
Regards
pascua28 said:
1. This is a full Linux upgrade. Nobody has ever done that to our beloved S5 cause it's a truckload of work
2. Uhm, I don't know. LineageOS is very strict on what kernel base to use, but I may propose to use this as a base when I reach 3.10
3. This project might be a good base for custom kernels since it is more updated and I will use this base too for my future custom kernels
4. As far as I can and as long as it works. Of course, I don't wanna die yet by not going too far.
Certainly, it won't break any kernel managers. You can even clone the latest source and add some custom features. It's up to you, but right now, in the process of upgrading, I won't be adding any custom features
Regards
Click to expand...
Click to collapse
Well, Thank You. for the reply, as well as, all the information.
YES your project is a HUGE amount of work. Good guess, IS , you seem to want to take on this challenge! Good for you...
Yes, I do intend to really follow your project. Really looking forward to the great results that I hope we (you) can achieve !
Awesome...
Thanks
Hi guys! Linux 3.9 is up!
this is amazing work!
thank you very much for it.. I bet it's ugly as hell, but you learn a lot..
I'm patiently waiting for 3.10.0 since that's required by docker (running debian using Linux Deploy)
shmizan said:
this is amazing work!
thank you very much for it.. I bet it's ugly as hell, but you learn a lot..
I'm patiently waiting for 3.10.0 since that's required by docker (running debian using Linux Deploy)
Click to expand...
Click to collapse
Yeah, very tedious and requires a lot of skill
This is huge. Thank you for doing this, I will definitely be following this
pascua28 said:
Yeah, very tedious and requires a lot of skill
Click to expand...
Click to collapse
Yes, as well as time, the correct machine and layout....
Plus I believe it requires most patience than what I have!
BTW... This is great work, have not seen any issues on my S5..... (yet, but don't think that will happen though)
Thank you!
Sent from my Galaxy S5 using XDA Labs
Is this working on 5+ (katcc6)?
robla1000 said:
Is this working on 5+ (katcc6)?
Click to expand...
Click to collapse
Nope, S5 only. And at this point klte only until @pascua28 is finished bringing the kernel up to 3.10
Only working properly is klte, for now. Other variants might work but with bugs. Will fix for other variants when we get to 3.10
3.5 to 3.9 didn't work for me,I have klte
didn't work?
I ran 3.8 for weeks without any issues.. what exactly does not work?
many reboot ,i couldn't use
vlad3647 said:
many reboot ,i couldn't use
Click to expand...
Click to collapse
It's not for higher Android version.. If you have Android 9 or 10 then wait for version 3.10

Categories

Resources