Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,732,846 Members 51,270 Now Online
XDA Developers Android and Mobile Development Forum

[DEV][WIP] CM9/Ice Cream Sandwich

Tip us?
 
aichrist
Old
(Last edited by aichrist; 11th January 2012 at 02:02 AM.)
#1  
Junior Member - OP
Thanks Meter 49
Posts: 29
Join Date: Sep 2011
Angry [DEV][WIP] CM9/Ice Cream Sandwich

I have been working on porting CM9 to the VS910. So far I have gotten it to boot to the lock screen.

What Works
  • Boot animation
  • Lock screen
  • SurfaceFlinger
  • logcat/adb shell
  • 3d accel is half working. I have gotten SurfaceFlinger to load up and interface the proprietary drivers (from GB) correctly, but HardwareRenderer (java framework) fails because the drivers don't give up a valid config.

What Doesn't Work
  • Touch screen
  • HardwareRenderer (fails because HardwareRenderer.chooseEglConfig() returns null value)
  • Everything else

Currently this ROM is totally unusuable for anything except for development. At this point, I do believe it is possible to get CM9 running, but it will take a good bit of developer effort. It would be helpful for any other developers around here to give some insight on the errors that come up in the adb logs.

How To Build
  1. Follow Google's instructions for setting up a Linux system or VM for Android AOSP building
  2. Follow CM9 build instructions up to brunch command
  3. git clone git://github.com/andyichr/makerom.git to a location, such as ~/android/makerom
  4. Overlay the files in ~/android/makerom/cm9-system/overlay onto the cm9/system directory (this adds vs910 brunch)
  5. Adjust values in makerom.sh to match your own paths (MAKE SURE TO POINT IT AT A VALID KERNEL --I didn't include instructions for building a kernel)
  6. Adjust values in makecm9.sh to match your own paths
  7. Run ~/android/makerom/makecm9.sh to build cm9 (this takes a long time, depending on your system)
  8. If build is successful, run ~/makerom/makerom.sh which will output a ROM which may be flashed to the device for testing

This is very rough work, but it proves that the basic parts of CM9/ICS do function on the Revolution. The cyanogenmod developers have already added some patches to the android source which allow ICS to run using video drivers from Gingerbread. This means it should be possible to get things working.

The current major problem with this ROM is that the HardwareRenderer does not initialize. Immediately after this, the main trebuchet process is killed and the system reboots itself after a while.

I will be happy to do what I can to support the process of porting CM9 to our phones. I read that a couple of other devs may be looking into porting CM7, but I think focusing on 9 might be more worth the effort, since we already have Gingerbread.

I have also attached a logcat to this post which should give developers some idea about what exactly is broken, which will lead to the first steps of debugging and porting.

Any interested developers should fork my repo on github (git://github.com/andyichr/makerom.git) which has the build scripts and patches.

That's about it for now. I very well may have left out some steps along the way. If you try to follow this process and it doesn't work out, let me know and I'll help you out.

ROM Download (very broken --only use for testing and development)

http://www.multiupload.com/GI0MLQYTE0 - Flash this if you want to see ICS boot to the lock screen or help test/debug. It's not useful for much else at this point.

We're getting there! I've already patched the android egl framework code slightly and built a kernel. CM team already patched frameworks/base for 2.3 video drivers. We'll patch what we have to to get this thing running! I am pretty busy but I will follow this thread and I hope for this to be a collaborative, transparent porting process! Good luck!
Attached Files
File Type: 7z logcat.67117434.7z - [Click for QR Code] (1.4 KB, 354 views)
The Following 21 Users Say Thank You to aichrist For This Useful Post: [ Click to Expand ]
 
indyred99
Old
#2  
indyred99's Avatar
Senior Member
Thanks Meter 71
Posts: 570
Join Date: Sep 2011
Location: Chicopee
Nice, get with Mtmichaelson and Cubed, they are working on Cm9 also!

Sent from my VS910 4G using Tapatalk
 
aichrist
Old
#3  
Junior Member - OP
Thanks Meter 49
Posts: 29
Join Date: Sep 2011
Great! I saw in the CM7 thread that thecubed put up a git repo. I'm not sure exactly what his development plan is, but I'd be happy to fork his repo and trade patches, logs, etc. The more devs we have on this, the better... it's not a trivial task and I'm sure my wife hates me by now for spending so many hrs on it so far.
 
elreydotcom
Old
(Last edited by elreydotcom; 11th January 2012 at 02:19 AM.)
#4  
elreydotcom's Avatar
Senior Member
Thanks Meter 78
Posts: 351
Join Date: Aug 2011
If I read correctly, thecubed just got a master repository set up for the revolution, so maybe the files that are needed could be lurking in there? I'll see if I can find the link and post it here.

Here's the link: https://github.com/thecubed

BLITZ ledded adshot nitro supercharged Gingerlution
 
indyred99
Old
#5  
indyred99's Avatar
Senior Member
Thanks Meter 71
Posts: 570
Join Date: Sep 2011
Location: Chicopee
I know in irc tonight cubed was talking about it. Guess they have to work on a few things but it's coming along. Wish I knew more so I could help out in this to. Guess I could be the Guinea pig.

Sent from my VS910 4G using Tapatalk
 
thecubed
Old
#6  
thecubed's Avatar
Senior Member
Thanks Meter 4243
Posts: 871
Join Date: Aug 2008
Location: Austin, TX

 
DONATE TO ME
Quote:
Originally Posted by aichrist View Post
Great! I saw in the CM7 thread that thecubed put up a git repo. I'm not sure exactly what his development plan is, but I'd be happy to fork his repo and trade patches, logs, etc. The more devs we have on this, the better... it's not a trivial task and I'm sure my wife hates me by now for spending so many hrs on it so far.
Awesome job so far! For a lot of things to work correctly, it's my understanding that you'll need a new kernel. For at least the touchscreen issues, you need the "idc" file in the "/system/usr/idc" directory (not sure if you have that or not, I didn't get a chance to check yet)

Either way, if you'd like to get in contact with me, hop on IRC and I'd be happy to answer any questions you may have.

Excellent work!
The Following 2 Users Say Thank You to thecubed For This Useful Post: [ Click to Expand ]
 
aichrist
Old
#7  
Junior Member - OP
Thanks Meter 49
Posts: 29
Join Date: Sep 2011
Quote:
Originally Posted by indyred99 View Post
I know in irc tonight cubed was talking about it. Guess they have to work on a few things but it's coming along. Wish I knew more so I could help out in this to. Guess I could be the Guinea pig.

Sent from my VS910 4G using Tapatalk
Yeah I see thecube's repo at https://github.com/thecubed/android_...lge_revolution. His CM files are a lot cleaner than mine... I just copied the crespo config and haven't had time to clean it up yet. I'll do some diffs of his vs mine and see about getting things merged. My github repo has some additional files so what I could do is replace my vs910 device folder with a fork of thecube's repo.

I'm not sure whether his files are for CM7 or CM9 (or if it doesn't matter). I'm new to CM porting, but I'm not new to linux or android app development.
 
aichrist
Old
#8  
Junior Member - OP
Thanks Meter 49
Posts: 29
Join Date: Sep 2011
Quote:
Originally Posted by thecubed View Post
Awesome job so far! For a lot of things to work correctly, it's my understanding that you'll need a new kernel. For at least the touchscreen issues, you need the "idc" file in the "/system/usr/idc" directory (not sure if you have that or not, I didn't get a chance to check yet)

Either way, if you'd like to get in contact with me, hop on IRC and I'd be happy to answer any questions you may have.

Excellent work!
Thanks for the tip. I'll check that out. So far I've mainly been banging my head on getting the adreno205 drivers working, but it sure would be nice to have touch working. That'd be the next priority.

I'm tempted to switch of 3d acceleration but I am focusing on one thing at a time.

I'll hop on IRC. Which channel are you on specifically?
 
elreydotcom
Old
#9  
elreydotcom's Avatar
Senior Member
Thanks Meter 78
Posts: 351
Join Date: Aug 2011
As always guys, I'm happy to assist in testing. Nor very knowledgeable on coding or porting, but I can definitely put my phone at risk

BLITZ ledded adshot nitro supercharged Gingerlution
The Following User Says Thank You to elreydotcom For This Useful Post: [ Click to Expand ]
 
KaneOfMars
Old
#10  
KaneOfMars's Avatar
Senior Member
Thanks Meter 101
Posts: 576
Join Date: Jul 2011
Location: Charleston, SC

 
DONATE TO ME
wish I knew more about this stuff so I could help

keep up the great work!

crossing fingers, hoping I'll get the chance to start making themes for CM9!

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes