[DEV] Building CM9 from source - Atrix 4G Android Development

Hi,
This thread is to discuss building CM9 build from source for Atrix. In order to do that, you will need to overlay Atrix specific stuff over the vanilla CM9 code.
There are two overlays possible:
- The official Atrix-dev team repositories
- The official Photon-dev team Atrix repositories
There is more (visible) activity on the photon team than the Atrix team right now so personally I am using the Photon team's Atrix repositories. In order to use the Photon repo you might have to edit olympus-vendor-blobs.mk in vendor/motorola/olympus. It has a few sunfire dependencies that will need to be changed to olympus. I submitted a pull request to the photon dev team, so those changed might be merged in sometime soon
Attaching two scripts that you can use in android/system to overlay vanilla CM9 code for Atrix: one for the Atrix-dev-team overlay, and another for the Photon-dev-team. Both build cleanly without issues as of this time.
I built the kangs but havent tested yet. Will test when I get home and back up my CM7
I used the build instructions here and made minor changes: http://forum.xda-developers.com/showpost.php?p=21077425&postcount=1

t.s.eliot said:
Strike one on a CM9 attempt.
I didn't get the changes quite right in LockPatternKeyguardView.java.
"frameworks/base/policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java:452: updateScreen(com.android.internal.policy.impl.LockPatternKeyguardView.Mode,boolean) in com.android.internal.policy.impl.LockPatternKeyguardView cannot be applied to (com.android.internal.policy.impl.LockPatternKeyguardView.Mode)
updateScreen(mMode);
^
frameworks/base/policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java:1029: cannot find symbol
make: *** [out/target/common/obj/APPS/Settings_intermediates/classes-full-debug.jar] Error 41
make: *** Waiting for unfinished jobs....
symbol : variable mLockscreenDisableOnSecurity
location: class com.android.internal.policy.impl.LockPatternKeyguardView
if (mLockscreenDisableOnSecurity && isSecure() && (usingLockPattern || usingLockFinger) || (simState == IccCard.State.PIN_REQUIRED)) {
"
Click to expand...
Click to collapse
Copying over from the CM7 source build thread...

Fingerprint needs to be properly ported. Building on cm7 code just gives you a jumbled mess.
I know its a little more setup but you really need proper cm9 source to build correctly. You can overlay the fingerprint code in the device tree and still keep the latest cm9 sync.
Its actually pretty easy to set up.
Repo init cm9githubyatayata... -b ics
Repo sync -j1 (yes j1 cm9 github is taxed)
Pull the vendor and device
Edit cm vendor setup
Build
Sent from my MB855 using XDA App

acerbix said:
Copying over from the CM7 source build thread...
Click to expand...
Click to collapse
I got past that initial problem by just copying the entire source file rather than trying to do the edits.
Currently stuck applying the group of changes from the "packages/apps/Settings" tree. The "SecuritySettings.java" file seems to have a lot of additional stuff for the face unlock, so it is really hard to tell where the FP stuff goes.
No luck so far with the line by line changes. Next attempt will be to try just replacing the files.
CM9 will build with no issue without the FP unlock. Just need to add the "device/motorola/olympus" directory and the olympus proprietaries. The Atrix Dev Team keeps these on their github under the ICS branch.
---------- Post added at 07:28 AM ---------- Previous post was at 07:22 AM ----------
jokersax11 said:
Fingerprint needs to be properly ported. Building on cm7 code just gives you a jumbled mess.
I know its a little more setup but you really need proper cm9 source to build correctly. You can overlay the fingerprint code in the device tree and still keep the latest cm9 sync.
Its actually pretty easy to set up.
Repo init cm9githubyatayata... -b ics
Repo sync -j1 (yes j1 cm9 github is taxed)
Pull the vendor and device
Edit cm vendor setup
Build
Sent from my MB855 using XDA App
Click to expand...
Click to collapse
(I have to preface all of my comments with the observation that I really don't know what I"m doing.)
It seems like we have proper source for building the basic CM9 on the Atrix. There isn't a camera yet, but the Atrix Dev Team's ICS branch seems to have the right files for /device/vendor/motorola/olympus and vendor/motorola/olympus directories. Basic version builds with no issue.
Trying to merge the FP unlock code into the Atrix stuff seems much more challenging. I don't think that replacing the changed files will work, since the Security Settings seem to have some dramatic changes made for the Face Unlock.
(On a side note, two factor biometric authentication would be really cool if it ever gets working....)

When I say proper source I mean your source base. Overlaying ics vendor and device on gingerbread source is not going to make cm9, but cm7 breaks and partially checkouts a few ics branches. If you start with current up to date cm9 source from cyanogenmod then modify you have a better chance.
As far as porting fp use a diff viewer and a syntax highlighting editor. Ideally you should separate then fp class and point to it by adding to the include.
t.s.eliot said:
I got past that initial problem by just copying the entire source file rather than trying to do the edits.
Currently stuck applying the group of changes from the "packages/apps/Settings" tree. The "SecuritySettings.java" file seems to have a lot of additional stuff for the face unlock, so it is really hard to tell where the FP stuff goes.
No luck so far with the line by line changes. Next attempt will be to try just replacing the files.
CM9 will build with no issue without the FP unlock. Just need to add the "device/motorola/olympus" directory and the olympus proprietaries. The Atrix Dev Team keeps these on their github under the ICS branch.
---------- Post added at 07:28 AM ---------- Previous post was at 07:22 AM ----------
(I have to preface all of my comments with the observation that I really don't know what I"m doing.)
It seems like we have proper source for building the basic CM9 on the Atrix. There isn't a camera yet, but the Atrix Dev Team's ICS branch seems to have the right files for /device/vendor/motorola/olympus and vendor/motorola/olympus directories. Basic version builds with no issue.
Trying to merge the FP unlock code into the Atrix stuff seems much more challenging. I don't think that replacing the changed files will work, since the Security Settings seem to have some dramatic changes made for the Face Unlock.
(On a side note, two factor biometric authentication would be really cool if it ever gets working....)
Click to expand...
Click to collapse
Sent from my MB855 using XDA App

ive managed to get cm9 to build several times, even before we started on the cm7+fp, and the older builds worked well with a few of o2x libs (i can put a link with the ones i used as a flashable zip here), the only things not working were obviously camera, and hw acceleration (although maps, gallery and games/benches worked, but slower than on cm7), after that ive tried to build it again with cm9 + atrix dev team cm9/ics sources, which built nice, but on bootup i get a permanent com.android.phone stopped, so one would have to edit some (probably ril related) files or use the ones from photon cm9. As was said already, the cm7 fp code needs a rewrite for cm9, overlaying cm7 over cm9 will just break stuff. additionally there is updated cm9 code from atrix dev team but, since there are no useful proprietary binaries, there is no real need to update the sources

jokersax11 said:
Fingerprint needs to be properly ported. Building on cm7 code just gives you a jumbled mess.
I know its a little more setup but you really need proper cm9 source to build correctly. You can overlay the fingerprint code in the device tree and still keep the latest cm9 sync.
Its actually pretty easy to set up.
Repo init cm9githubyatayata... -b ics
Repo sync -j1 (yes j1 cm9 github is taxed)
Pull the vendor and device
Edit cm vendor setup
Build
Sent from my MB855 using XDA App
Click to expand...
Click to collapse
I'll start porting sometime later this evening after work.

crnkoj said:
ive managed to get cm9 to build several times, even before we started on the cm7+fp, and the older builds worked well with a few of o2x libs (i can put a link with the ones i used as a flashable zip here), the only things not working were obviously camera, and hw acceleration (although maps, gallery and games/benches worked, but slower than on cm7), after that ive tried to build it again with cm9 + atrix dev team cm9/ics sources, which built nice, but on bootup i get a permanent com.android.phone stopped, so one would have to edit some (probably ril related) files or use the ones from photon cm9. As was said already, the cm7 fp code needs a rewrite for cm9, overlaying cm7 over cm9 will just break stuff. additionally there is updated cm9 code from atrix dev team but, since there are no useful proprietary binaries, there is no real need to update the sources
Click to expand...
Click to collapse
Hope we dont need to rewrite the entire FP code - just port it/find the right hooks into app/settings and frameworks/base. Will look at CM9 code later this evening. Will be slow since this is my first time w CM9.

acerbix said:
Hope we dont need to rewrite the entire FP code - just port it/find the right hooks into app/settings and frameworks/base. Will look at CM9 code later this evening. Will be slow since this is my first time w CM9.
Click to expand...
Click to collapse
very nice,
one thing, it seems you know how to go around this stuff and i am very new to this..., so i was wondering if you would have some advice what to read/learn to be able to edit/fix this (c++/java programming?), as like this i cant or dont know how to do code tweaking, if i get a hang of it i would gladly work on it than.
second to that the good thing is fp is actually working in cm9 (the navigation), so the drivers for it work, we jsut in fact need to implement the app as we had to in the cm7 kangs now.

crnkoj said:
very nice,
one thing, it seems you know how to go around this stuff and i am very new to this..., so i was wondering if you would have some advice what to read/learn to be able to edit/fix this (c++/java programming?), as like this i cant or dont know how to do code tweaking, if i get a hang of it i would gladly work on it than.
second to that the good thing is fp is actually working in cm9 (the navigation), so the drivers for it work, we jsut in fact need to implement the app as we had to in the cm7 kangs now.
Click to expand...
Click to collapse
Sure - Sent you a PM on this.

t.s.eliot said:
I got past that initial problem by just copying the entire source file rather than trying to do the edits.
Currently stuck applying the group of changes from the "packages/apps/Settings" tree. The "SecuritySettings.java" file seems to have a lot of additional stuff for the face unlock, so it is really hard to tell where the FP stuff goes.
No luck so far with the line by line changes. Next attempt will be to try just replacing the files.
CM9 will build with no issue without the FP unlock. Just need to add the "device/motorola/olympus" directory and the olympus proprietaries. The Atrix Dev Team keeps these on their github under the ICS branch.
---------- Post added at 07:28 AM ---------- Previous post was at 07:22 AM ----------
(I have to preface all of my comments with the observation that I really don't know what I"m doing.)
It seems like we have proper source for building the basic CM9 on the Atrix. There isn't a camera yet, but the Atrix Dev Team's ICS branch seems to have the right files for /device/vendor/motorola/olympus and vendor/motorola/olympus directories. Basic version builds with no issue.
Trying to merge the FP unlock code into the Atrix stuff seems much more challenging. I don't think that replacing the changed files will work, since the Security Settings seem to have some dramatic changes made for the Face Unlock.
(On a side note, two factor biometric authentication would be really cool if it ever gets working....)
Click to expand...
Click to collapse
Where did you found FP sensor unlock code?
As far as i know, the finger print sensor unlock code is closed source!
(creating+managing fingers activities and the unlock screen activity!)
Sent from my MB860 using XDA App

Paschalis said:
Where did you found FP sensor unlock code?
As far as i know, the finger print sensor unlock code is closed source!
(creating+managing fingers activities and the unlock screen activity!)
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
Checkout the Atrix-Dev-Team github. As far as I know t0dbld wrote all new code for it from the ground up. Which is why it has the added navigation features and multiple finger support.

Learning programming for hacking fun
crnkoj said:
very nice,
one thing, it seems you know how to go around this stuff and i am very new to this..., so i was wondering if you would have some advice what to read/learn to be able to edit/fix this (c++/java programming?), as like this i cant or dont know how to do code tweaking, if i get a hang of it i would gladly work on it than.
second to that the good thing is fp is actually working in cm9 (the navigation), so the drivers for it work, we jsut in fact need to implement the app as we had to in the cm7 kangs now.
Click to expand...
Click to collapse
Well - there were several other PM'd requests for this info - so I thought I'd post the info here.
Disclaimer: I am not a comp-sci grad, just a geek If you have easier ways to learn C or Java please post here.
I am guessing you already know your way around linux, shell prompt/scripting etc. Next thing to learn would be C. I'd say C is easier to learn than C++ since there is a lot less to it (no classes and OO) and most of the native code is in C. If you know C, learning C++ or java is no problem
I learnt both C and java while I was hacking - that gave me the incentive to learn I tried reading books and found them to be either very boring (lots of unnecessary stuff) or confusing.
The books that I used most was K&R C - http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628 - Supposed to be a beginner's book but can be confusing. I mostly used it as a reference once I learnt C.
This book helped a lot as well: http://www.amazon.com/Data-Structures-Using-Aaron-Tenenbaum/dp/0131997467
The way I learnt C was mostly by asking around, trial and error
An online tutorial: http://crasseux.com/books/ctutorial/
And also: http://www.cprogramming.com/
I never did really learn Java - I hack around, mostly get things wrong, and sometimes get things right
A good Java tutorial - http://docs.oracle.com/javase/tutorial/
My advice, for what its worth - learn C first. That gives you a strong basis for learning other languages. I haven't really spent much time learning Java or C# but have written working programs/tools in both languages
Finally - Google is your friend when you are stuck - which you will be
Best of luck - I will be happy to help as you learn.

Paschalis said:
Where did you found FP sensor unlock code?
As far as i know, the finger print sensor unlock code is closed source!
(creating+managing fingers activities and the unlock screen activity!)
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
The Atrix-Dev team did the work - you can use their weekly build or if you want to build your own, Read this post, and this thread:
http://forum.xda-developers.com/showpost.php?p=21436681&postcount=59

Sorry to say - both kangs failed when loaded on my atrix - they boot up fine, but com.android.phone crashes. must be something to do with the RIL. Will resync /rebuild/retry and see if I have better luck this time

acerbix said:
Sorry to say - both kangs failed when loaded on my atrix - they boot up fine, but com.android.phone crashes. must be something to do with the RIL. Will resync /rebuild/retry and see if I have better luck this time
Click to expand...
Click to collapse
That wont help. It's like this since a week or so. It seems the cm team has updated something that messes with film and is not compatible with the atrix dev team sources anymore. I did a logcat of it but didn't get far.

acerbix said:
The Atrix-Dev team did the work - you can use their weekly build or if you want to build your own, Read this post, and this thread:
http://forum.xda-developers.com/showpost.php?p=21436681&postcount=59
Click to expand...
Click to collapse
I compiled also CM7.1, with ALL fingerprint branches 1-2 weeks ago..
I used fp branches of atrix-dev-team: settings app, and framework base, and all their work in the top of pure CM7.1 source code, but the build result didnt include a fingerprint unlocker..
I will try acerbix's framework base to see..
Btw acerbix, what are the differences of your framework base, and framework base of the atrix-dev-team fingerprint branch?

Paschalis said:
I compiled also CM7.1, with ALL fingerprint branches 1-2 weeks ago..
I used fp branches of atrix-dev-team: settings app, and framework base, and all their work in the top of pure CM7.1 source code, but the build result didnt include a fingerprint unlocker..
I will try acerbix's framework base to see..
Btw acerbix, what are the differences of your framework base, and framework base of the atrix-dev-team fingerprint branch?
Click to expand...
Click to collapse
The Atrix-Dev-Teams's frameworks/base had deprecated files that haven't been updated since December. We found that some of the non-atrix related upstream code from CM had changed, so this was causing issues with FP unlocker. Instead of using the FP branch files, we ended up manually merging or copying the updated Atrix-Dev-Team stuff on top of the vanilla CM7.2 source for frameworks/base. The atrix related stuff is exactly the same, it's just the underyling CM7 code that is different from what is on the dev team's github. Checkout the CM7 build thread for more details and workarounds.

ghost_og said:
The Atrix-Dev-Teams's frameworks/base had deprecated files that haven't been updated since December. We found that some of the non-atrix related upstream code from CM had changed, so this was causing issues with FP unlocker. Instead of using the FP branch files, we ended up manually merging or copying the updated Atrix-Dev-Team stuff on top of the vanilla CM7.2 source for frameworks/base. The atrix related stuff is exactly the same, it's just the underyling CM7 code that is different from what is on the dev team's github. Checkout the CM7 build thread for more details and workarounds.
Click to expand...
Click to collapse
Ghost_og is correct. We built this on CM7.2 codebase by maually merging the Atrix-dev team's changes to the CM7.2 files. Without the merge, CM7.2 the Atrix-dev-team overlays will not compile.

Paschalis said:
I compiled also CM7.1, with ALL fingerprint branches 1-2 weeks ago..
I used fp branches of atrix-dev-team: settings app, and framework base, and all their work in the top of pure CM7.1 source code, but the build result didnt include a fingerprint unlocker..
I will try acerbix's framework base to see..
Btw acerbix, what are the differences of your framework base, and framework base of the atrix-dev-team fingerprint branch?
Click to expand...
Click to collapse
If you want to compile 7.1, you dont need my framework/base. Use it only if you are pulling CM7.2 code and overlaying Atrix-dev changes on it.

Related

[DEVS] You too can build a CM-based AOSP ROM

Obviously, I am going to be cleaning up some bugs with the CM7 build...
But, for those of you who might be inclined to develop a CM-based AOSP ROM, feel free to check out my github source to see what's involved:
https://github.com/Hashcode
Or you can:
repo init -u https://[email protected]/Hashcode/cm4D3.git
repo sync
To pull the entire set of android files that I use for compiling the current build.
Please note that the Board Config is currently setup to generate Safestrap .zip files.
Great job
Thank you for everything you have done for the droid 3!
Is there a kitchen for DROID 3 roms. Running windows 7
Sent from my DROID3 using xda premium
You need to be running Linux to do this hardcore kind of stuff.
Like Ubuntu I had it set up in VB and detain. Was just wondering if there was some thing for Motorola roms out there. I have had HTC phones this my first moto with android on it.
Sent from my DROID3 using xda premium
I'm starting to tinker with building (learning, actually) ROMs. I'm running Linux Mint Debian - has there been a kitchen built for D3?
Hashcode said:
repo init https://[email protected]/Hashcode/cm4D3.git
Click to expand...
Click to collapse
That should be
Code:
repo init -u git://github.com/Hashcode/cm4D3.git -b gingerbread
or whatever URL you want to use from the access URL box at https://github.com/Hashcode/cm4D3.
And of course "gingerbread" could be "ics" if your excitement about being on the bleeding edge overrides what should be a fairly sensible fear reaction to the term "bleeding edge".
@Hashcode: You don't use your own ALSA repos? (Comparing with my own generated manifest for your project...)
Also, are you planning on pulling newer Gingerbread manifest changes into your tree? I noticed CyanogenMod have gained a u8150 device tree, and I happen to have one of those, but your manifest doesn't list it...
Ooops. I have a u8510. >_< But the question stands...
TBBle said:
That should be
Code:
repo init -u git://github.com/Hashcode/cm4D3.git -b gingerbread
or whatever URL you want to use from the access URL box at https://github.com/Hashcode/cm4D3.
And of course "gingerbread" could be "ics" if your excitement about being on the bleeding edge overrides what should be a fairly sensible fear reaction to the term "bleeding edge".
@Hashcode: You don't use your own ALSA repos? (Comparing with my own generated manifest for your project...)
Also, are you planning on pulling newer Gingerbread manifest changes into your tree? I noticed CyanogenMod have gained a u8150 device tree, and I happen to have one of those, but your manifest doesn't list it...
Ooops. I have a u8510. >_< But the question stands...
Click to expand...
Click to collapse
Thank you for pointing out that my repo init line was wrong. I fixed it for those that were having issues.
Also, for those watching my manifest for ICS, I'm getting an error when syncing:
error: revision refs/heads/master in manifests not found
I'm trying to fix that. Correction: Fixed it and double-checked with a repo sync.
Some quick answers:
- I tried to customize the alsa source to fix some of the audio issues. But it ended up being a bit more complex than just changing ALSA. Motorola added a layer into the audio system for handling HDMI audio and in call audio volume.
When you build stock AOSP Gingerbread using the alsa drivers, the libaudio.so file ends up being all of the ALSA calls. If you examine the libaudio from the D3, you'll see that it is nothing of the sort. It's the customized mixer lib for RDS voice and HDMI audio. There's another lib from the phone: libaudio_ext.so which ends up being the alsa calls.
All of which made customizing just the alsa code risky at best as the further away from the version of alsa that was used on the phone, the less likely that the custom libaudio would work.
I probably still have the unfinished hardware_alsa git out on github, but it's not active in the current build.
- I can occasionally check for updates to the CM7 manifest and add them, or if you fork the manifest and add it in there that works as well.
Side Note: I may need to pick your brain on an EGL 0x0500 erorr I'm getting in the ICS code. I'm fairly certain it's an enum value that our version of the PowerVR drivers aren't set to handle, but I'd like to confirm that for my troubleshooting. And it seems that you might have some knowledge in that area
Where/how does someone begin working on building a ROM once they've downloaded these files? I'd rather dive into code and learn Android rather than using a menu driven wizard. Is there a tutorial somewhere? What tools are needed?
Sent from my DROID3 using XDA App
Phibernaut said:
Where/how does someone begin working on building a ROM once they've downloaded these files? I'd rather dive into code and learn Android rather than using a menu driven wizard. Is there a tutorial somewhere? What tools are needed?
Sent from my DROID3 using XDA App
Click to expand...
Click to collapse
This would be the starting point that you're looking for:
http://source.android.com/
Hashcode said:
Side Note: I may need to pick your brain on an EGL 0x0500 erorr I'm getting in the ICS code. I'm fairly certain it's an enum value that our version of the PowerVR drivers aren't set to handle, but I'd like to confirm that for my troubleshooting. And it seems that you might have some knowledge in that area
Click to expand...
Click to collapse
Some, but probably not enough. I'm happy to look, but I'm actually moving internationally tomorrow so I may not have 'net access for a week or so. >_< (That's why I've been trying so hard to get backup working. ^_^)
Once I'm settled in I will probably use fdisk to repartition my device or have a poke at hacking sd-ext support into safestrap, so I can start playing with custom ROMs.
Did you see my safestrap-ME863 nandroid patch in the Safestrap thread, BTW? It's got a couple of TODOs, but seems safe and roughly correct to me. http://forum.xda-developers.com/showpost.php?p=19683372&postcount=249
It could also form the basis for detecting when /preinstall can't be used as safe-system although I didn't look to see if there's already code to do that.
Does anyone know of a site where I can peek at reference code for random things (Apps, Kernal etc.)? It'll make it easier to understand how the code works. I haven't look at any code yet so I don't even know what language apps and the os are programmed in. (Java, C, C++, Ruby)
Sent from my D3-CM7-SS using xda premium
tenchi19134 said:
Does anyone know of a site where I can peek at reference code for random things (Apps, Kernal etc.)? It'll make it easier to understand how the code works. I haven't look at any code yet so I don't even know what language apps and the os are programmed in. (Java, C, C++, Ruby)
Click to expand...
Click to collapse
Just pull down the repo as Hashcode describes in this thread - you'll have all of the Android source. To the best of my knowledge, it comprises of mostly C, C++, and Java, but there is probably a smathering of some other things like ASM, perl, BASH, etc.
And to those who are asking if there is a kitchen, there is, it's called make

[KANG] CM9 Atrix Test Build by wrldsuksgo2mars

I tried the latest build of CM7 done by the Atrix Dev Team and it is awesome. Very reliable, fully functional, etc. I figured I'd give a whirl to compiling the real ICS version to see what that was like.
CM9 build system with the appropriate Atrix Dev Team repos in place actually spit out a working ROM. There are a number of issues aside from the general preview state of CM9. I figured I would share them in case anyone else was as curious as me. Apparently, the internal atrix dev teams are well beyond these issues already, so kudos.
Probably related to CM/atrix specific stuff
- Camera and finger print sensor don't work
- Launcher crashes pretty often
- Some openGL demos don't seem to work right (or at all)
- No mounting the SD as USB storage
Probably related to the specific gapps package I used.
- Maps crashes after 3 seconds (signal 11 - native code crash)
- Maps wants to update, but it can't (sharedId conflict if you actually remove maps)
- Earth won't run (missing the earthmobile library)
- Google Voice Search bombs (signal 4 - illegal instruction - currently suspecting the native packages might have some NEON instructions that the atrix cpu doesnt support)
- Calendar will not sync for google or exchange. App loads, but the sync service is failing
- Lots of null pointer exceptions for the NFC stuff in the log.
Anyway, this is just a build of the code that's out there, nothing special done by me. It might be useful for a dev phone or something but not for use on a real day-to-day device. Obviously it doesn't have the google apps embedded in it.
http://www.multiupload.com/XT9QPPQYF1 thanks xploited for uploading
md5: 670068584eb94bf1d660c0450815ad0d
Personally, I had trouble going back to CM7 afterwards, my clockwordmod backups were screwed up (bad boot.img? cross-linked files on the SD card) and I had a very hard time getting back to the good ole working state. Ultimately, I had to restore the partial backup and then reflash the CM7 image + gapps.
So, if you were curious what building a random repo on the web and installing it on your phone would do, then feel free to try and lose all of your data. There are no updates/support for this, etc. It's just a curiosity... what is the state of this stuff right now?
BTW... I am back on CM7/Atrix now which is AWESOME!!!!
Source Code Links:
https://github.com/CyanogenMod/android
https://github.com/Atrix-Dev-Team/android_device_motorola_olympus
Not sure how the dev team would react to this ..we do not want any bricked phones because of this ..there maybe some experimental dangerous code in there in those sources as of now ..not sure though
Hmm... figured since I spent quite awhile getting a build set up, it might be worth sharing. I am happy to take down if it is inappropriate.
Well I am not the best person to answer that ...but yeah thanks for your work.
Eh, I wouldn't be mad about it, but I think it needs more caution. I would just wait. As you say, it kindof screwed with a lot and wasn't very usable, so why flash it? Maybe ok for someone who wants to look at the code, but I wouldn't flash it.
Awesome news man. Thanks for being a lab rat and giving us an update.
Sent from my MB860 using xda premium
Not so much take it down as change the title of the post.
the current internal atrix-dev-team cm9 is way further ahead of this, we have some different patches. this is missleqading as it makes it sound official and is not.
Could you please change the tittle to [KANG] CM9 Test Build by "your name"
and please link to the sources, as is proper practice for open source projects
thank you
samcripp said:
Not so much take it down as change the title of the post.
the current internal atrix-dev-team cm9 is way further ahead of this, we have some different patches. this is missleqading as it makes it sound official and is not.
Could you please change the tittle to [KANG] CM9 Test Build by "your name"
and please link to the sources, as is proper practice for open source projects
thank you
Click to expand...
Click to collapse
and I guess you guys deserve a Xmas break now ...
It's nice to see that! Thanks for your hard work.
I'm looking forward to the CM9
Thank you for this.
!
Anyways, Just out of curiosity... where can you find the official Atrix Dev team's CM9?
The one been worked on by turl is with him, that is not for public release.
Dont forget to tell him merry xmas!
I always forget what kang means.
Sent from my MB860 using XDA App
wrldsuksgo2mars said:
I tried the latest build of CM7 done by the Atrix Dev Team and it is awesome. Very reliable, fully functional, etc. I figured I'd give a whirl to compiling the real ICS version to see what that was like.
CM9 build system with the appropriate Atrix Dev Team repos in place actually spit out a working ROM. There are a number of issues aside from the general preview state of CM9. I figured I would share them in case anyone else was as curious as me. Apparently, the internal atrix dev teams are well beyond these issues already, so kudos.
Probably related to CM/atrix specific stuff
- Camera and finger print sensor don't work
- Launcher crashes pretty often
- Some openGL demos don't seem to work right (or at all)
- No mounting the SD as USB storage
Probably related to the specific gapps package I used.
- Maps crashes after 3 seconds (signal 11 - native code crash)
- Maps wants to update, but it can't (sharedId conflict if you actually remove maps)
- Earth won't run (missing the earthmobile library)
- Google Voice Search bombs (signal 4 - illegal instruction - currently suspecting the native packages might have some NEON instructions that the atrix cpu doesnt support)
- Calendar will not sync for google or exchange. App loads, but the sync service is failing
- Lots of null pointer exceptions for the NFC stuff in the log.
Anyway, this is just a build of the code that's out there, nothing special done by me. It might be useful for a dev phone or something but not for use on a real day-to-day device. Obviously it doesn't have the google apps embedded in it.
http://goo.gl/39NnA
Personally, I had trouble going back to CM7 afterwards, my clockwordmod backups were screwed up (bad boot.img? cross-linked files on the SD card) and I had a very hard time getting back to the good ole working state. Ultimately, I had to restore the partial backup and then reflash the CM7 image + gapps.
So, if you were curious what building a random repo on the web and installing it on your phone would do, then feel free to try and lose all of your data. There are no updates/support for this, etc. It's just a curiosity... what is the state of this stuff right now?
BTW... I am back on CM7/Atrix now which is AWESOME!!!!
Source Code Links:
https://github.com/CyanogenMod/android
https://github.com/Atrix-Dev-Team/android_device_motorola_olympus
Click to expand...
Click to collapse
Thinks for your works,
Come from Chinese thinks!
i shall say this.. if this is behind where the dev team actually is...things are looking good! and btw.. i believe fruitcaker maker works. installed and is now creating;]
edit: yep. it does.
Thanks man very very good work android congratulations for share work whith comunity
Sent from my MB860 using xda premium
it looks very nice but id needs a bit more work to be a experimental daily driver.
ps: to solve the corrupt backup problem just copy the files to your computer before flashing and copy to your phone before restoring.
good luck!
where can I get google apps for this rom? Tryed gapps for CM7 from CM wiki - fail, setup wizard crashes.
try the one on this link
http://rootzwiki.com/topic/11854-romcm9-encounterics-x-beta-2-with-working-radio-401/
good luck!
---------- Post added at 07:52 AM ---------- Previous post was at 07:47 AM ----------
ilya11g said:
where can I get google apps for this rom? Tryed gapps for CM7 from CM wiki - fail, setup wizard crashes.
Click to expand...
Click to collapse
try the one on this link
http://rootzwiki.com/topic/11854-rom...ing-radio-401/
good luck!
For a preview build it looks pretty nice. Surprisingly stable for what it is. Definitely keeping an eye on this, especially since the code is out there to make DIY kangs with.
samcripp said:
The one been worked on by turl is with him, that is not for public release.
Dont forget to tell him merry xmas!
Click to expand...
Click to collapse
Random SamCripp memory....
"We're rapping them, we're rapping them!!!"
Sorry, guess you had to be there.... aahhh memories... nevermind, sorry for the off topic post.
Thanks though for the effort of getting this ported btw.

[DEV] Building Atrix-dev CM7 from source:

Hello:
I am looking to build the official Atrix-dev CM7 weekly/nightly, however, cannot find any instructions/guide to do so. Of course, I could simply pull everything from the Atrix-dev CM7 github and overlay on base CM7 source, but thought I'd ask before I do that.
Why build from source? I am not looking to build a CM7 based ROM or release anything, just change some minor things for my own consumption:
- Not have mmcblk1p2 mount as /sd-ext [currently set in a .mk file according to vanilla CM7 source for olympus]
- Since webtop doesnt work in CM7 (and I dont need it) expand /data(p16) to include the partition space of /osh(p13) [means mucking around with the partition table, and the init scripts to change mounts]
- have emmc mount on /sdcard and external sdcard mount on /sd-ext so that backups from other ROMs work
Cheers
acerbix said:
Hello:
I am looking to build the official Atrix-dev CM7 weekly/nightly, however, cannot find any instructions/guide to do so. Of course, I could simply pull everything from the Atrix-dev CM7 github and overlay on base CM7 source, but thought I'd ask before I do that.
Why build from source? I am not looking to build a CM7 based ROM or release anything, just change some minor things for my own consumption:
- Not have mmcblk1p2 mount as /sd-ext [currently set in a .mk file according to vanilla CM7 source for olympus]
- Since webtop doesnt work in CM7 (and I dont need it) expand /data(p16) to include the partition space of /osh(p13) [means mucking around with the partition table, and the init scripts to change mounts]
- have emmc mount on /sdcard and external sdcard mount on /sd-ext so that backups from other ROMs work
Cheers
Click to expand...
Click to collapse
Check here.
http://forum.xda-developers.com/showthread.php?t=915435
It's not for Atrix but you can just do it by modifying model name.
I just followed this method.
(Currently having java related problem though)
+1 it's a good one and is one of my references too.
AndroidON said:
Check here.
http://forum.xda-developers.com/showthread.php?t=915435
It's not for Atrix but you can just do it by modifying model name.
I just followed this method.
(Currently having java related problem though)
Click to expand...
Click to collapse
+1. Great recommendation. Just used it to complete my first build.
Sent from my MB860 using XDA App
AndroidON said:
Check here.
http://forum.xda-developers.com/showthread.php?t=915435
It's not for Atrix but you can just do it by modifying model name.
I just followed this method.
(Currently having java related problem though)
Click to expand...
Click to collapse
Thanks for the info - not quite what I was looking for though. If you follow these instructions you build the vanilla CM7. I wanted to get/build the Atrix customized bits (i.e fingerprint scanner for example) which are not in the vanilla sources. I am guessing that can be pulled down from Atrix-dev github. Original post was to see if there was an easy way to do that.
After looking at the atrix developer github, found a default.xml for the .repo that should work, and used it.
acerbix said:
Thanks for the info - not quite what I was looking for though. If you follow these instructions you build the vanilla CM7. I wanted to get/build the Atrix customized bits (i.e fingerprint scanner for example) which are not in the vanilla sources. I am guessing that can be pulled down from Atrix-dev github. Original post was to see if there was an easy way to do that.
After looking at the atrix developer github, found a default.xml for the .repo that should work, and used it.
Click to expand...
Click to collapse
The fingerprint scanner was working in my kang. The only thing I pulled from the atrix-dev-team's github were the proprietary vendor files. Other than that those instructions should get you an up to date nightly build.
Sent from my MB860 using XDA App
ghost_og said:
The fingerprint scanner was working in my kang. The only thing I pulled from the atrix-dev-team's github were the proprietary vendor files. Other than that those instructions should get you an up to date nightly build.
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
Thanks so much for the info - trying it now.
ghost_og said:
The fingerprint scanner was working in my kang. The only thing I pulled from the atrix-dev-team's github were the proprietary vendor files. Other than that those instructions should get you an up to date nightly build.
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
Hmm you have put that in the local_manifest.xml which line did you use? I'm trying to get it to work but somehow can't get the FP unlock option or the change of navigation with fp (navigation does work though).
acerbix said:
Thanks so much for the info - trying it now.
Click to expand...
Click to collapse
crnkoj said:
Hmm you have put that in the local_manifest.xml which line did you use? I'm trying to get it to work but somehow can't get the FP unlock option or the change of navigation with fp (navigation does work though).
Click to expand...
Click to collapse
Well I'm a big dummy. Looks like the only thing that was working was the trackpad navigation. I never use the scan/unlock feature so I just assumed it was working also. I should have checked before posting. I just caught up on my reading and saw your posts with t.s. eliot over in the Weeklys thread, crnkoj. Sorry for the misinformation acerbix.
Anyone else successfully built from source with full FP functionality?
ghost_og said:
Well I'm a big dummy. Looks like the only thing that was working was the trackpad navigation. I never use the scan/unlock feature so I just assumed it was working also. I should have checked before posting. I just caught up on my reading and saw your posts with t.s. eliot over in the Weeklys thread, crnkoj. Sorry for the misinformation acerbix.
Anyone else successfully built from source with full FP functionality?
Click to expand...
Click to collapse
Oh okay - I thought I must be doing something stupid so I PM'd you last night rather than post here. So we all can get trackpad working in the kang but not device setting/lock/unlock
crnkoj said:
Hmm you have put that in the local_manifest.xml which line did you use? I'm trying to get it to work but somehow can't get the FP unlock option or the change of navigation with fp (navigation does work though).
Click to expand...
Click to collapse
I tried replacing default.xml in .repo with the one in Atrix dev git repository, and then pulling down the code. That lead to multiple build failure, so I am assuming hte changes in the atrix dev github are not synced with the changes upstream coz vanilla cyanogenmod builds fine.
I am not even getting the "Device Settings" option that shows up in the weekly build, though the trackpad works fine. I'll try looking at the Settings.apk code to see if there is something I am missing.
cmkoj: Do you have a local_manifest.xml that works and gives you a good build? Open to sharing that?
ah ghost_og i see, i was like how could he get it to work np though anyhow i think one has to implement this: https://github.com/Atrix-Dev-Team/android_packages_apps_Settings into teh build aswell to get fp (read the latest commits there ). second to that probably one has to use https://github.com/Atrix-Dev-Team/android_device_motorola_olympus.git with the branch fingerprint int he local manifest to get it to work than (i have tried this like a few times still not working ...)
acerbix im not sure what you need? do you need a local manifest that makes fp work as it should ( i havent managed to get it to work yet) or just one that works for building? i can sure share the latter one
crnkoj said:
ah ghost_og i see, i was like how could he get it to work np though anyhow i think one has to implement this: https://github.com/Atrix-Dev-Team/android_packages_apps_Settings into teh build aswell to get fp (read the latest commits there ). second to that probably one has to use https://github.com/Atrix-Dev-Team/android_device_motorola_olympus.git with the branch fingerprint int he local manifest to get it to work than (i have tried this like a few times still not working ...)
acerbix im not sure what you need? do you need a local manifest that makes fp work as it should ( i havent managed to get it to work yet) or just one that works for building? i can sure share the latter one
Click to expand...
Click to collapse
Thanks! I feel like such an idiot now. When I changed the drop down list for the branch, I saw the source for the fingerprint unlock actions! (i.e chooselockfinger.java, confirmlockfinger.java).
Off to try a build now!
crnkoj said:
ah ghost_og i see, i was like how could he get it to work np though anyhow i think one has to implement this: https://github.com/Atrix-Dev-Team/android_packages_apps_Settings into teh build aswell to get fp (read the latest commits there ). second to that probably one has to use https://github.com/Atrix-Dev-Team/android_device_motorola_olympus.git with the branch fingerprint int he local manifest to get it to work than (i have tried this like a few times still not working ...)
acerbix im not sure what you need? do you need a local manifest that makes fp work as it should ( i havent managed to get it to work yet) or just one that works for building? i can sure share the latter one
Click to expand...
Click to collapse
Right now, I'd settle for one that works for building. I manually overlay files, so that will definitely be easier
t.s.eliot said:
Thanks! I feel like such an idiot now. When I changed the drop down list for the branch, I saw the source for the fingerprint unlock actions! (i.e chooselockfinger.java, confirmlockfinger.java).
Off to try a build now!
Click to expand...
Click to collapse
Lets know if you get it working I'm building too [clobber build just for the heck of it - will keep you posted]
Thanks a ton, cmkoj for all the help/pointers!
crnkoj said:
ah ghost_og i see, i was like how could he get it to work np though anyhow i think one has to implement this: https://github.com/Atrix-Dev-Team/android_packages_apps_Settings into teh build aswell to get fp (read the latest commits there ). second to that probably one has to use https://github.com/Atrix-Dev-Team/android_device_motorola_olympus.git with the branch fingerprint int he local manifest to get it to work than (i have tried this like a few times still not working ...)
acerbix im not sure what you need? do you need a local manifest that makes fp work as it should ( i havent managed to get it to work yet) or just one that works for building? i can sure share the latter one
Click to expand...
Click to collapse
Thank you for pointing out the Settings and Device branches. Was definitely using the old gingerbread branches before. I just replaced those two folders with the fingerprint branch and am building again. Will check back in once it's done.
*Update* Still no luck. I tried using the updated Device and Settings folders but only navigation works still. Dang.
ghost_og said:
Thank you for pointing out the Settings and Device branches. Was definitely using the old gingerbread branches before. I just replaced those two folders with the fingerprint branch and am building again. Will check back in once it's done.
*Update* Still no luck. I tried using the updated Device and Settings folders but only navigation works still. Dang.
Click to expand...
Click to collapse
Away from my Atrix so cant try this yet - do you think the kernel matters? Did you switch to the kernel included in the build?
acerbix said:
Away from my Atrix so cant try this yet - do you think the kernel matters? Did you switch to the kernel included in the build?
Click to expand...
Click to collapse
Hey guys, I also noticed that android_ frameworks_base has a fingerprint branch with updated commits from t0dbld. I've included this third replacement folder and will be trying another build. Might want to try including this with the 2 branches crnjok pointed out above. I'm keeping my fingers crossed for this one.
I have not replaced any kernels prior to building and use what comes with the stock build. That's a whole other issue for me. When I try to compile just the kernel my zImage ends up being 1mb bigger than faux's and the packaged boot.img I create will not boot. I'm guessing this is due to my being on a 32-bit machine, but I'm not positive.
ghost_og said:
Hey guys, I also noticed that android_ frameworks_base has a fingerprint branch with updated commits from t0dbld. I've included this third replacement folder and will be trying another build. Might want to try including this with the 2 branches crnjok pointed out above. I'm keeping my fingers crossed for this one.
I have not replaced any kernels prior to building and use what comes with the stock build. That's a whole other issue for me. When I try to compile just the kernel my zImage ends up being 1mb bigger than faux's and the packaged boot.img I create will not boot. I'm guessing this is due to my being on a 32-bit machine, but I'm not positive.
Click to expand...
Click to collapse
ye i forgot to mention that one lol, i thought its in the fingerprint build though. for my use i manually git cloned the vendor_motorola repo into /working_dir/vendor/ but havent had any luck. regarding the kernel afaik if you put the additional repos into your local_manifest.xml it should use the kernel from there (if one is available). but i dont really think the kernel is needed to be changed, since on my builds i had the authentec.truesuite (or whatever the process for fp is called) running, only the fp unlock/device option were missing (there is a Fingerprintsomething.apk in the vendor repo of atrix dev team that i have had pulled in and built with but it didnt work, so yes im slowly giving up (second to that i tried setting up a build env on a second pc that drastically faster than the other one an i cannot get repo sync to sync android_prebuilt - just deleted the whole thing and did init again...)
as for the local_manifest.xml it should look like this http://pastebin.com/ccvVi2k9 for building the gb (that is with nav functioning fp but no unlock) if you want to get unlock to work you need to probably put in the other ones aswell (just by copying the <project path="device/motorola/olympus"
name="Atrix-Dev-Team/android_device_motorola_olympus.git"
remote="gh"
revision="gingerbread"/>
part and changing the name to appropriate and teh revision in all to fingerprint)
thanks go to fattire from the nook color forums who thought me how to make and edit these local_manifest.xml files and i used his file as a template for mine aswell.
i have to admit it im slowly sick of not being able to build one with working fp =/
Guys, see here for what directories to be pulled from atrix-dev-team github vs what to be kept in original CM7:
https://github.com/Atrix-Dev-Team/android/blob/gingerbread/default.xml
crnkoj said:
(second to that i tried setting up a build env on a second pc that drastically faster than the other one an i cannot get repo sync to sync android_prebuilt - just deleted the whole thing and did init again...)
Click to expand...
Click to collapse
Try updating ~/android/system/.repo/manifests/default.xml. I used this to fix the problem with the prebuilt repo sync:
Another workaround is to add the following remote definition:
Code:
<remote name="github-https"
fetch="https://github.com/" />
Then change the project definition to:
Code:
<project path="prebuilt" name="CyanogenMod/android_prebuilt" remote="github-https"/>
Once things are back to normal, you can remove the additional remote, and restore the original manifest.
Click to expand...
Click to collapse
It was provided in the comments section here.
ghost_og said:
Try updating ~/android/system/.repo/manifests/default.xml. I used this to fix the problem with the prebuilt repo sync:
It was provided in the comments section here.
Click to expand...
Click to collapse
yes thanks, lol, i knew about the fix and had the first part of it done with changing to https, but forgot about the second part, idiot i...
anyhow i resynced and am building now on the other pc with this local manifest http://paste.pocoo.org/show/534837/

[KANG] CM7.2 w/ FP by ghost_og

*Update 3/6/12*: I probably should have done this awhile ago, but I just wanted to clarify that this was a one-off release. It will not be updated since Nightlies/Weeklies are up and running again. In fact, they will have everything this ROM has plus more!
In trying to build CM7 (w/ FP) from source, acerbix, crnkoj, and I unwittingly built CM7.2 . You can follow along with our adventures here. We found that using the FP branches of the Atrix-Dev-Team's github repos with the new upstream CyanogenMod changes no longer produced a fully working FP build. After merging and copying the necessary code in frameworks/base from the ADT's repo on top of the newer CM7 stuff, it gave us a working 7.2 build.
I thought others may want to try out an updated CM7. This was my first attempt at compiling from source, so there may be bugs. A few changes I've noticed:
- "Holo" lockscreen
- T9 dialer
- Corrected calendar lockscreen widget
- More detailed battery stats (I think).
There are more if you feel like looking through the CM commits since the last official weekly/nightly release.
I'm not a developer. I will not be offering any kind of support beyond the possible update when worthwhile upstream changes are made. However, feel free to ask and answer questions here. I'm sure the other community members will be willing to help one another out.
Please keep in mind that this is a kang and in no way related to the official CM7 build, so please do not use those threads to post issues if you decide to try this.
Here are all of the sources I used:
https://github.com/CyanogenMod/android
https://github.com/Atrix-Dev-Team/android
https://github.com/ghost-og/android_frameworks_base
Here's the download link:
https://rapidshare.com/files/2700446381/update-cm-7.2.0-Olympus-KANG-ghost_og.zip
Sorry for using RapidShare. Multiupload was having issues when I tried uploading this there. I'll try to change it later.
*edit* Dropbox mirror. Be gentle:
http://dl.dropbox.com/u/11998742/update-cm-7.2.0-Olympus-KANG-ghost_og.zip
Link not working for me mate...
Sent from my MB860 using XDA App
Thanks for this. How recent is this? Does it encompass all of these changes: https://cm-nightlies.appspot.com/?device=olympus
Nice work,ghost_og.
I've used CM7.2 before on my Defy and Milestone 2. Many improvements over previous CM7. I'm waiting for multiupload link. Thanks for your hard work.
guidoido004 said:
Link not working for me mate...
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
Hmm, worked for me. It redirected at first, but then it should give you a 30-sec wait window. Sorry for the crappy hosting.
NguyenHuu said:
Thanks for this. How recent is this? Does it encompass all of these changes: https://cm-nightlies.appspot.com/?device=olympus
Click to expand...
Click to collapse
I built it 1/16/12, so I think the French translations were the last thing I caught. Sorry for the extra work, but checkout the main CM repo and checkout the commit history.
ghost_og said:
Hmm, worked for me. It redirected at first, but then it should give you a 30-sec wait window. Sorry for the crappy hosting.
I built it 1/16/12, so I think the French translations were the last thing I caught. Sorry for the extra work, but checkout the main CM repo and checkout the commit history.
Click to expand...
Click to collapse
Thanks, will test it out, been looking for some updates to CM7.
The only nightly update you doesnt have is the ones specific for atrix....
You also could add tweaks and mods on it ^^
Flashing now, lets see how much good is it. Hehehe
Sent from my MB860 using XDA App
ghost_og said:
In trying to build CM7 (w/ FP) from source, acerbix, crnkoj, and I unwittingly built CM7.2 . You can follow along with our adventures here. We found that using the FP branches of the Atrix-Dev-Team's github repos with the new upstream CyanogenMod changes no longer produced a fully working FP build. After merging and copying the necessary code in frameworks/base from the ADT's repo on top of the newer CM7 stuff, it gave us a working 7.2 build.
I thought others may want to try out an updated CM7. This was my first attempt at compiling from source, so there may be bugs. A few changes I've noticed:
- "Holo" lockscreen
- T9 dialer
- Corrected calendar lockscreen widget
- More detailed battery stats (I think).
There are more if you feel like looking through the CM commits since the last official weekly/nightly release.
I'm not a developer. I will not be offering any kind of support beyond the possible update when worthwhile upstream changes are made. However, feel free to ask and answer questions here. I'm sure the other community members will be willing to help one another out.
Please keep in mind that this is a kang and in no way related to the official CM7 build, so please do not use those threads to post issues if you decide to try this.
Here are all of the sources I used:
https://github.com/CyanogenMod/android
https://github.com/Atrix-Dev-Team/android
https://github.com/ghost-og/android_frameworks_base
Here's the download link:
https://rapidshare.com/files/2700446381/update-cm-7.2.0-Olympus-KANG-ghost_og.zip
Sorry for using RapidShare. Multiupload was having issues when I tried uploading this there. I'll try to change it later.
Click to expand...
Click to collapse
I think all of the fingerprint changes have been committed today, so you should get them if you pull the source to make your own build. No more splicing files necessary!
EDIT: Oops, I was wrong. Fingerprint branch was updated, but still need to merge those files into the base CM build.
the T9 dialer is great. Looking forward to more updates as more changes are comitted. Good work.
Let me mirror this up for you mate. Give me a while to upload it on my crappy connection.
kennethpenn said:
Let me mirror this up for you mate. Give me a while to upload it on my crappy connection.
Click to expand...
Click to collapse
Thank you! I appreciate it. Hehe, rapidshare...
ghost_og said:
Thank you! I appreciate it. Hehe, rapidshare...
Click to expand...
Click to collapse
http://bandbinnovations.com/xda/update-cm-7.2.0-Olympus-KANG-ghost_og.zip
Have fun!
ghost_og said:
In trying to build CM7 (w/ FP) from source, acerbix, crnkoj, and I unwittingly built CM7.2 . You can follow along with our adventures here. We found that using the FP branches of the Atrix-Dev-Team's github repos with the new upstream CyanogenMod changes no longer produced a fully working FP build. After merging and copying the necessary code in frameworks/base from the ADT's repo on top of the newer CM7 stuff, it gave us a working 7.2 build.
Click to expand...
Click to collapse
Yeah, those two branches were unrebased and unmaintained for quite a bit I have cleaned up the FP code a bit these days and rebased them, so you can now build from them too.
PS: We'll probably release a new weekly soon, with another long term, supported release (ba2tf-style) following after if no obvious regressions appear.
turl1 said:
Yeah, those two branches were unrebased and unmaintained for quite a bit I have cleaned up the FP code a bit these days and rebased them, so you can now build from them too.
PS: We'll probably release a new weekly soon, with another long term, supported release (ba2tf-style) following after if no obvious regressions appear.
Click to expand...
Click to collapse
Great news! I was debating whether or not to post this. I didn't want to step on any toes. Thanks for the hard work; I just synced and started a new build.
is it possible to flash this right over neutrino rom or is it best to full wipe?
Sent from my MB860 using XDA App
If coming from a cm7 based rom then just wipe /cache and dalvik. Been working for me switching between different versions.
Sent from my MB860 using XDA App
turl1 said:
Yeah, those two branches were unrebased and unmaintained for quite a bit I have cleaned up the FP code a bit these days and rebased them, so you can now build from them too.
PS: We'll probably release a new weekly soon, with another long term, supported release (ba2tf-style) following after if no obvious regressions appear.
Click to expand...
Click to collapse
http://www.youtube.com/watch?v=xHhUmRE2YOo
Can faux kernel be used with this rom?
Nipit said:
Can faux kernel be used with this rom?
Click to expand...
Click to collapse
Yes. The latest open beta runs very well for me.
turl1 said:
Yeah, those two branches were unrebased and unmaintained for quite a bit I have cleaned up the FP code a bit these days and rebased them, so you can now build from them too.
PS: We'll probably release a new weekly soon, with another long term, supported release (ba2tf-style) following after if no obvious regressions appear.
Click to expand...
Click to collapse
Wow great news!! Will the Weekly #5 be based on CM7.2?

[development]-kernel 3.4-freexperia

hy all
this is an project starter for android 3.4 kernel development for all msm7x30 mogami devices
sources are hosted on
https://github.com/freexperia/android_kernel_semc_msm7x30
br
J
Project Status
- we got initial branch after diffing lost of branches
M7630AABBQMLZA203029A
https://www.codeaurora.org/gitweb/q...it;h=4b2b84c6a0b6d29864e982a7aecc223acfd2eaa1
forked to our git and with mogami patches aplied
https://github.com/freexperia/android_kernel_semc_msm7x30/tree/M7630AABBQMLZA203029A
latest CAF tag for 7630 not usefull for now
https://www.codeaurora.org/xwiki/bin/QAEP/release
"November 16, 2012 M7630AABBQMLZA40701070 - msm7630 - M7630AABBQMLZA40701070.xml - 04.01.02" android 4.1
ETA
depending on problems and developers that will join
from 6 months to NEVER
This is a bold task. Perhaps you could look at the developments of irii-soft (and some others), they have replaced some crap Sony-specific code with generic wrappers. Main obstacle if I remember is memory maps now, there was an issue with partition maps but ATAG can be easily over-ridden via kernel command-line.
Getting it to boot should be trivial, sound and video will be difficult, and RIL may be never working due to lack of sources. Regardless, all the best. When I have more time I plan to help irii with his work on a "generic" 2.x kernel newer than what we have (because 3.x seems outrageous at this point).
Is there a wiki, a forum or something like that lists all the non-standard things that have already been found ? (some base of work to do)
Boudin said:
Is there a wiki, a forum or something like that lists all the non-standard things that have already been found ? (some base of work to do)
Click to expand...
Click to collapse
Easy to do yourself - download official SEMC kernel source and diff it with the same version of the linux baseline kernel. So to port to newer kernel you can isolate or "extract" the specific code that has been added and changed, and merge or "inject" that into a newer kernel. Easier said than done though, there are massive changes even in linux kernel revisions (0.0.x.0) - let alone alone new majors and minors (x.x.0.0).
There wouldn't be a wiki or anything of this research, because documenting it all would take an unrealistic amount of labor. Considering there are only a small handful of developers capable of it, there's no point. Besides, that's what GitHub and commit logs are for.
To FXP team,
I don't know if you know or not or even got this far in the development stage but I just wanted to point out a couple of things which may or may not help you...
So with the 3.4 kernel brings newer WiFi drivers which will give a better connection signal on wpa2 security but you might find that devices won't be able to connect to open security networks and WiFi hotspot will probably be broken. I'm posting this as on my gnex using custom kernel (FrancoFransico) he incorporated the 3.4 WiFi drivers a few times and broken hotspot and not being able to use open security WiFi networks were repeatedly reported problems.
I think it may be something hardware specific which allows these features to work on the 3.4 WiFi drivers specific to the nexus 4? You may have more luck trying the 3.0.xx WiFi drivers and getting those to work fully.
Best of luck to you guys!
Sent from my Galaxy Nexus
I'm pretty sure wifi is way down on the priority list, not to be rude but really - who cares about that now. Priority list would be like this:
(1) Get it to boot
(2) Fix primary/critical hardware-specific code for msm7k and qcom platform (display, audio)
(3) Fix RIL
(4) Fix secondary hardware (sensors, bluetooth, wifi)
One step at a time. Getting wifi will probably be trivial because bcm sources are part of the mainline kernel.
With that said, I'm unsubscribing from this thread now. There is massive work to be done and I can see this thread is just going to be filled with posts that have nothing to do with actual development.
All non-dev related posts, and especially "Thank You" posts, will be deleted without further notice. If I have to delete 5 pages of useless posts again, this thread will be locked.
Thank you!​
We have tried for a long time already (as you may already know).
https://github.com/adridu59/semc-msm-3.4/commits/master
https://github.com/adridu59/semc-msm-2.6.35
https://github.com/adridu59/android-msm-2.6.35
https://github.com/ExPeacer/CAF_android-msm-3.0/commits/master
https://github.com/ExPeacer/CAF_android-msm-2.6.32
Have fun with it anyways.
adridu59 said:
We have tried for a long time already (as you may already know).
https://github.com/adridu59/semc-msm-3.4/commits/master
https://github.com/adridu59/semc-msm-2.6.35
https://github.com/adridu59/android-msm-2.6.35
https://github.com/ExPeacer/CAF_android-msm-3.0/commits/master
https://github.com/ExPeacer/CAF_android-msm-2.6.32
Have fun with it anyways.
Click to expand...
Click to collapse
Whats the progress so far on this? Bootable already?
CosmicDan said:
Easy to do yourself - download official SEMC kernel source and diff it with the same version of the linux baseline kernel. So to port to newer kernel you can isolate or "extract" the specific code that has been added and changed, and merge or "inject" that into a newer kernel. Easier said than done though, there are massive changes even in linux kernel revisions (0.0.x.0) - let alone alone new majors and minors (x.x.0.0).
There wouldn't be a wiki or anything of this research, because documenting it all would take an unrealistic amount of labor. Considering there are only a small handful of developers capable of it, there's no point. Besides, that's what GitHub and commit logs are for.
Click to expand...
Click to collapse
I was asked by some user of this forum to give some kernel porting guidelines in this thread, so let me introduce myself first. I'm the developer of 3.0.x kernel for Samsung Galaxy Spica (also several other projects for Spica and Galaxy Apollo/Galaxy 3) and currently also Linux kernel developer at Samsung Poland R&D Center. Porting the kernel for Spica was a difficult task, because of poor quality of original kernel code, which required rewriting from scratch most of it, but it was very educational.
It's not easy to give advice, but I'd say that taking all the differences from clean kernel and applying all of that on top of newer version is what should be avoided. Of course those differences should be collected to see what was changed by the manufacturer, but this should be only used for further analysis, not as a ready code.
Another thing, rather than using the mainline Linux kernel to compare your phone sources with, it should be better to use Android kernel from Google's kernel/common tree (see https://www.codeaurora.org/gitweb/quic/la/?p=kernel/common.git;a=summary for older version archive) bumped to the same minor version using minor patches (found on kernel.org) or, possibly even better way, by pulling appropriate version tag from kernel.org git on top of proper branch of Android kernel tree. This will elminate Google's changes (that would be already available in your new base - android-3.4 branch of kernel/common) from the diff.
For getting the diff, I would personally also use Git. If you create a branch in your working tree which contains Android kernel in the version corresponding to your device kernel (using the way I described in previous paragraph), then copying your device kernel sources onto your working tree (remember to make distclean both trees to remove any compiled/generated files) will allow you to see the differences using git status and git diff. (See http://gitimmersion.com/ if you want to learn more about Git.)
Now it's important to split the changes into logically separate parts, for example core changes in arch/arm/mach-whatever_suitable_for_your_device, adding of particular drivers in drivers/, sound/ and include/, modifications to core kernel code in any other directories. It's essential to check whether all the changes are really required or not and why, because minimalizing the set of changes required to be replayed on top of your new base kernel sources will simplify your work.
After collecting all the changes, it's the time to apply them on top of your new kernel sources. All the changes should be applied one by one, checking how much the component that is being touched has changed since your old kernel and adjusting the changes properly. After applying each change, it should be verified that the kernel at least compiles, although it would be even better if you could get the kernel without any (or almost any) modification to boot to some state, e.g. showing something on the console (any chance to get access to serial console on your device?), and then check if it still boots after applying each next change.
Some links that might be useful:
- Linux cross reference, for comfortable reading of kernel code - http://lxr.linux.no/+trees
- Linux Device Drivers, a book about kernel programming - http://lwn.net/Kernel/LDD3/
- Git Immersion, a great Git tutorial - http://gitimmersion.com/
- Android kernel/common repository with full archive - https://www.codeaurora.org/gitweb/quic/la/?p=kernel/common.git;a=summary
- Linux stable repository, with all version tags - http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
Hopefully what I wrote will be helpful in your project. Good luck and best regards.
Hey tom3q,
thanks a lot for leaving some useful statements here!
tom3q said:
Another thing, rather than using the mainline Linux kernel to compare your phone sources with, it should be better to use Android kernel from Google's kernel/common tree (see https://www.codeaurora.org/gitweb/quic/la/?p=kernel/common.git;a=summary for older version archive) bumped to the same minor version using minor patches (found on kernel.org) or, possibly even better way, by pulling appropriate version tag from kernel.org git on top of proper branch of Android kernel tree.
Click to expand...
Click to collapse
I digged for some base kernel for a while.
Found a chromium msm kernel 2.6.32.9 at codeaurora (i know this is not Android).
Anyway, the diff against stock was ~30MB... quite too much.
Like i assumed many basic things are missing as well, so too much to start from.
I guess, i'll step through the other projects... might try 2.6.32-rc8 from the msm tree... just for fun of course :angel:
tom3q said:
After applying each change, it should be verified that the kernel at least compiles, although it would be even better if you could get the kernel without any (or almost any) modification to boot to some state, e.g. showing something on the console (any chance to get access to serial console on your device?), and then check if it still boots after applying each next change.
Click to expand...
Click to collapse
Nice point... i like these hardware hacks and asked about testpoints for UART3 on the Pro mainboard a few days ago.
It's mentioned and so far i got it, initialized in stock kernel as well. Unfortunately no-one seems to know anything about these testpoints.
Anyway i don't want to spam this thread, so thanks for your attention
Regards,
scholbert
hy
scuse my ignorance
but
HOW do you compile an kernel ?
and maybe someone can explain what is the difference between bring-up and port
scholbert said:
Hey tom3q,
thanks a lot for leaving some useful statements here!
I digged for some base kernel for a while.
Found a chromium msm kernel 2.6.32.9 at codeaurora (i know this is not Android).
Anyway, the diff against stock was ~30MB... quite too much.
Like i assumed many basic things are missing as well, so too much to start from.
I guess, i'll step through the other projects... might try 2.6.32-rc8 from the msm tree... just for fun of course :angel:
Nice point... i like these hardware hacks and asked about testpoints for UART3 on the Pro mainboard a few days ago.
It's mentioned and so far i got it, initialized in stock kernel as well. Unfortunately no-one seems to know anything about these testpoints.
Anyway i don't want to spam this thread, so thanks for your attention
Regards,
scholbert
Click to expand...
Click to collapse
FXP said:
hy
scuse my ignorance
but
HOW do you compile an kernel ?
and maybe someone can explain what is the difference between bring-up and port
Click to expand...
Click to collapse
I would say that porting is moving and correcting sources from 2.6.32 kernel in our case into 3.x. And bring up is writing particular drivers from scratch?
Sent from my Nexus 7
voyteckst said:
I would say that porting is moving and correcting sources from 2.6.32 kernel in our case into 3.x. And bring up is writing particular drivers from scratch?
Sent from my Nexus 7
Click to expand...
Click to collapse
ok
nice explanation
look on first page
diff is 5mb on proper tag
pushed on github
nice to see so many developers trying to help
FXP said:
diff is 5mb on proper tag
pushed on github
Click to expand...
Click to collapse
Sorry to throw my 3 cents again, but seeing the repository on github, I'd recommend you to use some time to go through Git Immersion. Even if it takes some time, it will simplify your further work, as Git used properly can really make many things easier.
Otherwise, the diff itself looks mostly fine as a starting point, although some of the differences can be probably eliminated.
tom3q said:
Sorry to throw my 3 cents again, but seeing the repository on github, I'd recommend you to use some time to go through Git Immersion. Even if it takes some time, it will simplify your further work, as Git used properly can really make many things easier.
Otherwise, the diff itself looks mostly fine as a starting point, although some of the differences can be probably eliminated.
Click to expand...
Click to collapse
sony added too many changes to be usefull
since there are several api changes on 32->3.x diff is no good
we have to start from clean board-7x30 and populate devices porting drivers 1 by 1
we have to try an device bringup based on sony changes

Categories

Resources