[ROM/KERNEL] OFFICIAL CM11.0 + 3.0.72 Kernel for Kindle Fire [NIGHTLIES] - Kindle Fire Android Development

STEP 1: DOWNLOAD TWRP 2.7.x.x and UPDATE (REQUIRED FOR 4.4):
EDIT: @Dees_Troy has an official 2.7.x.x w/ SElinux support here:
http://techerrata.com/file/twrp2/blaze/openrecovery-twrp-2.7.0.1-otter.img
Flash with the following adb commands:
Code:
adb shell
su
idme bootmode 4002
reboot
# back in your PC shell
fastboot -i 0x1949 flash recovery openrecovery-twrp-2.7.0.1-otter.img
If you have problems with that file and/or don't want to use adb/fastboot flash method, you can download a flashable .zip from the following locations. Use your existing recovery to flash the update:
Mirror 1: Download (Goo.im)
BEFORE FLASHING ANDROID 4.4: PERFORM A WIPE + ADVANCED->FORMAT SYSTEM TWRP.
STEP 2: DOWNLOAD A BUILD OF CM11.0:
DO NOT USE ART YET. BUGGY AND WILL PROBABLY NEED A DATA WIPE TO RECOVER FROM
NIGHTLIES:
http://download.cyanogenmod.org/?device=otter
GAPPS (Use Version "CM 11" row):
http://wiki.cyanogenmod.org/w/Gapps
Older builds are found here:
http://goo.im/devs/Hashcode/otter/cm10/
http://goo.im/devs/Hashcode/otter/cm10.1/
http://goo.im/devs/Hashcode/otter/cm10.2/
GAPPS (For Android 4.3/CM10.2 builds):
http://goo.im/gapps/gapps-jb-20130813-signed.zip
CHANGES:
[05/15] More audio updates to fix low-power states (screen off / background music)
[11/25] Released updated build for cm11.0
[08/12] Kernel updated to 3.0.72 (on par w/ Google/common kernel)
[07/30] Updated to CM10.2 build
[05/26] Backlight driver update to help w/ SODs
[05/24] Sensor updates (includes light sensor now usable in Android OS
[05/24] Reverted 2 sound driver commits in the kernel to help w/ headset function -- testing needed.
[05/14] New audio driver (WIP)
[03/27] Reboot Recovery mode is now fixed
[01/17] Updated SGX/PowerVR driver to latest binaries from omapzoom (still showing [email protected])
[01/15] CM10.1 updates + reverted some USB changes in the kernel for sleep testing
[01/07] Battery life / sleep improvements
[01/06] Update to 3.0.50 kernel
[01/06] Update wifi firmware to R5.SP3.06
[12/16] Fixed Deep Sleep
[12/15] Added multi-profile fix
CURRENT KNOWN ISSUES:
The headphone MIC input is not functioning correctly yet. Work in progress.
KERNEL FEATURES:
[08/12] Mainline version updates to 3.0.72 updated to current with Google's kernel/common
[01/06] WLAN Firmware R5.SP3.06
[11/07] Updated to SGX/IMG DDK [email protected] for Android (via omapzoom)
[11/07] WLAN Firmware R5.SP3.03
[09/05] Updated to SGX/IMG DDK [email protected] for Android
Based on TI kernel 4AI.1.7 (3.0.31 mainline) which supports 512M memory mapping needed by the Kindle Fire
Uses ducati binary from TI based on rpmsg 1.20.5.11 (replaced Archos ducati binary from ICS 4.0.3)
Kernel audio: Added a switch device "h2w" which allows the OS to recognize headset plug events and adjust audio capture routes accordingly. Translation: OS can recognize we have a MIC input via headset now. (NOTE: that audio recording is still not working at this time. Tho it is very close).
MUCH better standby / sleep function. The device will go inactive for much longer periods of time (80-100 seconds) while still waking up appropriately for wifi events, power button triggers, etc. And this is still going to get even better when I re-implement DPLL cascading and the charger fixes coming later.
Many bugfixes pulled down from TI's omapzoom sources.
RESERVED FOR NOTES
XDA:DevDB Information
Official CyanogenMod 11.0 for Kindle Fire 1st Edition, ROM for the Amazon Kindle Fire
Contributors
Hashcode
ROM OS Version: 4.4.x KitKat
Version Information
Status: Stable
Created 2014-05-01
Last Updated 2014-05-21

UPDATED 2013-11-25 for CM11.0/CM10.2/CM10.1
DEVELOPER BUILDING:
Several patches are outstanding in CM's review so building this from source is currently not an option w/o some Cherry Picks:
Patch 1: http://review.cyanogenmod.org/#/c/53917/
Patch 2: http://review.cyanogenmod.org/#/c/54562/
And I'll be updating more of the cm11.0 gits tonight w/ changes to the build / extract files processes.
Won't get a decent build till that's all done.
KNOWN BUGS:
1. EHCI USB 2.0 isn't able to be add to the kernel w/o it crashing. Need to fix for higher speed USB transfers.
6. Headset recording via the MIC input jack doesn't work
DEVS
BUILDING THIS ROM:
First, read through Google's Android website about "how to setup a build environment":
http://source.android.com/source/initializing.html
Then you can setup the Kindle Fire by doing the following:
mkdir android
cd android
(Use main repo for CyanogenMod 10.2)
repo init -u https://github.com/CyanogenMod/android -b cm-10.2
repo sync
vendor/cm/get-prebuilts
. build/envsetup.sh && brunch otter

FINALLY!
I'll see if I can help with power button LEDs.
*out-of-topic note: 3rd post!

1. The backlight doesn't sync up well with the screen. Meaning that sometimes when you bootup you won't see anything but a black screen. Once the boot is done, you can hit the power button a few times and eventually the screen and backlight will sync up and you'll get a picture.
Click to expand...
Click to collapse
I can't even get a picture.

animefun135 said:
I can't even get a picture.
Click to expand...
Click to collapse
Power button four or five times, and it'll pop up.
Edit: not having the sync issue in HC, hash, do you have the log posted on your site regarding the back light issue? I know its kernel related but 3.2 is a lil more cumbersome, so it could just be OS lag. Are we using 4.0.3 or 4.0.4?
Sent from my MB860 using XDA

Power button four or five times, and it'll pop up.
Click to expand...
Click to collapse
I tried 30+ times.

Nice job Hashcode.
Sent from my PG86100 using Tapatalk

I don't have time at the moment to pull down the sources and poke around for myself, but it sounds like #4 is a script issue of some sort.
Either one of the scripts that needs to fire for shutdown is hanging up, or the output isn't returning properly so that the master script can continue and finish pulling it all down.
If I get a chance tonight, I'll grab the sources and poke around a bit.
I deal with hanging/incorrectly-terminating script **** at work all the time, so now I might even be able to contribute, yay!

Reserving this for a complete description of the backlight driver/issue and related sources for research.
Sent from my DROID4 using XDA

Hey Hash I wanted to let you know that the charger does work for me. I don't have to boot back into twrp. Don't know if its just me or what but it works.
Edit: Didn't see that you had put its not working well instead off not at all, I'll do some more testing to see if it will give me problems. So far plugged it in about 20 times and its registering the charge.
Sent from my Amazon Kindle Fire using XDA

Let me be the first to say "Does Netflix work with this?"
Just kidding, things are coming along it appears, wish I knew more about hacking kernels, last time I did anything with a kernel I ran "make xconfig"

i just get a lit up black screen 0.0??

symbiiote said:
i just get a lit up black screen 0.0??
Click to expand...
Click to collapse
This issue is popping up with random people (myself included) and Hashcode has been made aware of it on the other thread, http://forum.xda-developers.com/showthread.php?t=1591869&page=5
The user who posted about it as well as another person as far as I know posted logs from their Kindle Fire's that depict the issue at hand. On a side note, and I know i'll get flamed for this, lets cut the arguing and just keep this thread as Hashcode requested it be, a development thread. If someone bashes you just ignore it and move on, the less clutter here the better Hashcode will be able to scan through it and pick out problems we're having and fix them.
To throw my two cents in on the issue itself:
I've noticed that when attempting to apply the suggested fix and sync up the graphics driver and the backlight I sometimes see quick glimpses of what I think are items on the screen, i'm wondering if this suggests an intermittent issue caused by the initial flash of the rom (could this explain why some are able to use the rom and some aren't). If this isn't possible please excuse my ignorance, it just made sense to me based on the limited amount of knowledge I have on this situation.

isaiahhhhh said:
I've noticed that when attempting to apply the suggested fix and sync up the graphics driver and the backlight I sometimes see quick glimpses of what I think are items on the screen, i'm wondering if this suggests an intermittent issue caused by the initial flash of the rom (could this explain why some are able to use the rom and some aren't). If this isn't possible please excuse my ignorance, it just made sense to me based on the limited amount of knowledge I have on this situation.
Click to expand...
Click to collapse
Wait, are you talking about things like large grey rows of pixels appearing on the screen? Sometimes I see gradients of monochromatic tones in addition to this. They only appear as the backlight is shutting off.

isaiahhhhh said:
This issue is popping up with random people (myself included) and Hashcode has been made aware of it on the other thread, http://forum.xda-developers.com/showthread.php?t=1591869&page=5
The user who posted about it as well as another person as far as I know posted logs from their Kindle Fire's that depict the issue at hand. On a side note, and I know i'll get flamed for this, lets cut the arguing and just keep this thread as Hashcode requested it be, a development thread. If someone bashes you just ignore it and move on, the less clutter here the better Hashcode will be able to scan through it and pick out problems we're having and fix them.
To throw my two cents in on the issue itself:
I've noticed that when attempting to apply the suggested fix and sync up the graphics driver and the backlight I sometimes see quick glimpses of what I think are items on the screen, i'm wondering if this suggests an intermittent issue caused by the initial flash of the rom (could this explain why some are able to use the rom and some aren't). If this isn't possible please excuse my ignorance, it just made sense to me based on the limited amount of knowledge I have on this situation.
Click to expand...
Click to collapse
your right, sorry, as for the rom, i noticed when i flashed hashcode's rom then reloaded rom over it youtube worked in HD, and that got me thinking, you think we can get a Flashable ZIP of the kernel?

is this the kernel that everyone was waiting for? 3.0?

@shahabk818
YES!
But it's still in development, so not for daily use!

TuikS2 said:
@shahabk818
YES!
But it's still in development, so not for daily use!
Click to expand...
Click to collapse
so this will fix the hardware acceleration problem, right?

shahabk818 said:
so this will fix the hardware acceleration problem, right?
Click to expand...
Click to collapse
So you can't read the title, right? [WIP][KERNEL][DEV-ONLY] 3.0 Kernel Development for Kindle Fire [04-10]
DEV ONLY!

OK, so compiled an aosp last night from the CM9 tree... I'm still not having a back light issue? Can't adjust brightness, but no sync issues. Could it be the ROM?
Sent from my MB860 using XDA

Related

[kernel] CM7 2.3.4 kernel(s) OCUV-SOUND-COLOR-ETC 12/05 [EOL]

UPDATE/IMPORTANT/README 1ST
I am giving away the SGS and got a new SGS2. This means I won't be able to test updates on this kernel, this I will DISCONTINUE it soon.
I might update this kernel til i'm unable to (in a week prolly) so i'd suggest to switch over to another kernel, choices are, to my knowledge:
- zach's kernel: lots of tweaks, but people seems to have good results. its based on my kernel
- glitch's kernel: less tweaks but close, higher oc. its also based on my kernel
- cm7's stock kernel: i'm based on them of course, its the same as my kernel minus oc/uv and voodoo, but if you want something simple and stable without caring for oc/uv or voodoo color it's pretty good because it's reliable. voodoo sound works via voodoo +
Note that I'm still hanging out on the CM7 sgs channels and will most likely contribute one way or another still
**********************************************************************
Fat visible download link http://kang.project-voodoo.org/
Disclaimer:
These kernels are provided as-is without any warranty. I'm not here to provide support etc although I might when I'm able, but don't count on it. If your phone explode, it's your problem. Updates are not guaranteed as well.
I made a thread only so that it doesn't get lost in spam and have pms asking where to find it
What's included
Sometimes: testing stuff from teamhacksung before it goes into their stable upstream
Various tweaks: such as JPX screen timings, Haptic feedback and general vibration intensity slightly reduced (integrated upstream)
Voodoo sound patch
Voodoo color patch
[*]Led notification: Now integrated upstream
[*]Extra governors: Smartass, Interactive They're not that good.
Overclock/Undervoltage: I use [email protected] and 1.2Ghz max and rest default, change voltage with "voltage control" (market). Default settings to 1Ghz.
Easy building system and clear commits: for other devs, and myself too lol
Click to expand...
Click to collapse
Credits & stuff:
Thanks to Supercurio for making those great enhancement patches and to the Teamhacksung/CMSGS/CM7 contributors for the CM project. Thanks to many other authors who put their source online, they're too many to name. No thanks to the ones who don't, tho
http://project-voodoo.org/
http://forum.cyanogenmod.com/forum/85-samsung-galaxy-s-experimental-mod/
Click to expand...
Click to collapse
Sources (includes non-GT-I-9000 kernels such as Captivate, Vibrant, etc. - always up to date within ~15min of binary upload depending on my upload speed):
https://github.com/kangsterizer/android_kernel_samsung
If there's anything you don't find in the source (missing source or w/e could ever happen, i'm only another noob human)/ doesn't look correct / you don't understand, don't be shy to ask
Binaries & CWMs (aka fat visible download link - what you're looking for ;-):
http://kang.project-voodoo.org
Other goodies
Netfilter/iptables fix: http://kang.project-voodoo.org/f/iptables-cm7-kang.zip
Nexus S windows USB driver (for SGS CM7) - just like to have the link handy for ADB:
https://dl-ssl.google.com/android/repository/usb_driver_r04-windows.zip
Unpack, go into the device manager, look for the "Nexus S" device, click update driver, have disk/search my computer, put the path to the directory..
Tool for OC/UV: http://forum.xda-developers.com/showthread.php?t=1018411
Some more links
IRC: irc://irc.freenode.org/#project-voodoo irc://irc.freenode.org/#cmsgsteam
Twitter: http://twitter.com/kangsterizer (not using it a lot.. but i'm trying lol)
Click to expand...
Click to collapse
Latest changes
-- r25
- upstream sync (use new cm7 nightly!)
--r12
- upstream sync (camera stuff) (use new cm7 nightly)
--r10
- upstream sync (fix battery info/display)
-- CM7_GT-I9000_kernel_kang_20110504_r9_update.zip
- upstream sync
- some fixes for new recovery
-- CM7_GT-I9000_kernel_kang_20110504_r5_update.zip
- upstream sync
-- CM7_GT-I9000_kernel_kang_20110501_r2_update.zip
- test of new scripts x)
- fixed said new scripts since test failed x)
-- CM7_GT-I9000_kernel_kang_20110501_r1_update.zip
- Supports GB 2.3.4 (upstream)
- Reviewed some code
- Removed governors: ondemand is better in their current state anyway
- using "r" release versionning in case i'm uploading more than 1 kernel per hour or make tests etc.. avoids confusion ;-)
-- CM7_GT-I9000_kernel_kang_20110429_18_update.zip
- allocate more memory to FIMC0 / fixes googles goggles FC
-- CM7_GT-I9000_kernel_kang_20110428_23_update.zip
- upstream sync
- requires latest CM7 nightly for compass etc
- supports bml_over_mtd at flash time
-- CM7_GT-I9000_kernel_kang_20110427_02_update.zip
- upstream sync
- Voodoo sound v8
- some touchkey tweaks
-- CM7_GT-I9000_kernel_kang_20110409_17_update.zip
- upstream sync - untested release (don't have phone access this week )
Older changes are not displayed (lack of space) - see GIT for complete change log
Click to expand...
Click to collapse
NOTE: THESE ARE NOT OFFICIAL VOODOO (or CM7) KERNELS. THESE ARE TEST KERNELS INTEGRATING POSSIBLY UNSTABLE AND UNSUPPORTED VOODOO PATCHES
Fat visible download link http://kang.project-voodoo.org/
Support FAQ
Q: Do LED notification require an app, such as BLN, etc ?
A: No. It uses Android's and Cyanogen settings, other apps are not required, although some that are designed for regular LEDs may work.
Q: How to I turn off LED notifications, scheduled or/and complete turn off?
A: Use Cyanogen's Quiet Hours feature (settings>cyanogen>sound>quiet hours) and check "Dim the LEDs during quiet hours" (in reality it will turn them off on the SGS). If you schedule a complete day, then LED notifications will be off all the time.
Q: How do I setup per app, find other LED settings etc?
A: Settings>cyanogen>interface>LED notifications
Q: What to do with LED color settings?
A: We have only one color, so that doesn't work. Use Green as default setting. Some non-bright colors turn off notification, as it's the equivalent as diming LEDs (note that on real LEDs if you dim them too much they look like off too anyway, the difference is that it's gradual. On the SGS the LEDs can be only on or off, not gradual)
Q: How can I troubleshot my system, I can use ADB but...
A: adb logcat | grep lights (on linux) will show you Android requests to turn LED on or off. "status" tells you what we decide will be interpreted as "turn LED on" (1= on, 0 = off)
adb shell cat /proc/kmsg for live view (or adb shell dmesg if you're using adb after the issues occurs - careful the backlog is limited in size so don't be too slow)
notify_led_on and notify_led_off are requests to the kernel to turn LED on or off.
touch key write/read errors (cypress) are non-fatal failures to ask the touch key to do something (eg lit up the LED), when the hardware goes crazy or there's a logical error in the code (can be both)
touch key recovery routine or "stopped responding" are either hardware errors, either a logical error where the driver would try to write something the touchkey doesnt understand. in some occasion lock&unlock fix those as a work around, of course a permanent fix is required
Q: I used another kernel and some things don't work as expected / I'm the only one to have a problem / music skip with screen off / etc
A: Try this cleanup script: http://forum.xda-developers.com/showpost.php?p=13223426&postcount=1312
Features FAQ
Q: Why do you not implement jhash3?
A: This hash function is used in 3 places in the kernel, and mainly iptables. None of them are performance relevant unless you use your phone as router for a thousand of machines (and that is the *only* case). Yes, it is utterly useless.
Q: Why do you not implement XYZ?
A: Usually, same reason as jhash3. Feel free to suggest tho, some features are actually useful and I don't know everything.
It only work with CM7??? Or work in a Froyo or Gingerbread rom??
You just can't read?! CM7.
thx bilboa, it's really good
Keep up the good work
Sent from my Galaxy S using Tapatalk
Flashed cwm .zip getting force closes when trying to adjust headphone volume in voodoo app read about this on the cm7 thread might have something to do with 2.3.3 lol I got no idea, just throwing it out there you can throw it right back
EDIT: found the voodoo app on supercurios page http://dl.project-voodoo.org/apps/
Sent from my Galaxy S using XDA App
quadix said:
You just can't read?! CM7.
Click to expand...
Click to collapse
I read perfect, that's only a question, do you understand???
Medel-Silver said:
I read perfect, that's only a question, do you understand???
Click to expand...
Click to collapse
Its very stupid question, hence the a bit rude, yet truthful, answer. It says in the topic what this kernel is for.
I need to backup the WiFi modules before i get flash that?
Thanks a lot for posting this! Do you still have the "old" voodoo control app with you, that works with the headphone amplifier?
Thank you for providing the source code, that gives me an idea on what i have done wrong while implementing voodoo sound
btw have you guys experienced the volume bug mentioned here and here?
Anybody got a solution?
could not download
Sent from my Galaxy S using XDA App
Thanks heaps - installed it apparently ok - it runs the phone - the voodoo app can see the features and recognises that its a compatible kernal - but whenever trying to change the analogue volume - it force closes the app
is this relating to the broken git stuff for cyanogen - unrelated and just me doing something wrong - or its a bug and i can give you some logs or something to check whats happened?
I'll try doing a clean flash from an old firmware and come back again with the results in a few hours when i get home from work (err - probably shouldnt have tried experimenting with it at work - heh)
^^you need voodoo control app and voodoo app for it to get it to work.
@bilboa1
nice to see it's stand alone.
Edit : Crap, i can't get it to download, i've tried different browsers, using my phone. I even tried it from different computer with no luck
It seems github don't like my computer or my phone. Can anyone attach the .zip for i9000, PLEASE.
Hello, I'm from the Captivate forum, just seeing if any known bugs are found I heard Wi-Fi doesn't work.
Also had problems DL'ing. Attached the SGS i9000 file from the CM7_SGS_2011_03_04 folder. Thanks for the kernel!
sorry if this could be a dumb question, but I wanna be sure of what I'm doing:
If i use the CWM package, do I still need to flash te zImage and push the modules??
^^no need to, just flash it from recovery.
~drz
this is base on the latest kernel from the 02/03 update? it's will affect on the speed / smoothness (for bad)?
I think it was built from the latest commit.
just try it out man, if you don't like it, you can just flashed back to the "official" one.
The non-sgs kernel currently check for SGS model before flashing.. which of course won't work ;-) Ill change that when I get a little bit of spare time.

[kernel/rom] cm9/ics build with fixes [02/09/2012 flash.zip update or full rom]

[ 02/09/2012: Screen Flicker / Brightness is an issue. I'll be looking at it. ]
Hi guys,
In an attempt to help further kernel development for the Kindle Fire, I'd like to share my stock defconfig. It's a bit different than the original otter_android_defconfig that g1011999 came up with.
I was never able to get a usable kernel. So I took some time and built up mine.
https://github.com/KFire-Android/kernel_omap/blob/stock/arch/arm/configs/otter_android_defconfig
This kernel builds using the preferred TI compiler used in all of their walk-thrus: CodeSourcery 2010-q1
Moving forward into CM9/ICS, some changes need to happen to the kernel over time. The migration kernel is found in a branch: "L27.13.1-ICS". The END result of this will be a kernel / source that fully support hw codecs for ICS.
[02/08/2012] FLASH ZIP FOR THOSE RUNNING NIND'S BUILDS: http://bit.ly/xYOf0V
The following ROM is built from the sources at GitHub under the KFire-Android org. Many of those files and configurations are the result of countless hours of development by JackpotClavin. I don't want there to be any confusion as to who put in a ton of time getting this to work.
[02/09/2012] FULL ROM INSTALL: http://bit.ly/ygVvQB
Changelog:
- Screen flicker IS an issue right now. Digging into it
- Touchscreen "Slop" set to 16. This should help touches register on the touchscreen.
- Working Data usage stats (xt_qtaguid / xt_quota2 kernel modules)
- TUN, CIFS support
- USB mounting fixes
Thanks Hashcode, currently building a latest ICS version of it.
A little note for those who also want to compile: arm-eabi-4.4.3 and arm-eabi-4.4.0 did not work for me, they ended the compile without any errormessage in the middle of nowhere, arm-eabi-4.3.1 did the job. Took me some time to figure that out ...
nind said:
Thanks Hashcode, currently building a latest ICS version of it.
A little note for those who also want to compile: arm-eabi-4.4.3 and arm-eabi-4.4.0 did not work for me, they ended the compile without any errormessage in the middle of nowhere, arm-eabi-4.3.1 did the job. Took me some time to figure that out ...
Click to expand...
Click to collapse
If you want to follow a very good step by step guide for setting this up the same way TI (the CPU maker) intended, then follow this:
http://www.omappedia.com/wiki/PandaBoard_L27.12.1-P2_Release_Notes#Setting_up_build_environment
Obviously, that's for PandaBoard, but the Toolchain source and setup are very good.
It goes into deep sleep for me and turning off the stay awake option in settings, developer options, the screen goes off like its supposed to.
Hashcode said:
Hi guys,
In an attempt to help further kernel development for the Kindle Fire, I'd like to share my stock defconfig. It's a bit different than the original otter_android_defconfig that g1011999 came up with.
I was never able to get a usable kernel. So I took some time nd built up mine.
https://github.com/KFire-Android/kernel_omap/blob/stock/arch/arm/configs/otter2_android_defconfig
This kernel builds using the preferred TI compiler used in all of their walk-thrus: CodeSourcery 2010-q1
Tonight, I'll go back to both of my in-progress kernels and do some testing to see if they'll boot.
EDIT:
Current issues being looked at with this kernel:
- Power off doesn't really power all the way down. It goes to a black screen, but requires long press to turn off.
- Deep sleep isn't happening. The backlight is on a tad while the screen should be off.
But this config is still MUCH better than trying the original.
Click to expand...
Click to collapse
So does this boot cm7 or anything? My kernel builds boot stock kindle but not cm7
Its something to do with netd/dnsproxyd. Just finding a fix that works is a PITA common issue, but then people dont say how they fixed it..
Right now ive only tested this with CM9
Sent from my DROID RAZR using XDA App
touch points
Any chance you're looking into enabling more than 2 touch points in this kernel?
foxdog66 said:
It goes into deep sleep for me and turning off the stay awake option in settings, developer options, the screen goes off like its supposed to.
Click to expand...
Click to collapse
I'm running nind/sitic's cm9-02-04 build with this kernel baked in. I, too, have Stay Awake disabled in Developer Options, and my Kindle is going into deep sleep. I am experiencing the power down issue, though.
It's something I'm absolutely willing to live with for the time being. This is good stuff. Thanks Hashcode!
jabdo79 said:
Any chance you're looking into enabling more than 2 touch points in this kernel?
Click to expand...
Click to collapse
Thats really the future of this kernel. I needed a solid base to start from.
Sent from my DROID RAZR using XDA App
Well reason I asked was because my kernel wont boot cm7 or cm9. It boots the stock kindle fire os okay. Im getting netd/dnsproxyd errors in the kernel when I try booting cm7.
death2all110 said:
Well reason I asked was because my kernel wont boot cm7 or cm9. It boots the stock kindle fire os okay. Im getting netd/dnsproxyd errors in the kernel when I try booting cm7.
Click to expand...
Click to collapse
Right now the difference between this kernel and stock is:
- About 8 ip6 netfilter modules were added
And that's about it.
death2all110 said:
Well reason I asked was because my kernel wont boot cm7 or cm9. It boots the stock kindle fire os okay. Im getting netd/dnsproxyd errors in the kernel when I try booting cm7.
Click to expand...
Click to collapse
Are you using the stock ramdisk or the modified ramdisk for cm? I know there must be a difference, as intersectRaven puts out several different variations of his kernel in boot.img form, but I haven't gotten around to diffing them yet
wdfowty said:
Are you using the stock ramdisk or the modified ramdisk for cm? I know there must be a difference, as intersectRaven puts out several different variations of his kernel in boot.img form, but I haven't gotten around to diffing them yet
Click to expand...
Click to collapse
ill look into insectraven's cm kernel thanks!
Edit: That worked! Thanks!
he starts the dnsproxyd differently than what I've seen. But it works!
So I noticed that /mnt/ is mounted read-only which causes issues with apps installing to the sdcard and probably the issue people are having with mounting the sdcard to the computer. Some apps insist on installing to the sdcard (I hate that)
Edit: or do I have this all wrong? Lol I'm no dev remounting it r/w gets the job done.
Is there any websites or anything that you guys would recommend to learn about the Linux kernel and development of it?
Tonight, I went back through and cleaned up my config some more. Removed extra power controls, usb mtp settings and omap mmc host controller (for sd card slot boards).
From my tests, everything deep sleeps correctly and the power off issue is fixed.
https://github.com/KFire-Android/kernel_omap
will you be posting a installable zip or boot.img? I'm running nind's cm9-02-05 build which has this kernel and its by far the most stable for me. I would like to update without waiting for someone to include it in a rom please
foxdog66 said:
will you be posting a installable zip or boot.img? I'm running nind's cm9-02-05 build which has this kernel and its by far the most stable for me. I would like to update without waiting for someone to include it in a rom please
Click to expand...
Click to collapse
I'll see what I can do. boot.img would be ok?
Sent from my XT912 using XDA App
Hashcode said:
I'll see what I can do. boot.img would be ok?
Sent from my XT912 using XDA App
Click to expand...
Click to collapse
Yeah that's cool.
foxdog66 said:
Yeah that's cool.
Click to expand...
Click to collapse
Here's an updated boot.img for nind's 2/5 build:
[ UPDATED OP W/ FLASH.ZIP FILE ]

[ROM][5.1.1 LYZ28N][November 2016][Maintainer builds]OmniROM for n8000/n801x

​
About OmniROM
The goal of Omni is to experiment with Android development because we enjoy it. Omni isn’t better, just different. It’s another option for the billion Android users out there. Android (vs. iOS and every other mobile OS) has thrived on options as well as the gigantic, talented development community that has emerged to build those options. That’s the beauty of Android – that you can pick and choose from a smorgasbord of devices with varying features and functionality.
Omni is a chance to get involved, no matter who you are. Developers, whether you’ve been developing apps for a week, or ROM features for 3 years, you’re welcome. Users, we know you want to help out, and now you can – Omni actively encourages bug reports and feature requests, which can be added to our publicly accessible roadmap. What’s the point in giving you a ROM, and forcing you to not tell us about any bugs you find?
We also recognise how people use Custom ROMs – we’re all custom ROM users and developers ourselves – the argument that “nightlies are not for end users” is over-used, and no longer valid. We’ve found that the vast majority of users want to get nightly updates to their ROM. For that reason, nightlies aren’t a playground – nightlies are for new features that are finished. You should be able to expect the same stability and reliability from a nightly as you would from a “release” ROM, and can report any bugs that prevent this from happening.
We know not everyone wants to update their ROM daily, and you are free to update as frequently or infrequently as you like. Omni is about flexibility and giving users what they expect – and we are excited to see where the community goes with it.
Click to expand...
Click to collapse
Info from omnirom http://omnirom.org/general/android-l-omnirom-progressing/
Disclaimer
Standard disclaimer applies, your warranty is void, this may eat your dog or burn your house down, delete all your pictures, etc.
This is an early stage release so many things are broken since many patches and fixes haven't been imported from old branches yet.
How to install:
Reboot to recovey
A backup is Recommended, you're gonna loose all your data
Wipe data
Flash rom
Flash SuperSU 2.19 2.40 or up just after the rom
http://download.chainfire.eu/supersu -> This is IMPORTANT
Flash Netflix fix if you need it -> Download
Reboot
Around 5 minutes are required for the first boot
Reboot again to recovery
Flash Gapps (See below)
How to update from a previous version:
Reboot to recovey
Flash rom
Flash SuperSU 2.40 or up just after the rom http://download.chainfire.eu/supersu -> This is IMPORTANT (not needed anymore)
Flash Netflix fix if you need it -> Download
Reboot
Gapps download:
Check http://forum.xda-developers.com/android/software/gapps-consolidated-gapps-thread-t3064693
How to report a bug
Use the search function, if the bug has already been reported and I or another person has answered do NOT report it again. I'm tired of writing ten times the same thing.
A bug report function is embedded in XDA forum look at the top there's a section called "Bug Reports". Use it
Provide a logcat and/or dmesg. Search on XDA if you don't know how to get a proper log
Always provide which model you are using and other information that you think could be useful to solve the bug
Downloads:
This is an early preview with lots of bugs and not usable as a daily driver. You have been warned. Flash this only if you are sure about what are you doing.
Download folder: https://www.androidfilehost.com/?w=files&flid=21696
Starting from 20150506 I'm uploading automated builds: this means that they should be treated as nigthlies (I won't create a new one every 24 hours though). All the new files will be placed in the "Download folder" automatically, so, if no new changes from my part, I will NOT update the changelog. These builds will include all the updates and commits from official Omnirom repos plus my commits not yet merged for our tablets. Good luck
Commits: -> Updated to 5.1.1_r2
Necessary commits
In frameworks_native: https://gerrit.omnirom.org/#/c/13068/ and https://gerrit.omnirom.org/#/c/13069/
In frameworks_av: https://gerrit.omnirom.org/#/c/12528/, https://gerrit.omnirom.org/#/c/12529/ and https://gerrit.omnirom.org/#/c/12530/ (in this order)
In kernel_samsung_smdk4412: https://gerrit.omnirom.org/#/c/12223/ (SELINUX to permissive) , https://gerrit.omnirom.org/#/c/13055/ (Kernel compression)
Optional commits:
Enable Stylus pointer toggle: https://gerrit.omnirom.org/#/c/13606/, https://gerrit.omnirom.org/#/c/13650/, https://gerrit.omnirom.org/#/c/13651/
And finally, if you want to test and/or help:
Netflix experimental codecs fix: https://gerrit.omnirom.org/#/c/13716/
Other commits not made by me:
Nothing here as of now
If you wish to have a kernel with overclock and other features, you can find the kernel sources for my custom kernel "mm_alpha" at https://github.com/marco9333/android_kernel_samsung_smdk4412 . See branch mm_alpha_lollipop for the working and updated version working with this rom (and other lollipop roms). I can share a compiled version, PM me if interested
Screenshots -> Click here
Donations:
Many thanks to Heide Ruehle and @Rand_
Thanks to:
Omnirom core devs
@iofthestorm(ported omnirom 4.4 and made it official for our devices)
@humberos (various patches and asked for an official new android-5.0 branch)
@lirokoa (for his advices on wifi and camera hal)
I forgot someone ???
XDA:DevDB Information
OmniROM, ROM for the Samsung Galaxy Note 10.1
Contributors
marco9333
ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.0.x
Based On: AOSP
Version Information
Status: Testing
Created 2014-11-23
Last Updated 2016-11-13
Status of things:
Broken:
Charging off mode isn't working
Using torch tile causes a forced reboot, use torch app instead
Wi-fi tethering isn't working
Screen recording causes an hard reboot (Now it just does nothing or System UI crashes and restart)
I haven't tested other things yet....
Report if you found something new to add here
Notes:
Using a proxy in APN settings doesn't work. Thanks to @farinjini for pointing this out -> I don't know if this is working now or not
Changelog:
Older versions changelog
20141123
Initial release
20141125
Fixed stylus (S-PEN input)
Fixed graphical glitches in screenshots and while rotating screen Thanks to @lirokoa
Upstream changes -> updated to android release LRX21V and other "under the hood" changes
20141126 for N801x
Solved bootloop problem, I hope (not booting kernel)
20141130 for N8000
Partially working RIL (this has been really hard )
20141204-05
Upstream changes -> updated to android 5.0.1 LRX22C
Gps fixed. Thanks to @humberos
Added Performance control and Advanced in settings as in omnirom 4.4.4 (thanks to omnirom core devs)
Mobile partially fixed (need to run a script to make it completely work) (only N8000)
20141207 for N8000
Mobile data completely fixed
20141218
Upstream changes
Added advanced reboot (normal reboot, reboot to recovery and reboot to bootloader)
Fixed the problem with keyboard (need to disable physical keyboard from settings)
Fixed forced reboots caused by Youtube and G+
Minor fixes about technical things
20150108
Switched to android 5.0.2_r1 LRX22G
Upstream changes
Random reboots should be fixed -> see https://gerrit.omnirom.org/#/c/11024/ and https://gerrit.omnirom.org/#/c/10997/
20150206
Upstream changes -> See https://gerrit.omnirom.org/
Lots of code cleaning -> Better stability (I hope)
20150326/27
Switched to android 5.1 LMY47D
Upstream changes
20150401
Upstream changes
Switched to android 5.1_r3 LMY47I
Youtube, G+, firefox, etc. reboot fixed (experimental fix please report if problems)
20150407
Upstream changes
Netflix fix (experimental.. please report)
Properly "keyboard not showing" fix
20150506
Upstream changes
Android 5.1.1 LMY47V
New DRM vendor libs (Report if they "work miracles" with netflix)
20150510
Upstream changes
Pointer disabled by default when using S-Pen (Can be re-enabled in Settings see screenshot at #372)
Reintroduced keyboard fix (sorry about that)
20150519
Upstream changes
Android 5.1.1_r2 LMY47X
Netflix codec fix -> See https://gerrit.omnirom.org/#/c/13716/
20150628
Upstream changes
Android 5.1.1_r5 LYZ28E
20150928 or 20150927
Upstream changes
Android LYZ28J
Stagefright fixes
20151104
Upstream changes
Video playing fixed (Sorry guys and girls )
Chrome is now working
You need to enable the showing of keyboard after first boot: go to settings, language and input, current keyboard and enable Hardware(Show input method)
20161110
Untested build
Upstream changes
Android LYZ28N
Reserved
Workarounds and advices
Smoothness: Go to settings, about tablet and press repentantly Build_number until it gives you that you're now a developer, Go back, press on Developer options, scroll down and set Window animation scale, Transition scale and Animator scale to .5x
Toggle stylus (S-pen) arrow pointer:
Go to Settings, Language & input, put a tick or not on "show icon when using stylus" option
marco9333 said:
Status of things:
Working:
Boot
Bluetooth (switching on and scanning)
Rotation
Suspend/Resume (need to keep wifi on though)
Audio
Root (flashing SuperSU from recovery)
Gapps install and start (I've tried CM Gapps but login in is impossible)
Vibration
Hd videoplayback (tested youtube)
I forgot something ???
Partially working:
Screen -> Rotation causes graphics glitches
Video playbackaudio is working, decoders too but black video
Wifi (something wrong with this module, suspending the device with wifi off causes an hot reboot)
Broken:
RIL (phone calls, 3g and so on) for n8000 -> I'll try lirokoa advice -> need to import samsungRIL from android-4.4 tree
Camera (videos) -> Imported opensource camera hal -> taking pictures is fine but video are completely broken
Gps ->I 've waited enough and no position found -> some error regarding this in the logcat
I haven't tested other things yet....
Click to expand...
Click to collapse
Hey marco,
For graphics glitch when rotating you need:
https://github.com/CyanogenMod/andr...mmit/540345f70db4f0cea6ad3f1150d2cb2fac18da25
https://github.com/CyanogenMod/andr...mmit/4e7f61fd6a36345e7994c236d1c128c4c8a6a0ea
https://github.com/CyanogenMod/andr...mmit/db4cec0e189b84e5999ae5b3bef0e7a6c2bb3087
you can probably find those in 4.4 omnirom branch as well.
Then it should be fixed
lirokoa said:
Hey marco,
For graphics glitch when rotating you need:
https://github.com/CyanogenMod/andr...mmit/540345f70db4f0cea6ad3f1150d2cb2fac18da25
https://github.com/CyanogenMod/andr...mmit/4e7f61fd6a36345e7994c236d1c128c4c8a6a0ea
https://github.com/CyanogenMod/andr...mmit/db4cec0e189b84e5999ae5b3bef0e7a6c2bb3087
you can probably find those in 4.4 omnirom branch as well.
Then it should be fixed
Click to expand...
Click to collapse
Thanks I've already merged one of them yesterday (the first), and I need to check the second one. I don't know about the last one because I haven't found any settings in the various configs that enable BOARD_USE_MHEAP_SCREENSHOT. I need to check better though.
marco9333 said:
Thanks I've already merged one of them yesterday (the first), and I need to check the second one. I don't know about the last one because I haven't found any settings in the various configs that enable BOARD_USE_MHEAP_SCREENSHOT. I need to check better though.
Click to expand...
Click to collapse
Yes maybe the one for heap screenshot is not needed.
Sent from my Nexus 4 using XDA Free mobile app
i'll try and see if YT even works
Running N8010 device with N8000 BL
seems imposible to get it to work :silly:
LastStandingDroid said:
i'll try and see if YT even works
Running N8010 device with N8000 BL
seems imposible to get it to work :silly:
Click to expand...
Click to collapse
It's working I've just tested with a 720p video
marco9333 said:
It's working I've just tested with a 720p video
Click to expand...
Click to collapse
i'll see if it'll work for me i've never got it working with any build
LastStandingDroid said:
i'll see if it'll work for me i've never got it working with any build
Click to expand...
Click to collapse
I'm in the same boat as you, stuck with the leaked N8000 bootloader on my N8010, and youtube works great for me on last CM 11 build.
Nice work Marco!!
I've flashed your build (while building mine... ) and I've noticed that the keyboard doesn't show up, I had to go to Settings>Language & input>Current Keyboard and switch on the Hardware flag to make the keyboard appear.
Youtube works fine (audio and video)
I've played a couple of mp4 videos with a default gallery without a problem
Music plays fine with Apollo
It seem very good for such an early build...If only the log in with Google Account worked...:fingers-crossed:
Sooo nice rom only network works on N8000 and it will be my rom
- There is a problem with the default browser as it closes after opening on few seconds
- Graphics errors at multi tasks cards.
TheMorpheus said:
Nice work Marco!!
I've flashed your build (while building mine... ) and I've noticed that the keyboard doesn't show up, I had to go to Settings>Language & input>Current Keyboard and switch on the Hardware flag to make the keyboard appear.
Youtube works fine (audio and video)
I've played a couple of mp4 videos with a default gallery without a problem
Music plays fine with Apollo
It seem very good for such an early build...If only the log in with Google Account worked...:fingers-crossed:
Click to expand...
Click to collapse
I've tried CM gapps but it chrashes on login.... maybe some others google apps will work. I'll try to extract them from my nexus 5 official L rom.
mysarasaid said:
Sooo nice rom only network works on N8000 and it will be my rom
- There is a problem with the default browser as it closes after opening on few seconds
- Graphics errors at multi tasks cards.
Click to expand...
Click to collapse
I usually use chrome. Default browser should be "deprecated" and replaced by chrome. Graphical errors are still there (during switching off screen, rotation, taking screenshots and so on), lirokoa pointed some commits I'll try with them, but they should do the job. RIL is a priority for me too, but it's quite complex and the code changed a lot so I'll need some time to merge that part.
marco9333 said:
I've tried CM gapps but it chrashes on login.... maybe some others google apps will work. I'll try to extract them from my nexus 5 official L rom.
I usually use chrome. Default browser should be "deprecated" and replaced by chrome. Graphical errors are still there (during switching off screen, rotation, taking screenshots and so on), lirokoa pointed some commits I'll try with them, but they should do the job. RIL is a priority for me too, but it's quite complex and the code changed a lot so I'll need some time to merge that part.
Click to expand...
Click to collapse
For RIL, many things are needed and I can't test since I have N8013, but I can point you to some to a repo that might help you:
https://github.com/ArchiDroid/android_frameworks_opt_telephony/commits/cm-12.0
Looks to all SamsungExynos4RIL / Samsung STK commits. That should help.
lirokoa said:
For RIL, many things are needed and I can't test since I have N8013, but I can point you to some to a repo that might help you:
https://github.com/ArchiDroid/android_frameworks_opt_telephony/commits/cm-12.0
Looks to all SamsungExynos4RIL / Samsung STK commits. That should help.
Click to expand...
Click to collapse
I'll give it a try because when I tried to merge RIL from omnirom 4.4 I've got an enormous amount of conflicts. Thanks maybe them will speed up the fix
Sent from my Nexus 5 using XDA Free mobile app
I've tested latest Banks google apps for android L and they are working. This is the link http://fitsnugly.euroskank.com/?rom=banks&device=gapps (added in OP too)
marco9333 said:
I've tested latest Banks google apps for android L and they are working. This is the link http://fitsnugly.euroskank.com/?rom=banks&device=gapps (added in OP too)
Click to expand...
Click to collapse
it did remove my recovery after flashing this rom not sure why i was just unable to reboot to recovery (regular key combination)
used philz recovery rom worked and booted but recovery was gone (also using adb reboot recovery) made my phone go into bootloop
N8010 device with N8000 BL just to mention,
---------- Post added at 10:24 PM ---------- Previous post was at 10:22 PM ----------
lirokoa said:
Yes maybe the one for heap screenshot is not needed.
Sent from my Nexus 4 using XDA Free mobile app
Click to expand...
Click to collapse
@llirokoa do u know what lib is patched to fix the graphic issue? is it the surfaceflinger?
LastStandingDroid said:
it did remove my recovery after flashing this rom not sure why i was just unable to reboot to recovery (regular key combination)
used philz recovery rom worked and booted but recovery was gone (also using adb reboot recovery) made my phone go into bootloop
N8010 device with N8000 BL just to mention,
---------- Post added at 10:24 PM ---------- Previous post was at 10:22 PM ----------
@llirokoa do u know what lib is patched to fix the graphic issue? is it the surfaceflinger?
Click to expand...
Click to collapse
I've written quite big in the third post that you need to flash supersu beta just after the rom or you won't be able to boot into recovery: you've been warned. I'm working on merging the fixes for graphics issues.
By the way I've fixed the stylus input which is working ok now. New version soon....
New version 20141125 out
I've just uploaded a new build. See OP for download links and second post for changelog. Before signaling a bug or something that isn't working, please read the third post, too.
Another bug I've found is in charging off script, please recharge your tablet while on until next release
On my n8013, every time I flash the ROM, then gapps, then superSU, I get a boot loop, never makes it to Omni logo. I tried to redownload all files from the OP, and still no luck. Tried 4 times now

[KERNEL] TonoKrnl for Nexus 7 (2013)

EDIT: I want to remind everyone DO NOT FILE AN UBUNTU BUG REPORT WITH THIS KERNEL INSTALLED, ALWAYS REVERT BACK TO THE STOCK KERNEL IF YOU HAVE AN ISSUE BEFORE FILING
This is my first actual Kernel project, so please be gentle.
This kernel is ONLY for the Nexus 7 (2013) flo. I do not know if it boots on the deb, theoretically it should as I don't have any flo specific options and there are config options for Deb in the Kernel configuration. It should work for those on stable, rc or rc-proposed and may possibly work on devel (not sure) as long as devel has not released a new kernel package (3.4.0-5-flo+)
I have cherry-picked some battery optimizations from bricked-flo, elementalx-flo (4.4 branch) and some additional commits elsewhere in an attempt to not only improve battery-life but also to bring some Android features (DoubleTap2Wake) to Ubuntu Touch.
Currently it has the following:
- ROW I/O scheduler
- Beginnings of OCing (pulled from ElementalX, I think I'm missing some commits to make this relevant though)
- ElementalX's kernel thermal control
- binfmt_misc support
- CD/DVD Filesystem Support for external optical drives (ISO9660/UDF)
- Some Slimbus enhancements
- Battery life optimizations (changing default MHz, etc.)
- Default CPU governor changed from Performance to Interactive (yes, they had it set to Performance, not sure why.)
- Direct Rendering Interface/Direct Rendering Manager (XFree86 + msm_kgsl_drm)
- and more!
You can check my github for the items cherrypicked into it and there is even a current release which has seen my battery drop 4% in the last 30 minutes with the screen fully on (no autolock), WiFi on and Bluetooth.
The name of the kernel is still up for change, TonoKrnl is not going to be it's final name unless everyone likes it.
Repository is at: http://github.com/ShadowEO/TonoKrnl
Releases can be found: https://github.com/ShadowEO/TonoKrnl/releases
Status of Github Repo: It builds. It boots and it runs. I am trying my hardest not to push changes that break building.
Reserved for future use. Currently the status of the kernel's updates can be found on the issue tracker: https://github.com/ShadowEO/TonoKrnl/issues/5
Be patient, if you don't see new releases right away, it's because I'm still in the process of generating them, check back later.
-- Release 1.0.3-UBports (11/19/2017): A lot was done to bring this kernel back into usable state, see below:
Added OTG Charging
Added initscripts for turning on features (Requires the rootfs to be mounted read/write for manual installation, see my latest post #16 I think...)
Created patches to be applied against a clean UBports kernel tree for certain features (right now, only DT2W and USB Charging)
(USB Host Charging was pulled from flar2's ElementalX source code, it is not turned on by default and can be turned on with
Code:
echo 1 > /sys/module/msm_otg/parameters/usbhost_charge_mode
Feature is tested and does work.
Developers:
1.0.3 brought the kernel tree back into a buildable state and also cleaned up some problems with the previous releases. I am in the process of generating a kernel patchset which will be able to be applied to a clean kernel to bring those features to the stock UBports kernel source. After I complete generating the kernel patchset, I will be rebasing the entire kernel project onto a clean tree (As I am absolutely certain that I have problems like unfinished cherry-picks [missing commits] etc.). Be patient regarding these patches, as I am re-adding the features I pulled in originally by hand rather than cherry-picking them as I appear to have fuxxed up somewhere cherry-picking previously.
If you have any random reboots, try:
Code:
echo 1 >/sys/module/msm_watchdog/parameters/runtime_disable
If you still receive random reboots afterwards or if you received them previously but the above command fixes them, please open an issue on my project tracker with a copy of /proc/last_kmsg attached.
Kernel TODO:
Generate kernel patchset and then rebase onto clean kernel tree
Finish Kernel Feature Documentation and publish (these docs will give information on tweaking the changes to the kernel, such as readahead buffer, turning on/off DT2W, turning on/off usbhost charging, etc.)
Move TonoKrnl initscripts into ramdisk, should make them more robust and reliable.
Create ZIP installer for TWRP recoveries (this is needed for automatic installation of kernel modules, since /lib/modules is a read-only, bound mountpoint for the Android LXC container. To fix this, we just have to move /lib/modules out of the Android container.
Allow me two questions:
Which kernel repository is this branched off? Apologies if that is dumb question, my git and kernel knowledge is cursory at best, but I can't seem to figure this out looking through your github repo.
ShadowEO said:
- Direct Rendering Interface/Direct Rendering Manager (XFree86 + msm_kgsl_drm)
Click to expand...
Click to collapse
What's the intention behind this? Does this have anything to do with enabling the freedreno driver for the GPU and would that pave a way to a setup without Mir, but with wayland or X?
doniks said:
Allow me two questions:
Which kernel repository is this branched off? Apologies if that is dumb question, my git and kernel knowledge is cursory at best, but I can't seem to figure this out looking through your github repo.
What's the intention behind this? Does this have anything to do with enabling the freedreno driver for the GPU and would that pave a way to a setup without Mir, but with wayland or X?
Click to expand...
Click to collapse
This started off with the debian source package for linux-image-flo in the Ubuntu archives which is the kernel for our device. The reason you are having trouble with figuring it out is because I started with the base (Ubuntu's 3.4.0-5-flo+), pulled it into an empty git repo and then started cherry-picking features. It was originally going to be for my own personal consumption as I didn't know how well a custom kernel would be received by the touch community (so far, in all the communities I've posted it, you were the only one to ask any questions ), but since I already had a git repo up, figured that I may as well share it. So here I am, an amateur working on the Linux kernel, and learning a lot.
My full intent was to improve the experience (even marginally) on Ubuntu Touch for the Nexus 7 2013, I wanted to bring the mobile kernel features previously found on the desktop that myself or others may find useful (hence binfmt support for qemu-user), there really is no reason for me to turn on DRI/DRM except to allow playing with Wayland and X, yes, that part is correct, and I have tested the freedreno driver with it (Freedreno does get the KGSL DRI device and does start X)
In addition I found some interesting choices in the kernel in terms of battery life, it would seem that the CPU governor used by the default Ubuntu Kernel is Performance, which would explain why the battery dies so fast, I tried to pull in some battery optimizations from a couple other kernels around the Android scene for the device. So far I'm pleased with the results, and recently found that both the original cherry-picking done for DT2W worked along with the code to add fast charging.
I've had to put the project on hold due to work issues, but once I'm able to work on it again, I'm reverting the last 100 changes pulled in that broke my tree and going from there since my original targets in terms of features actually worked. (I'm pretty sure it was some recent changes to the CPU hotplug driver that killed it, I can no longer compile the kernel without mpdecision on, so that's my likely suspect.)
Thanks for your explanations!
ShadowEO said:
This started off with the debian source package for linux-image-flo in the Ubuntu archives which is the kernel for our device.
Click to expand...
Click to collapse
So something like apt source linux-image-flo? And then to build you use the instructions in the package also?
there really is no reason for me to turn on DRI/DRM except to allow playing with Wayland and X, yes, that part is correct, and I have tested the freedreno driver with it (Freedreno does get the KGSL DRI device and does start X)
Click to expand...
Click to collapse
Exciting!
In addition I found some interesting choices in the kernel in terms of battery life, it would seem that the CPU governor used by the default Ubuntu Kernel is Performance, which would explain why the battery dies so fast
Click to expand...
Click to collapse
I'm really only speculating, but my conjecture to previous mentions of odd govenor choices in android kernels was that the actual android power management magic is happening behind the backs of the governors. But, I'm really just babbling. I don't know much of anything about this. You seem to be getting impressive improvements!
I'm reverting the last 100 changes pulled in that broke my tree and going from there since my original targets in terms of features actually worked.
Click to expand...
Click to collapse
So, that means: "If you want to try it now, don't use v1.0.2, but use v1.0.2-alpha for now." Is that about correct?
doniks said:
Thanks for your explanations!
So something like apt source linux-image-flo? And then to build you use the instructions in the package also?
there really is no reason for me to turn on DRI/DRM except to allow playing with Wayland and X, yes, that part is correct, and I have tested the freedreno driver with it (Freedreno does get the KGSL DRI device and does start X) Exciting!
In addition I found some interesting choices in the kernel in terms of battery life, it would seem that the CPU governor used by the default Ubuntu Kernel is Performance, which would explain why the battery dies so fast
I'm really only speculating, but my conjecture to previous mentions of odd govenor choices in android kernels was that the actual android power management magic is happening behind the backs of the governors. But, I'm really just babbling. I don't know much of anything about this. You seem to be getting impressive improvements!
I'm reverting the last 100 changes pulled in that broke my tree and going from there since my original targets in terms of features actually worked. So, that means: "If you want to try it now, don't use v1.0.2, but use v1.0.2-alpha for now." Is that about correct?
Click to expand...
Click to collapse
I removed the problem download, the only ones available are the source tree downloads and the last known good build I had, I have also tested to ensure that the last build up there works as well as it's the one I'm running on my device until I have time to go through the tree again.
As for building, essentially yes, but you have to build the image separately. Due to how Ubuntu currently has the filesystem set up and with Android's boot images, its not feasible to really package it in a traditional sense. Essentially what I did was create a chroot, apt-get source linux-image-flo and then to get a working defconfig I used the config.* files found in Debian.flo and Debian.master, from there was the tree that I used as my base.
Then run make with the following to customize:
Code:
ARCH=arm make menuconfig
ARCH=arm make -j <number of processors>
To build the image, you'll need to grab the boot image from your device and tear it apart using a abootimg them rebuild it with the Ubuntu ramdisk. If you are using MultiROM, you can just drop it in the folder for your ROM.
Edit: As for the weird choice of governors, I noticed during my investigations (via the cpufreq-info package) that while Android is managing the CPUs that are online (I found it's running it's own version of mpdecision behind the scenes inside the LXC container), it's not doing anything to the CPU governor. That's all managed in the kernel right now through CPUFreq it appears and in the stock kernel it's set to performance, as for the reason for it, I'm not sure myself.. The other governors ARE there though, just unused right now.
ShadowEO said:
This kernel is ONLY for the Nexus 7 (2013) flo. I do not know if it boots on the deb, theoretically it should as I don't have any flo specific options and there are config options for Deb in the Kernel configuration.
Click to expand...
Click to collapse
Jup, it does boot on my deb! I've downloaded the .img, put the tablet in bootloader mode and did
fastboot boot TonoKrnl-1.0.2-flo.img
It booted without problems, and so far it's running for about half an hour or so without any problems. Wifi, sound, video, usb mouse, all work fine.
doniks said:
Jup, it does boot on my deb! I've downloaded the .img, put the tablet in bootloader mode and did
fastboot boot TonoKrnl-1.0.2-flo.img
It booted without problems, and so far it's running for about half an hour or so without any problems. Wifi, sound, video, usb mouse, all work fine.
Click to expand...
Click to collapse
Wow, that's great to hear, I wasn't sure but I was definitely curious since I had seen options for both Deb and Flo in the makeconfig page.
If you can script it in (or edit sysfs.conf) to have it write a 1 to /sys/android_touch/doubletap2wake while it's booting, you can have working DT2W and there's quite some others to mess around with under /sys :3 CPU governors are somewhere there too, just don't have it offhand.
Since you are testing it out, have you noticed any changes in the device's normal battery life? The stock kernel seems to drain 1% every 1 1/2 minutes on my Flo, not doubting that the power optimizations ARE working (I know I'm getting much better life), I'm just wanting to ensure that it's not a placebo effect that I'm experiencing.
ShadowEO said:
If you can script it in (or edit sysfs.conf) to have it write a 1 to /sys/android_touch/doubletap2wake while it's booting, you can have working DT2W
Click to expand...
Click to collapse
After
Code:
echo 1 | sudo tee /sys/android_touch/doubletap2wake
I can indeed (sometimes) wake it with double tapping. I have since quite a while (with the standard kernel) the situation that its really hard to wake up. I have to press the powerbutton many many times. Feels like it is sleeping really deeply.
Since you are testing it out, have you noticed any changes in the device's normal battery life? The stock kernel seems to drain 1% every 1 1/2 minutes on my Flo, not doubting that the power optimizations ARE working (I know I'm getting much better life), I'm just wanting to ensure that it's not a placebo effect that I'm experiencing.
Click to expand...
Click to collapse
Well, I haven't noticed anything. I might just not be in the best position to judge. I rarely have it unplugged for more than a couple of hours at a time and I don't generally monitor the battery status closely. That being said though, I have very definitely never experienced anything remotely close to 1% per 1.5 min!
If you have a particular test/measurement you'd like to see - let me know.
doniks said:
After
Code:
echo 1 | sudo tee /sys/android_touch/doubletap2wake
I can indeed (sometimes) wake it with double tapping. I have since quite a while (with the standard kernel) the situation that its really hard to wake up. I have to press the powerbutton many many times. Feels like it is sleeping really deeply.
Well, I haven't noticed anything. I might just not be in the best position to judge. I rarely have it unplugged for more than a couple of hours at a time and I don't generally monitor the battery status closely. That being said though, I have very definitely never experienced anything remotely close to 1% per 1.5 min!
If you have a particular test/measurement you'd like to see - let me know.
Click to expand...
Click to collapse
I may be exaggerating slightly, but normally my tablet goes from 100% to 95% in about 5 minutes while I'm using it after taking it off the charger (in Ubuntu only, may be an rc-proposed thing too). I haven't seen that behavior since changing kernels. I'm gonna see if I can go ahead and start reverting commits today or possibly reset back to the last known good commit.
As for the screen problems, I think there is a bug in the current doubletap2wake driver, if you look at dmesg after using DT2W for a while, you'll see it being spammed with error messages from the touchscreen driver.
That could possibly be related. Additionally, I think the minimum processor speed defaulted to 384MHz (I didn't touch any processor clock speeds in here) which the Performance governor would never had let the processor hit. So it's likely that the minimum processor speed will need bumped up at least one step there, I get some stuttery behavior on the command line when the screen is off which I hadn't received on the stock kernel.
Edit (07/01/16): I'm not sure what else I can really bring to the table here, mpdecision running in the android LXC container defeats any meaningful changes to the clock speed. I also noticed mention that you shouldn't have two hotplugging daemons running at the same time, effectively that is what the new developments would've brought in. I think my best option to continue this would be to wait until the Xenial transition and see if they make any changes for me to update on.
I'm also quite a novice, so besides cherry picking commits, I'm not sure what else I can do.
ShadowEO, is bluetooth working on your device? With your kernel or with the one from Canonical?
I can't seem to get anything at all to show up on my deb.
I am so embarrassed that I didn't check this thread in so long. Ya, Bluetooth still works on my device with either kernel. Sometimes it doesn't seem to like to power on, so if you are having trouble, try this.
Open Terminal,
do sudo bluetoothctl and see if Nexus 7 (2013) shows up in there. If it does, type power on and hit enter. You should see the bluetooth indicator show up in the status bar. If it doesn't, exit bluetoothctl and do these from a root prompt:
start bluetooth-touch
start bluetooth-touch-flo
Sometimes the commands may take a little bit of time (no idea why honestly), but after those, you should see bluetooth start. At that point, if you still don't, fully power the device down and try again.
For whatever reason, the bluetooth scripts fail every so often, haven't been able to look into it much due to personal things IRL taking up all my time the last few months.
It's been a long while since I touched this project, but I have finally cleaned up the kernel source tree and ensured that it builds properly!
Two features that must remain disabled however are GOVERNOR_ELEMENTALX and MSM_SLEEPER as they are currently broken and do not function as of right now. The defconfig for flo also has sane defaults for the UBports Ubuntu Touch distribution (installable via the UBports installer application) and has DT2W enabled (but not turned on, that requires some extra work) by default.
You should also no longer need to disable the MSM watchdog using the instructions in the OP, running the kernel now and haven't experienced near as many random reboots I used to with the previous version! (I wonder if that was a UTouch problem, because I DO get random reboots sometimes using certain apps, but they're very rare... Then again, I'm not sure if UBports made any initramfs changes for the Flo when they added it to their system-image server, which they may have, since it's in the ubports-touch/15.04 distribution instead of their ubuntu-touch mirror for older, no-longer supported devices)
To turn on DT2W, you must follow the instructions on the github page for the 1.0.2 release.
NOTE: I highly recommend building the kernel from source rather than downloading a release! I have yet to add the current stable release to the github releases page! I also have a zip file with some helper scripts and configuration that can be installed into the UBports rootfs to turn DT2W and Kernel Samepage Merging on at startup. In case that's useful, I'm adding the zip to this post. To install, simply remount your root as read/write, extract the ZIP to / and then "chmod +x /sbin/tonokrnl-init" and reboot. Upon reaching the lightdm greeter, you should be able to shut the screen off, then double tap it to wake.
The files contained in the zip are:
/sbin/tonokrnl-init - Helper Script to start DT2W and KSM
/etc/sudoers/tonokrnl - Allows the user-session upstart config to run the helper script, which requires root.
/home/phablet/.config/upstart/tonokrnl.conf - Upstart configuration to run /sbin/tonokrnl-init using sudo (requires the sudoers file)
Off-topic slightly: The reason this project got set aside, was due to my IRL work, and because I had stopped using Ubuntu Touch and was testing out other ways of getting Linux onto the N7 'flo'. I messed with the Sailfish distribution found in the Nexus 7 2013 forum, then went to postmarketOS and messed with that (it's cool, but rather bare, not enough desktop packages to make it useful [no osk, etc]), then attempted to boot a debian distribution with the Linaro mainline kernel from John Stultz (couldn't even get X11 to start, the system did boot though! Perhaps mesa/libdrm needed recompiling with freedreno support...) and then finally came back to Ubuntu Touch via UBports!
Back on Topic, if you decide to use this kernel (either by building it yourself, or using the new UBports-1.0.3 release that will go up soon!) and install the attached helper scripts (or even find your own solution to on-boot DT2W, KSM, and the Interactive governor) please let me know your experiences! I noticed after turning KSM on that the web browser didn't crash as much, but I'm not sure if it's a placebo effect or not.
(I wonder if @flar2 has a 3.4.0 patchset I can apply rather than attempting to cherry-pick ElementalX into the kernel... That would be amazing to have ElementalX's additions to the kernel under Ubuntu Touch. [Please don't be angry I used a mention flar, I just wanted to ask if you had a patchset for the flo's kernel [version 3.4.0])

OmniROM Android R (11) for Pi 4

OmniROM
Download
Images taged with MICROG contain a pre-installed ready to use
microG setup https://microg.org/
Images tagged with WEEKLY can be used to setup
official Google gapps
64bit build
Tablet mode configuration (not Android TV)
At least 4GB model recommened
No HW accelerated video playback
Mesa support for V3D is WIP so expect some graphic issues (especially on higher resolutions - HD 1920x1080 in general should be fine)
Support of booting from SD or USB by just changing config.txt (check README below)
GPIO support - monitor and set README.gpio
chrome (ium) is broken use alternative browser (firefox, edge)
for screen issues check https://www.raspberrypi.org/documentation/configuration/cmdline-txt.md
if you experience black bars connect to HDM1 or add disable_fw_kms_setup=1 to config.txt files
how to do updates? - check README.update
Adjust screen resolution:
To force a different screen resolution edit in /system/build.prop the line
#debug.drm.mode.force=1280x800
Remove the leading # comment and adjust to the screen resolution you want e.g.
debug.drm.mode.force=1280x720
Make sure to also check the README.txt in there
For questions please also use our official Telegram channel
https://t.me/OmniROM_Community
For current progress and how to build yourself check
README.build
XDA:DevDB Information
OmniROM, ROM for the Raspberry Pi 4
Contributors
maxwen, maxwen
Source Code: https://github.com/omnirom/android_kernel_brcm_arpi/
ROM OS Version: Android 11
ROM Firmware Required: 64bit
Based On: AOSP
Version Information
Status: Stable
Created 2020-10-28
Last Updated 2020-10-28
Builds
https://dl.omnirom.org/tmp/rpi4/
The plan is to have about weekly builds - at some point it will be part of all the other OmniROM devices with regular weekly builds
once the Android 11 cycle starts
20201016
Just a snapshot of the current state
Non microG builds will come later
20201028
WEEKLY and MICROG build
20201105
TWRP included
IMPORTANT
Check new recovery section in README for all the details
EVEN MORE IMPORTANT as posted before to get a working TWRP I had to disable userdata encryption for the moment
that means IF you try to boot this with your old userdata you will get an unpleasent surprise. You must start with
a fresh userdata partition (mkfs + tune2fs). You CAN (if you know what you do) create an backup BEFORE
updating by using adb shell and e.g. create a copy of userdata on an external USB device and copy that back afterwards.
But after all of that hassle from now on updating will be much easier since with TWRP you can create
userdata backups on an external USB device very easy
So going from this release an update could work like this.
1) boot your current install into TWRP
2) create an userdata backup on an external USB device
3) flash the new build - you dont need to care about userdata
just do whatever you always do with it e.g. resize
4) boot new build
5) go into Advanced settings and switch boot mode to recovery and restart
6) in TWRP restore the backup you created before from external USB device
7) flash switch_boot_rom.zip and reboot system
8) enjoy
add boot mode switch in Advanced settings
add audio output switch in Advanced settings
whatever has been done since the last build
20201115
fixed 5GHz WiFi AP
fixed Fondar USB touch screen
actual development
20201122
switch to new kernel base - big thanks to Konsta - with update to 5.4.77
update mesa to v20.2
initial work to support pi camera - not yet working but close
initial work to support gpio - IF you want to use gpio please contact me on tg cause I was too lazy to create a README for this yet
all core system updates and fixes
20201128
performance tuning
November security update
gpio support update
all core system updates and fixes
20201206
added gpioi-fan
cpufreq config in advancded settings
all core system updates and fixes
20201214
property persist.debug.drm.mode.force to adjust screen resolution
all core system updates and fixes
20201224
added disable_fw_kms_setup=1 to config.txt files. This should remove unneeded black bars for some screen when connected on HDM1. I did not see any problems on screens that have no issue with that anyway so I enabled by default. If you face issues remove line and report back please
enabled showing BT device battery level if applicable
all core system updates and fixes
Best Xmas wishes for those who care about it and looking forward to 2021
20201231
add WiFi firmware for p400
kernel update 5.4.85
add userdata resize and project quota enable script in TWRP
reduce dB of max media volume
all core system updates and fixes
Does this build support the original RPI 7" touch screen?
elhennig said:
Does this build support the original RPI 7" touch screen?
Click to expand...
Click to collapse
Not out of the box since I dont have one of those to test myself
BUT it should contain the needed overlays so if you know your way around
give it a try and report back if there is something missing.
Regarding "No HW accelerated video playback", is there a chance this is coming anytime soon?
Thinking about using this for MS xCloud gaming.
maxwen said:
Not out of the box since I dont have one of those to test myself
BUT it should contain the needed overlays so if you know your way around
give it a try and report back if there is something missing.
Click to expand...
Click to collapse
I am afraid I have no idea how to build my own ROM or configure overlays respectively. I guess you just notice from my answer that this is the sad truth
ich_mind said:
Regarding "No HW accelerated video playback", is there a chance this is coming anytime soon?
Thinking about using this for MS xCloud gaming.
Click to expand...
Click to collapse
Depends mostly on mesa development - but nothing I would hold my breath for
elhennig said:
I am afraid I have no idea how to build my own ROM or configure overlays respectively. I guess you just notice from my answer that this is the sad truth
Click to expand...
Click to collapse
well - the thing is that this does not have anything to do with building ROMs
should all be possible by modifying config.txt
Looking at the LOST OS builds might give some hints since I think he supports it
Just one word of wisdom here from me since I saw in some reports as something negative
"It’s stuck in “tablet mode” instead of Android TV mode"
I really dont think a raspi is a well equipped device to be used for ATV when you get
a ATV USB stick from e.g. Xiaomi for about 40E that simply works without issues and
has official google support.
So while everyone feel free to use our repostories to create an ATV build dont ask me for it cause I wont do it.
please help after propper flash to my sd card all i get is the no input screen as if nothing is connected to my tvs hdmi port
Thanks a lot for the work you put into this.
I'm really looking forward to how this project will develop.
If I may I have a stupid question - is there a way foreseen to safely shutdown the pi? I mean I know how to setup a safe shutdown in e.g. raspbian but I doubt it's the same in android.
Growking99 said:
please help after propper flash to my sd card all i get is the no input screen as if nothing is connected to my tvs hdmi port
Click to expand...
Click to collapse
I think you hit me already in TG - but just to reiterate here again - as it is in also the README
Using latest firmware is MANDATORY - 64bit support has been added a few months ago
without you will get the described no boot
Best is to flash latest firmware (which also includes USB boot even if you dont need it)
There are a long list of pages describing how to update. Just linking one here for reference
https://www.tomshardware.com/how-to/boot-raspberry-pi-4-usb
You MUST do that in e.g. Raspberry OS so best do it before even starting with Android
lernfaehig said:
Thanks a lot for the work you put into this.
I'm really looking forward to how this project will develop.
If I may I have a stupid question - is there a way foreseen to safely shutdown the pi? I mean I know how to setup a safe shutdown in e.g. raspbian but I doubt it's the same in android.
Click to expand...
Click to collapse
Long press the power button in the navigation bar -> shut down
That's pretty cool, thanks for hard work.
But it's still not usable for daily use as a media center since there is no HW accelerated video playback.
All Android builds on raspberry pi have the same issue .. :/
I think that these builds are just proof that you can have Android on raspberry pi than anything else.
flyl0 said:
That's pretty cool, thanks for hard work.
But it's still not usable for daily use as a media center since there is no HW accelerated video playback.
All Android builds on raspberry pi have the same issue .. :/
I think that these builds are just proof that you can have Android on raspberry pi than anything else.
Click to expand...
Click to collapse
Welcome captain obvious - tell us something new...
maxwen said:
Welcome captain obvious - tell us something new...
Click to expand...
Click to collapse
It's just an observation lol what I don't understand is that there are almost no differences between Android 9, 10 or 11 for pi, they are all the same.
I wonder what's the real point to make all these builds which all lack the same features.. No disrespect, I'm just wondering.
Captain obvious
flyl0 said:
It's just an observation lol what I don't understand is that there are almost no differences between Android 9, 10 or 11 for pi, they are all the same.
I wonder what's the real point to make all these builds which all lack the same features.. No disrespect, I'm just wondering.
Captain obvious
Click to expand...
Click to collapse
You are just too focused on what you want to do with the device
does it have google apps out of the box
vedforeal said:
does it have google apps out of the box
Click to expand...
Click to collapse
of course not - this would be illegal
We are not in China here ...
PS: I did not find any android-11 gapps out there that would work currently
So the only way is anyway microG for now - which is enough for most people
i tried to boot off 32gb usb and it wont work
and first thing before you say anything about my bootloader being out of date its not here is the bootloader output BCM2711 detected
Dedicated VL805 EEPROM detected
BOOTFS /boot
BOOTLOADER: up-to-date
CURRENT: chu 03 set 2020 12:11:43 UTC (1599135103)
LATEST: chu 16 abr 2020 17:11:26 UTC (1587057086)
FW DIR: /lib/firmware/raspberrypi/bootloader/critical
VL805: up-to-date
CURRENT: 000138a1
LATEST: 000137ad
when i try to boot the build (from the website i didnt compile it) with either the microg or the weekly build after flashing the pi just simply wont start and the green and red light just keeps flashing and nothing happens i was able boot twisterOS just fine off this same usb so its this build i dont know if i did something wrong but the file system was present in gparted and i tried booting it without expanding the partition and with doing so. also i tried to "fix" all the partitions using gparted and that did nothing also i noticed that the /boot directory in this build seems a bit empty compared to my manjaro build i know your working hard on this but this might be a bug in your build and id be willing to help you fix it

Categories

Resources