• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[DEV] CM11 Work-In-Progress

Search This thread

drmarble

Senior Member
Jul 27, 2011
351
1,009
I have made a bit more progress. I am only working on cm-12.1 now even though its browser is broken and cm-12.0 has a working browser.
We now can log into Google. Play Store works. Sound has fewer errors but still fails.
I updated the directories on github. You should use a new device/bn/encore branch: ion-user_handle . That name was chosen based on the build error I was working on. I also use the iinclude/linux/ion.h file in the kernel directory but I don't think it is needed there. I really don't understand how these hardware abstraction layers work with ion and proprietary blobs and modules and hardware/ti and all that. I am working on it.

You need a patch for the system/core directory. I haven't pushed it as a branch. Just cd to system/core and run: git apply the_patch_name_you_chose
Here is the patch:
Code:
diff --git a/libion/Android.mk b/libion/Android.mk
index 6562cd3..01dd04b 100644
--- a/libion/Android.mk
+++ b/libion/Android.mk
@@ -7,7 +7,7 @@ LOCAL_MODULE_TAGS := optional
 LOCAL_SHARED_LIBRARIES := liblog
 LOCAL_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/kernel-headers
 LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include $(LOCAL_PATH)/kernel-headers
-LOCAL_CFLAGS := -Werror
+LOCAL_CFLAGS := -Wno-error
 include $(BUILD_SHARED_LIBRARY)
 
 include $(CLEAR_VARS)
@@ -16,7 +16,7 @@ LOCAL_MODULE := iontest
 LOCAL_MODULE_TAGS := optional tests
 LOCAL_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/kernel-headers
 LOCAL_SHARED_LIBRARIES := liblog
-LOCAL_CFLAGS := -Werror
+LOCAL_CFLAGS := -Wno-error
 include $(BUILD_EXECUTABLE)
 
 include $(call first-makefiles-under,$(LOCAL_PATH))

I installed youTube from the play store. It won't play any videos but it does run.
 

bowguy

Senior Member
May 7, 2012
198
152
Ventura
CM 12.1 build errors

Did this ever make it into 12.1 ?
http://review.cyanogenmod.org/#/c/69804/4
I am running into the following error:

device/bn/encore/overlay/frameworks/base/core/res/res/xml/storage_list.xml:37: error: No resource identifier found for attribute 'runtimeConfigLabel' in package 'android'

Edit: Obviously not as a quick inspection shows. Adding it to see if it continues the build.

Edit2: Much closer to a build. Need this command to get by an error that a lot of devices are running into to:
touch out/target/product/encore/system/framework/org.cyanogenmod.platform-res.apk

Edit3: Trying again on 12.0. For now can't use drmarble's bionic repo as I run into this:
No rule to make target `bionic/libc/arch-arm/cortex-a15/cortex-a15.mk
sticking with stock for now...

Edit4: We have a zip. Details to follow
 
Last edited:

drmarble

Senior Member
Jul 27, 2011
351
1,009
bowguy. I am glad that you are still trying to build cm-12.x for our lowly Encores. I have some updates. Still works about the same. Browser (chromium) crashes with a GL error and a kernel error. Other browsers work. No sound. Videos play in mx player but not youtube. I am still working on the video/GL errors and sound. I get fewer sound errors now but it is still silent. Video is tough. Our libraries are ancient (ICS). I am not sure I have the skills to get them working on Lollipop. I reenabled dexopt. It takes a while to boot but not much longer. You still have to reflash gapps after every rom. I don't know why this is happening. I also have to reboot once after flashing gapps (open nano) to get the boot to finish. The screen just freezes with "finishing boot".

Anyway, here are my updated repositories:
device/bn/encore: acclaim
bionic: non-PIE-12.1
frameworks/base: storage-config-cm-12.1
hardware/ti/omap3: hwc.acclaim
vendor/cm: encore-cm-12.1

You need the kernel from steven676: sluo https://github.com/steven676/ti-omap-encore-kernel3.git
branch: encore-omap3-3.0.y-l-gcc4.8
This allows us to use the gcc4.8 compiler and I backed out the changes to compile with gcc4.7. Steven676 (a.k.a. sluo) is a master of the omap3 kernel. We wouldn't be anywhere without him.
One advantage to building for cm-12.0 is it doesn't update much. My repos stay much more current. I run "git pull github cm-12.1" on each directory after I repo sync. I wouldn't have to do this in cm-12.0.
Next step, cm-13.0. I guess I should wait for the professional cm developers (they do exist) to get some devices building. I can't even build for flo (nexus7 2013) now.
Good luck. I will keep everyone posted. Especially if I succeed at getting anything to work better. Right now all it does is run quadrant fast (1840). Not much to do with a slow tablet if it can't play any sounds and browses very slowly.
 

bowguy

Senior Member
May 7, 2012
198
152
Ventura
I'm stuck till next week. Thanks for all your work.
BTW the target for quadrant should be about 2000. I can get that on cm11 with art enabled. Too much lag though.
As for sound, logcat/dmesg always threw lots of errors on cm11 with the pre-builts. Sluo said to ignore them but maybe we are having deeper issues
 
  • Like
Reactions: wmuflyer

bowguy

Senior Member
May 7, 2012
198
152
Ventura
CM-12.0 build

Anyway, here are my updated repositories:
device/bn/encore: acclaim
bionic: non-PIE-12.1
frameworks/base: storage-config-cm-12.1
hardware/ti/omap3: hwc.acclaim
vendor/cm: encore-cm-12.1

You need the kernel from steven676: sluo https://github.com/steven676/ti-omap-encore-kernel3.git
branch: encore-omap3-3.0.y-l-gcc4.8

I am playing with 12.0 to see how that is working.
I have the appropriate entries in a roomservice.xml except the bionic as it gives me a minor compile error. I will try to track that down. Is the vendor/cm: encore-cm12.1 a typo? I can't find that - only your propritary_vendor_bn ones.
I also couldn't use the encore-omap3-3.0.y-l-gcc4.8 kernel. I had to use encore-omap3-3.0.y-l-backports one because of a complaint about the toolchain.

I get a clean build and install but no joy on boot. It starts to boot on SD then reboots directly to EMMC. I never saw that before. Several reflashes and retries gives same result.

Let me know if anyone wants my roomservice.xml so they can join in the fun...
 

drmarble

Senior Member
Jul 27, 2011
351
1,009
You are right about vendor-cm-12.1. That only exists locally, I never uploaded it. I just get rid of a couple apps to shrink the zip file (cmupdater and thememanager?). I am enjoying playing with cm-13.0 now but will keep trying to get the sound working. I think I lack the kernel skills for the video GL issues.
It looks like some of the build changes are merged into cm-12.1. I noticed these while trying to merge my build changes into cm-13.0. They were already there. It may put us closer to building without major changes to the cm build system.
 
  • Like
Reactions: bowguy

bowguy

Senior Member
May 7, 2012
198
152
Ventura
You are right about vendor-cm-12.1. That only exists locally, I never uploaded it. I just get rid of a couple apps to shrink the zip file (cmupdater and thememanager?). I am enjoying playing with cm-13.0 now but will keep trying to get the sound working. I think I lack the kernel skills for the video GL issues.
It looks like some of the build changes are merged into cm-12.1. I noticed these while trying to merge my build changes into cm-13.0. They were already there. It may put us closer to building without major changes to the cm build system.

I have a clean zip on 12.1 but after it updates the apps it reboots. It never starts up after optimizing apps. I can connect to it but i haven't run a logcat or dmesg to figure out what is crashing it. Do you have a 13.0 build going?
 
Last edited:

drmarble

Senior Member
Jul 27, 2011
351
1,009
I have a clean zip on 12.1 but after it updates the apps it reboots. It never starts up after optimizing apps. I can connect to it but i haven't run a logcat or dmesg to figure out what is crashing it. Do you have a 13.0 build going?

Edit: I have a huge logcat but the nasty messages are:
I have the same problem with current 12.1 builds. I am looking at what changed to cause this. It booted fine last week.
I still haven't got a build to finish with cm-13.0.
I have been working on getting the alsa sound from hardware/alsa_sound to build. It worked fine in cm-11.0 but has c++ errors in cm-12.1. I hope that will help the sound. I guess I should get it to boot first.
So many challenges. This is more fun than crossword puzzles.
 

bowguy

Senior Member
May 7, 2012
198
152
Ventura
Last edited:

drmarble

Senior Member
Jul 27, 2011
351
1,009
I have sound.
I couldn't figure out what problem had cropped up with cm-12.1 so I switched back to the 12.0 tree. After testing that it does compile and run with the current cm-12.0 tree I started in on the sound. I managed to get steven676's alsa source to compile by modifying his external/alsa_sound and the current libhardware_legacy. Much to my suprise, I have sound. At least, when I go into settings/sound and change the notification tone I hear the new tune. It's late and I will test more tomorrow. I will also push my changes to github. These changes were difficult since they were in c++ files. I don't know c++. Luckily, I know about a dozen other computer languages and googling about pure virtual functions and such gave me enough information to fix the errors. Why can't they program these in something sensible like FORTRAN.
I don't know what broke in cm-12.1. I think I will just keep working on cm-12.0 and try to get accelerated video to work. And, of course, cm-13.0.
 

drmarble

Senior Member
Jul 27, 2011
351
1,009
We are on a 3.0.y kernel. Since TI has abandoned the mobile market it is unlikely we will ever get any higher.
While the sound works, it broke video playback. The alsa sound works but it also makes alsa video which doesn't work. Trying to the the sound to compile in 12.1 caused me to notice this and look for it in the logcats. This whole sound/video/media hal is starting to make some sense. I will get back to working on cm-12.0 and try to get video working with sound. The same tricks I learned to get sound on cm-12.0 are working on cm-12.1. I just have to apply more debugging steps.
I can't figure out why it doesn't finish booting up in cm-12.1. It makes lots of complaints about packageManager. I wonder if it is an SELinux problem. Even though we disable it in the kernel command line it still has some effect. It was what was preventing booting when I was first bringing up cm-12.0. It easily could be the kludgy .te files I copied over that are causing the problems. Definitely no progress on cm-13.0.
I will keep folks posted. I really should push my changes to github.
 

fattire

Inactive Recognized Developer
Oct 11, 2010
2,280
6,473
www.eff.org
By the way-- a heads up for 13.0-- there are some kernel features that need to be added to make it 6.0-friendly.

Here is the kernel (which may or may not work yet, still testing) For the note 4. I took stock kernel and then applied some stuff which seems to have been needed. Not sure how easily this will be replicated in a largely deprecated ti 3.0.x kernel tho... basically the patches are to /security, uid_cputime, cpufreq, and then there were vidc changes but those are kind of platform dependent I think.
 

bowguy

Senior Member
May 7, 2012
198
152
Ventura
Configure zRAM

I dug around a little on performance and found this:
https://source.android.com/devices/tech/config/low-ram.html
In the section on zRAM I noticed everything was configured as stated except CONFIG_CGROUP_MEM_RES_CTLR_SWAP was not set in CM-11. Not sure if this impacts the device but I set it and rebuilt a cm-12.0 over the weekend with this enabled. I don't have all of drmarble's changes so I don't have sound. Play Store connects with my account but I can't download or update any apps.
Once the thing stops thrashing and you tweak it a bit it seems to work pretty smooth.

Edit: I hand picked some changes from drmarbles repositories and now have play store working. Couldn't get his sound code to compile so still no sound.
 
Last edited:

steven676

Senior Member
Nov 24, 2011
593
2,430
I dug around a little on performance and found this:
https://source.android.com/devices/tech/config/low-ram.html
In the section on zRAM I noticed everything was configured as stated except CONFIG_CGROUP_MEM_RES_CTLR_SWAP was not set in CM-11.

I don't know why Google has that set in their sample config. That kernel config option creates memory.memsw.* in cgroupfs to allow setting a limit on usage of memory + swap for a particular cgroup, but you can verify for yourself that Android never uses these files. There is a small memory overhead associated with the option (two bytes per page of swap), so I disable it in the encore kernels.
 

drmarble

Senior Member
Jul 27, 2011
351
1,009
I am sorry that I have been remiss in posting my changes for sound in cm-12.1. Here you go:
You have to use the stable branch stable/cm-12.1-YOG7D.
repo init -b stable/cm-12.1-YOG7D
repo sync
This isn't cutting edge but it doesn't change all the time and break the builds.
You still need to apply the patch to system/core that I posted above. We need to not treat warnings as errors. Actually, we need to figure out why this is happening and fix it but this patch works.
The directories you need from my github are mostly labelled as encore-12.1-YOG7D. Use this branch in vendor/cm, hardware/libhardware_legacy, and build.
in hardware/ti/omap3 use cm-12.1-wip1
in frameworks/base use storage-config-cm-12.1-YOG7D
in hardware/alsa_sound use cm-12.1
in device/bn/encore use cm-12.1-sound-b
in vendor/bn use cm-12.1-wip
Keep using steven676's gcc4.8 kernel.
I may have forgotten something.
I use a user-debug build. It seems fairly peppy. I can get to the browser is I am fast enough on opening a new browser tab. Videos play fine using MX player. It sometimes needs a reboot to finish booting. I don't think that we are really using any of the video/omx drivers from ti. It obviously needs more work.
I still don't have cm-13.0 working. I had a build I could flash but didn't write anything to boot or system. I tried pushing boot and it boot looped. Now, the build won't even complete.
Good luck.
 

fattire

Inactive Recognized Developer
Oct 11, 2010
2,280
6,473
www.eff.org
I am sorry that I have been remiss in posting my changes for sound in cm-12.1. Here you go:
You have to use the stable branch stable/cm-12.1-YOG7D.
repo init -b stable/cm-12.1-YOG7D
repo sync
This isn't cutting edge but it doesn't change all the time and break the builds.
You still need to apply the patch to system/core that I posted above. We need to not treat warnings as errors. Actually, we need to figure out why this is happening and fix it but this patch works.
The directories you need from my github are mostly labelled as encore-12.1-YOG7D. Use this branch in vendor/cm, hardware/libhardware_legacy, and build.
in hardware/ti/omap3 use cm-12.1-wip1
in frameworks/base use storage-config-cm-12.1-YOG7D
in hardware/alsa_sound use cm-12.1
in device/bn/encore use cm-12.1-sound-b
in vendor/bn use cm-12.1-wip
Keep using steven676's gcc4.8 kernel.
I may have forgotten something.
I use a user-debug build. It seems fairly peppy. I can get to the browser is I am fast enough on opening a new browser tab. Videos play fine using MX player. It sometimes needs a reboot to finish booting. I don't think that we are really using any of the video/omx drivers from ti. It obviously needs more work.
I still don't have cm-13.0 working. I had a build I could flash but didn't write anything to boot or system. I tried pushing boot and it boot looped. Now, the build won't even complete.
Good luck.
Hey for what it's worth, check out my .sig for steps taken to make cm13 work on note4. Totally different SoC obviously, but as far as things to look at-- kernel changes, device changes, etc. it might be helpful (?)
 

drmarble

Senior Member
Jul 27, 2011
351
1,009
Fattire, thanks for the tips. I will look at your changes. You do write great build guides. I always assume lots of prior knowledge. In CM-13.0 build/core and build/tools are changing fast and I just can't keep up. All I really need is kernel, ramdisk.img and /system/*. I can just push and sync them with adb. I really don't need a working recovery image. I guess I only need ramdisk and kernel to get it to start booting.
Others:
You may notice that I no longer use a forked bionic. We don't need one. The only non-PIE executable was pvrinit. We now build our own so it is a Position Independent Executable (I think that is what it stands for). Not enabling them makes the system much more secure.
Our biggest remaining problem seems to be video. CM now provides libion.so so I renamed the one we built in hardware/ti/omap3 to libion_ti.so.
I am sure that there are more changes I need to make in those files to get our omx libs built correctly. It would help if we had source such as was released for the omap4. That is what the tablet and HD+ use. We just have ICS era drivers from a Lenovo tablet. At the least I should not have that warning about pointers to integers.
Thanks for letting me ramble.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 210
    This thread is meant for discussion of the in progress Kit Kat port for the Nook Color.

    Updates
    If you want updates on the progress you can check this post and fattire's post immediately folllowing this. We'll both be posting updates periodically here.

    You can also follow me on twitter @dalingrin
    You can follow fattire @ fat__tire
    Please don't ask me for ETAs or status updates. I will post them as I post them :cool:

    Source code
    Device source code will be temporarily hosted on fattire's github @ http://github.com/fat-tire/android_device_bn_encore

    Things to expect
    Nothing :eek:

    Things not to expect(for now)
    *Fully accelerated composition of the UI - this is not likely and may be dependent on 3rd party closed source EGL libs getting updated
    *Accelerated video playback and overlay - This has changed quite a bit and may take some time to get working
    *Polished release soon - Don't ask, don't tell​


    icsncwifi3.jpg

    icsncwifi2.jpg
    160
    UPDATE 11/24/13 -- So CM 11.0 is out and building nicely on Nook Color. Look here for the link to the build instructions. If you are building CM 11, you will probably want to use cm-11.0 as the name of the branch when initializing.



    STATE OF THE UM, STATE OF THINGS


    So I was curious how many noob types, who always beg for nightlies and builds and stuff-- I wondered if they (you?) could be encouraged to learn and get involved in the process of building Android. Which, as I've expressed in an infamous ramble, I think is important to the future of our culture and how it it deals with technology-- and who will control it. So I asked normal non-dev people to try building-- to give it a shot.

    I think the experiment, which quickly became OUR experiment, has been a massive success. Far beyond what I'd imagined. Hundreds of people have gotten off their asses-- many of whom had clearly never touched Linux or a compiler before, and most were successful in building CM9/ICS from scratch.

    That is not a small deal. And no, it's not just following a list of instructions by rote. People had to think about and solve a million different problems-- installing VMs, updating packages, choosing linux distributions, understanding the command line, etc. Scary stuff if you've never done any of these things before.

    So it's been a month or so now, and I think we've reached the stage where aside from minor enhancements and fixes, the build looks pretty sweet. The major stuff is there and working. Yeah, DSP/hardware-accelerated video is something we're going to have to wait for TI to add to their omap3 repositories, and there are likely other things wrong. I've heard rumors of sleep-of-deaths or quicker-than-usual battery consumption, etc. There are numerous things to be fixed, but these are all issues that may or may not be worked out over time... As major new enhancements come to the CyanogenMod project, they will come to the encore version, and your build, automatically.

    No secret links this time. As before, I'll spell out the bottom line explicitly for ya here in the middle somewhere. And I'll even underline it.

    I hereby decree, in so far I am able, my humble request for "no posted builds".... is ended.

    Back to your regularly scheduled forum. Go to it.

    I encourage you to pass any valuable improvements you make to the code "upstream" via the gerrit review system at review.cyanogenmod.com for inclusion in the main CM project. You already know how it works. And some, God love ya, have already started. Not everything you submit will get accepted, but it's a good way to "pay it forward". And in the same vein, consider helping someone on IRC. Or be a big brother or big sister. Or donate blood. And to quote Steven Soderbergh, or whomever, you don't have to brush ALL your teeth, just the ones you want to keep.

    Thanks as always to dalingrin, keyodi, nemith, verygreen, arcee, deeper-blue, unforgiven512, the gang on irc, and the CM Team generally for keeping this fun. And thank YOU for the lulz, Internet.

    ft

    Remember, there's NOTHING quite like running your own build, piping-hot, and fresh from the oven.



    ----

    I am also releasing a first pass at a how-to-build walkthrough. It is available here:

    walkthru (rough draft)

    This doc will be updated and evolve with your input. It is meant to help people feel confident that they can build an operating system from scratch, and hopefully encourage them to participate, learn, and even make contributions.

    If you need assistance, you must rely on each other.

    Here is an equally unreliable clockworkmod, v5.5.0.4:

    uRecRam

    You may be asking, where is the issue queue? There is no issue queue. You are on your own here.

    Recent automated builds (unofficial, unsanctioned, untested, uneverything else) from Forum member Samiam303 is here.

    -----------everything below this line is sorta old and outdated--------------

    So there's apparently been some bit of controversy related to my request that people try to build themselves rather than someone posting a pre-made update.zip file. Let me go more into detail about what this experiment is about, at least from my perspective. But first, I do want to thank everyone for respecting the request so far-- I know it's not the traditional way of doing things, but I think it's been very fruitful and personally rewarding to see so many people who have never built jack before take on a project like this and be successful. I've received an enormous number of messages, both PMs here as well as in IRC, to the effect that this finally got them to try to build for the first time. It's introduced many people to actually using Linux, others may be having their first encounters with the command line, or git, or looking at source code, or learning about the build process in general. Whether or not the majority go on to become "devs" is irrelevant-- what I have been trying to encourage is curiosity and experimentation, and most of all a deeper understanding that your phones and "ereaders" are in fact full-fledged computers, not "appliances" or limited-purpose devices that others get to control. It's your property, and it can do a lot. There is an effort underway to discourage people from thinking of their devices this way or discouraging them from experimenting and learning with them. This IMO is an extremely harmful practice-- take a look at Cory Doctorow's recent speech on this subject. I could go on and on, but it seems important enough to me to make this request, and hopefully some of you are even subconsciously appreciating the awesomeness of what potential these general-purpose gadgets will have on society. So that's a lot of philosophizing, but there you go. And while I'm not naive enough to think that plenty of people aren't trading the file "under the table" at it were, for a variety of reasons, I do think that in a way they're cheating themselves; those who give building a shot are finding that learning is a reward unto itself. Those who are persistent, who pay attention, who don't give up, not only get a build at the end, plus the experience of doing it, plus the knowledge they picked up along the way-- they also discover things in the most unexpected of places, as in the link in the period at the end of the third sentence in this post. And while there's been some discussion of what a "dev" is and whether or not this is a gateway to bigger and better things, all I can assume is that if 5-10% of the people who built are intrigued enough to take it a step further, and maybe a step further than that... then we might end up with some new devs who appreciate the value of open source and whose contributions we can look forward to with eagerness in the future. Plus-- it's more fun this way.

    I do hope this sounds good to everyone. If you understand what this post is about- no need for long, drawn-out elaborate responses... a simple "I got it" will do. ;)

    More source is forthcoming... Thanks to dalingrin, arcee, keyodi, nemith, Scepterr, unforgiven512, etc. Oh, and shh.

    --------------------------

    update-cm-9.0-0-encore-emmc-sneakpeek2-fullofbugs.zip
    md5: 536d589c59ea5711a17a3d976f0638fa


    update-cm-9.0-0-encore-emmc-sneakpeek1-fullofbugs.zip
    md5: 85294ad91e2601beb737cf723b9fb9d6
    (note this URL is likely to change)

    Note: You are advised NOT to try to install this. This update.zip will **overwrite** as in erase whatever data you have on your emmc, so if you are trying this, you are advised to back it up first so you can recover. Install entirely at your own risk, and do a factory wipe first. This software is likely to be terrible and cause problems including permanent data loss, hair loss, and/or the destruction of your property and the death of your pets. You assume all risks involved in your use-- or even attempted use-- of this file. I disclaim any and all responsibility for your decision to try it.

    *** Really. This build is buggy. It is a work-in-progress. It is only a snapshot of where things stand right now, and it's possible it'll never go further. ***

    here's what's working:

    * bluetooth (pairing/file transfer only confirmed)
    * wifi (full it seems but it's brand-new to the kernel so who knows how stable anything is)
    * backlight
    * accelerometer
    * improved stability (but not perfect)
    * gapps
    * setcpu/overclock
    * real data usage info (not stubbed out)
    * battery levels/charging
    * physical menu button
    * touchscreen
    * 3d games
    * usb gadget in kernel (ie, mounting your sdcard to your computer)
    * screenshots
    * build system (to auto-create update.zips)
    * sound


    (note: for all the above features, you must build yourself! See below for rationale & more)

    For sure not working yet:

    * video
    * full 2d acceleration (esp on complex web pages)
    * and much much more

    These things may/may not be added at some point in the future. You should have no expectations that they will. Anyone who asks for an ETA for something or other gets collectively stoned by the crowd.

    I'm sometimes on #nookcolor in freenode.

    Thanks to keyodi, unforgiven512, arcee, toastfch, d0nk`, dalingrin, nemith, the rest of the cm team/TD, and anyone else who I've forgotten. We stand on the shoulders of giants.

    MUST READ:
    Again, don't install this. And please don't "rom" this (as in change the font or background) and then ask for donations for your "hard work". This is a preview of a work in progress, not a final product, and it's not meant for people to use day-to-day. Don't be a ****. Thanks.
    --------------------screenshots---------------------

    ncicsss1.png


    About screen, wifi scanning, & bluetooth....
    icsnc.jpg
    icsncwifi1.jpg
    icsncbt.jpg


    icsnc4.jpg
    ncicsss.png
    icsnc5.jpg
    icsnc6.jpg

    ncicsss2.png
    ncicsss5.png

    wpvW3.png
    71
    Some thoughts...

    So there's apparently been some bit of controversy related to my request that people try to build themselves rather than someone posting a pre-made update.zip file. Let me go more into detail about what this experiment is about, at least from my perspective. But first, I do want to thank everyone for respecting the request so far-- I know it's not the traditional way of doing things, but I think it's been very fruitful and personally rewarding to see so many people who have never built jack before take on a project like this and be successful. I've received an enormous number of messages, both PMs here as well as in IRC, to the effect that this finally got them to try to build for the first time. It's introduced many people to actually using Linux, others may be having their first encounters with the command line, or git, or looking at source code, or learning about the build process in general. Whether or not the majority go on to become "devs" is irrelevant-- what I have been trying to encourage is curiosity and experimentation, and most of all a deeper understanding that your phones and "ereaders" are in fact full-fledged computers, not "appliances" or limited-purpose devices that others get to control. It's your property, and it can do a lot. There is an effort underway to discourage people from thinking of their devices this way or discouraging them from experimenting and learning with them. This IMO is an extremely harmful practice-- take a look at Cory Doctorow's recent speech on this subject. I could go on and on, but it seems important enough to me to make this request, and hopefully some of you are even subconsciously appreciating the awesomeness of what potential these general-purpose gadgets will have on society. So that's a lot of philosophizing, but there you go. And while I'm not naive enough to think that plenty of people aren't trading the file "under the table" at it were, for a variety of reasons, I do think that in a way they're cheating themselves; those who give building a shot are finding that learning is a reward unto itself. Those who are persistent, who pay attention, who don't give up, not only get a build at the end, plus the experience of doing it, plus the knowledge they picked up along the way-- they also discover things in the most unexpected of places, as in the link in the period at the end of the third sentence in this post. And while there's been some discussion of what a "dev" is and whether or not this is a gateway to bigger and better things, all I can assume is that if 5-10% of the people who built are intrigued enough to take it a step further, and maybe a step further than that... then we might end up with some new devs who appreciate the value of open source and whose contributions we can look forward to with eagerness in the future. Plus-- it's more fun this way.

    I do hope this sounds good to everyone. If you understand what this post is about- no need for long, drawn-out elaborate responses... a simple "I got it" will do. ;)

    More source is forthcoming... Thanks to dalingrin, arcee, keyodi, nemith, Scepterr, unforgiven512, etc. Oh, and shh.
    59
    Some good stuff...

    fattire/dalingrin: aren't the new EGL libs from the defy very good news?

    Not especially. We've had egl working on nook for about two weeks now. It just hasn't been public. The changes are pushed to frameworks/base now, and the defy is just using the flag(s). The code in questoin, by arcee I believe, was pushed up yesterday, which means everyone else will get the fast blue stuff seen in the screenshots. I tested it and some other stability stuff today, and I'm pushing it tonight/this morning. Anyone building now should notice a difference. The sacrifice for stability is a loss of some accelerated 2d graphics... but trust me, this is the best combo so far, and that other stuff can come later.

    The big effort the last two days has been w/the kernel. After MANY hours of f'ing up, I finally got the appropriate netfilter working in 2.6.32 which means I can finally finish stuff like this:

    icsnc11.jpg


    That's a 1543 fwiw. I'm guessing it can do better. But whatever.

    Gapps works too. Like Maps...

    icsnc12.jpg


    Gmail (with multiple panes/fragments)...

    icsnc7.jpg


    Market...

    icsnc10.jpg


    And the tablet apps install directly to the tablet from the web market. No questions or difficulty...

    icsnc8.jpg


    icsnc9.jpg



    Neat. So here's what's working:

    * bluetooth (only pairing is confirmed)
    * wifi (full it seems but it's brand-new to the kernel so who knows how stable anything is)
    * backlight
    * accelerometer
    * improved stability (but not perfect)
    * gapps
    * setcpu/overclock
    * real data usage info (not stubbed out)
    * battery levels/charging
    * physical menu button


    Not working yet:

    * sound (dalingrin's gonna start this I think. Arcee has code to support legacy drivers I believe.)
    * video
    * full 2d acceleration (esp on complex web pages)
    * usb gadget (which means screenshots too I think)
    * build system (to auto-create upgrade.zips)

    I'm pushing up most of what I have at the moment, including the test kernel-- I'll try to check that in tomorrow but it's a mess. It's been an all-night effort, so I'm sure stuff that I think works great will turn out to be a total dud when people actually try it.

    I also wrote up a "how to build" walk-thru a couple days ago. But it'll need to be updated.

    Still, not bad.
    56
    New Kernel

    Well, we decided to push the 2.6.32.59 kernel and wifi module into the repo. So, eyeballer's and Samiam303's builds should have the latest kernel by tomorrow.

    What's Fixed
    • keyboard layout issues and key sizes
    • Wifi module preventing sleep and pinning cpu at max
    • wifi SOD - we'll see

    What's New
    • PVR drivers backported from the omap3-3 kernel. *non-opengl versions may notice increased 3d scores in benchmarking. No noticeable improvement in opengl builds