• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root CM10 progress Update Thread

Anyone looking to get into building or modding, I would suggest to get to know your phone inside and out. And please search before you post questions, as this is the best way to learn instead of being told the answer. I am "always" available to help out as are others in this forum. Together we can make some good "stuff" happen for our device.

Stay groovy

Sorry about that. I was getting excessively frustrated about it. This is a whole new beast for me and I'd also figured a thread on it might help others too. I do greatly appreciate the help though.
 
Upvote 0
I will answer any question asked of me if I know the answer. I was just stating the above because its a better way to "learn" new stuff. It seems to me that I retain the info better when I have all the context with it as apposed to just the answer. I was making a suggestion, I wasn't griping.
Stay groovy all
 
Upvote 0
4 builds yesterday. None booted. I feel like I'm chasing my tail. Lol. I'm still at it tho.

device tree : https://github.com/totlth/android_device_zte_elden.git

I know I kept saying I would get it up, but I kept forgetting. It's there now tho, in case anyone is interested.

Can you post the output of logcat? I can probably help in getting it booting. Does it make it to the boot animation at least?

EDIT: Just looked at your device tree... Is it current? Because you're not pulling any proprietary blobs off the stock ROM. Have a look at my device tree. My device is also a MSM8960, so there will be similarities... http://github.com/ikarosdev (either android_device_lge_ms870 or l1m)
 
Upvote 0
Can you post the output of logcat? I can probably help in getting it booting. Does it make it to the boot animation at least?

EDIT: Just looked at your device tree... Is it current? Because you're not pulling any proprietary blobs off the stock ROM. Have a look at my device tree. My device is also a MSM8960, so there will be similarities... http://github.com/ikarosdev (either android_device_lge_ms870 or l1m)

Don't know if I have the proprietary files right , but i have pulled them and I was gonna upload it to repo just havent yet.

No , I do not get to bootanimation. After the splash and android guy I getr a black screen.
So I cant get a logcat. adb doesnt get loaded/started is what I have assumed.

Edit: I have been building kernel inline with cm and it builds fine, and I have the kernel source in repo as well

Edit 2: Every time I try to add the includes via the device tree I get build errors. Which is the reason I started building kernel inline and also cuz it builds the modules
I have noticed that alot of folks put their blobs on the device.mk , does that make a difference. and also the adreno files are supposed to be for jb is why i have them on the device.mk, they are not from stock.
 
  • Like
Reactions: DjSidEShoW
Upvote 0
Don't know if I have the proprietary files right , but i have pulled them and I was gonna upload it to repo just havent yet.

No , I do not get to bootanimation. After the splash and android guy I getr a black screen.
So I cant get a logcat. adb doesnt get loaded/started is what I have assumed.


What branch of CM are you building? When you pulled the source, did you use this command to initialize the pull:


Code:
repo init -u git://github.com/CyanogenMod/android.git -b [B]jellybean[/B]

If so, I checked your Boardconfig.mk. I believe you'll want to change this define in your kernel section:

Code:
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x01300000

to:

Code:
BOARD_FORCE_RAMDISK_ADDRESS := 0x01300000

The define you're currently using is for CM10.1 (Android 4.2). If you're not making it to the CM boot ani, that means you're not clearing the low-level boot process. I recommend changing what I suggested above, and removing some stuff out of ramdisk. CM has some of its own inits, but you can supplant your own if you find some of your hardware doesn't work (e.g. init.avid.rc or something like that). You'll definitely need your own ueventd to set the permissions for your device specific hardware.
 
  • Like
Reactions: DjSidEShoW
Upvote 0
What branch of CM are you building? When you pulled the source, did you use this command to initialize the pull:[/SIZE]

Code:
repo init -u git://github.com/CyanogenMod/android.git -b [B]jellybean[/B]

If so, I checked your Boardconfig.mk. I believe you'll want to change this define in your kernel section:

Code:
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x01300000

to:

Code:
BOARD_FORCE_RAMDISK_ADDRESS := 0x01300000

The define you're currently using is for CM10.1 (Android 4.2). If you're not making it to the CM boot ani, that means you're not clearing the low-level boot process. I recommend changing what I suggested above, and removing some stuff out of ramdisk. CM has some of its own inits, but you can supplant your own if you find some of your hardware doesn't work (e.g. init.avid.rc or something like that). You'll definitely need your own ueventd to set the permissions for your device specific hardware.

I'm working on cm10.1 , and thats why I used that arg, cuz the other is deprecated after android 4.1

Any suggestion on which inits to remove. I wasn't sure is why I put em all except goldfish. I had an inclining about the qcom-core and qcom-main sh's but again I wasn't sure.

And thank you for your help and input, it's much appreciated.
 
  • Like
Reactions: DjSidEShoW
Upvote 0
I'm working on cm10.1 , and thats why I used that arg, cuz the other is deprecated after android 4.1

Any suggestion on which inits to remove. I wasn't sure is why I put em all except goldfish. I had an inclining about the qcom-core and qcom-main sh's but again I wasn't sure.

And thank you for your help and input, it's much appreciated.

Okay, that makes sense now. I'll have a look at your stock ramdisk. I'll fork your device tree on Github, so you can have any of the changes I make (I'll send a pull request, and you can merge my changes if you like them).

To answer your edit above, some devs like to include all the proprietary prebuilts in their device.mk, but I like having them separated (i.e. proprietary-files.txt, extract-files, and setup-makefiles scripts). This gives a bit of modularity. if I find I have a missing blob, it's easier to add it once to proprietary-files.txt. Furthermore, it makes it more accessible for others to build too. They simple run the scripts and build. However, this is a stylistic choice for devs; both ways work the same way, and will end up with the same results.

I'm assuming you guys don't have a locked bootloader on your devices?

Oh, and BTW, does somebody have a stock system and boot image? I'd like to tear them apart to see what I can find.

EDIT: BTW, you should be able to reuse the prebuilt EGL/Adreno libs from the stock ROM.
 
Upvote 0
Okay, that makes sense now. I'll have a look at your stock ramdisk. I'll fork your device tree on Github, so you can have any of the changes I make (I'll send a pull request, and you can merge my changes if you like them).

I'm fairly new to the repo thing. Is there anything I need to do for the pull request.

As far as the boot.img I can upload the stock one, but the ramdisk folder in repo is basically it minus for the goldfish
 
  • Like
Reactions: DjSidEShoW
Upvote 0
Hey, I just have another couple commits, and then I think I'll have something that might start to boot.

When I'm ready, you can simply download my device tree at its current state and replace it with your tree in source to test it out. If it works, I'll send you a pull request on Github and you can merge it.
 
Upvote 0
Okay, I believe it should be good to go now. Try seeing if that will get it to at least make it to the CM boot animation.

You can find my (current) replacement device tree here: https://github.com/ikarosdev/android_device_zte_elden/archive/master.zip

Make sure to clean out the whole source (make clobber), and run the extract-files script again. Any leftover stuff from previous builds will definitely cause booting to fail if not stop the build process.

If the thing won't build, post the error here, and I'll correct it and update my device tree. If you get a semi-booting build (or fully booting), I'll go ahead and send up a pull request. :)
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones