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

Root [Dev-Only] CM10 status

Question: Does this boot? Obviously, I can't test... I expect that nothing is probably working. But just wondering if it actually boots.
When I got it to build it said bad file in CWM, I'm sure I can play around with the updater script but haven't messed with it yet. Just got it to build a few hours ago and got sidetracked. If you happen to know what is making it say the zip is bad let me know and I'll try it.
 
Upvote 0
When I got it to build it said bad file in CWM, I'm sure I can play around with the updater script but haven't messed with it yet. Just got it to build a few hours ago and got sidetracked. If you happen to know what is making it say the zip is bad let me know and I'll try it.

That doesn't sound right. I wonder if it's just a bad copy on your sd card. Try recopying?
 
Upvote 0
Ok, so I threw the zip in android kitchen to see if it was the kernel and this is what I got. Editing the update binary just threw the same argument error.



Code:
Working folder found
od: boot.img: Permission denied

Android 'magic' header not found at start of boot.img
Checking if it exists elsewhere ...
od: boot.img: Permission denied
Warning: Android header not found in boot.img (unsupported format)

od: boot.img: Permission denied
Error: kernel offset (page size) not found in boot.img!

Press Enter to continue
EDIT: So I looked at CM10 and CM9 in 7zip and under Host OS, the boot.img in CM9 is FAT and CM10 is Unix, dunno if that helps.
 
Upvote 0
Question: Does this boot? Obviously, I can't test... I expect that nothing is probably working. But just wondering if it actually boots.

I got to about the end of the build and it threw some random error at me. Seeing how BSydz got a build it must be a bad sync or something. I'm going to nuke and try again.
 
Upvote 0
I got to about the end of the build and it threw some random error at me. Seeing how BSydz got a build it must be a bad sync or something. I'm going to nuke and try again.
I had to edit some files to get it to build, it didn't just build. I think I had to comment out something in, I think, 2 files in libhwcomposer cause it is no where in the rest of the code, but I can't remember now what else I had to do. I am still fighting with the HDMI right now. I'm fighting with qcom_ui.h error: 'external_display_type' does not name a type, but that code is how it came and built, and is not even edited, I think it is because I added external_display, cause I was getting that error with external_display but managed to work it out. If I build with -j16 it is the only error I have left that I can see. When I hit an error, I do that to see if another error is gonna pop up, so I can fix it while I'm editing. Apparently, I have been at this too long tonight, I gotta go to bed. Just did -j24, 4 times, to see if there would be another error and that is the only error I am getting. Maybe I just need some rest. Good luck guys.
 
Upvote 0
OK so it was the last error, kinda. :D I pulled an all nighter and figured it out, I think I know how to fix this but just incase I figure I'll post it. This is with GPS and HDMI included. Now I am running into this:
Code:
target SharedLib: libcamera_client (out/target/product/triumph/obj/SHARED_LIBRARIES/libcamera_client_intermediates/LINKED/libcamera_client.so)
target Executable: hdmid (out/target/product/triumph/obj/EXECUTABLES/hdmid_intermediates/LINKED/hdmid)
/home/phenom/CM10-3/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/../../../../arm-linux-androideabi/bin/ld: out/target/product/triumph/obj/EXECUTABLES/hdmid_intermediates/HDMIDaemon.o: in function android::HDMIDaemon::setResolution(int):frameworks/av/cmds/hdmid/HDMIDaemon.cpp:552: error: undefined reference to 'android::SurfaceComposerClient::enableHDMIOutput(int)'
/home/phenom/CM10-3/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/../../../../arm-linux-androideabi/bin/ld: out/target/product/triumph/obj/EXECUTABLES/hdmid_intermediates/HDMIDaemon.o: in function android::HDMIDaemon::processFrameworkCommand():frameworks/av/cmds/hdmid/HDMIDaemon.cpp:583: error: undefined reference to 'android::SurfaceComposerClient::enableHDMIOutput(int)'
/home/phenom/CM10-3/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/../../../../arm-linux-androideabi/bin/ld: out/target/product/triumph/obj/EXECUTABLES/hdmid_intermediates/HDMIDaemon.o: in function android::HDMIDaemon::processFrameworkCommand():frameworks/av/cmds/hdmid/HDMIDaemon.cpp:590: error: undefined reference to 'android::SurfaceComposerClient::setActionSafeWidthRatio(float)'
/home/phenom/CM10-3/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/../../../../arm-linux-androideabi/bin/ld: out/target/product/triumph/obj/EXECUTABLES/hdmid_intermediates/HDMIDaemon.o: in function android::HDMIDaemon::processFrameworkCommand():frameworks/av/cmds/hdmid/HDMIDaemon.cpp:596: error: undefined reference to 'android::SurfaceComposerClient::setActionSafeHeightRatio(float)'
collect2: ld returned 1 exit status
make: *** [out/target/product/triumph/obj/EXECUTABLES/hdmid_intermediates/LINKED/hdmid] Error 1
make: *** Waiting for unfinished jobs....
target Executable: bootanimation (out/target/product/triumph/obj/EXECUTABLES/bootanimation_intermediates/LINKED/bootanimation)
target SharedLib: libjni_mosaic (out/target/product/triumph/obj/SHARED_LIBRARIES/libjni_mosaic_intermediates/LINKED/libjni_mosaic.so)
target SharedLib: libhwui (out/target/product/triumph/obj/SHARED_LIBRARIES/libhwui_intermediates/LINKED/libhwui.so)
 
Upvote 0
It turns out the upstream updates broke the build. I updated a header file again. resync and it should build all the way now.

Thanks, but I'm still stuck on hwcomposer. I got a prebuilt from jmztaylor, thank god. I'm going to throw that in the build.

According to jmz, Steve broke all 7x30 devices by merging in all his commits because he just can.
 
Upvote 0
Thanks, but I'm still stuck on hwcomposer. I got a prebuilt from jmztaylor, thank god. I'm going to throw that in the build.

According to jmz, Steve broke all 7x30 devices by merging in all his commits because he just can.
If it is the same error I had just use these edits. That is what I was talking about commenting out, in my post above.

hardware/qcom/display/libhwcomposer/hwc.cpp
Code:
//#ifndef NO_HW_VSYNC
//        case HWC_EVENT_VSYNC:
//            if(ioctl(m->framebuffer->fd, MSMFB_OVERLAY_VSYNC_CTRL, &value) < 0)
//                ret = -errno;
//
//            if(ctx->mExtDisplay->getExternalDisplay()) {
//                ret = ctx->mExtDisplay->enableHDMIVsync(value);
//            }
//           break;
//#endif
hardware/qcom/display/libhwcomposer/hwc_external.cpp
Code:
//#ifndef NO_HW_VSYNC
//        case HWC_EVENT_VSYNC:
//            if(ioctl(m->framebuffer->fd, MSMFB_OVERLAY_VSYNC_CTRL, &value) < 0)
//                ret = -errno;
//
//            if(ctx->mExtDisplay->getExternalDisplay()) {
//                ret = ctx->mExtDisplay->enableHDMIVsync(value);
//            }
//           break;
//#endif
 
Upvote 0
Did you update the device files? I just did a build as is and it built fine.

Well, build server is down and I don't have a backup build on my local so I'm not able to make new changes.

Let's see when I get it back.

@BSydz, I think that was fixed due to a recent commit by mantera defining the TARGET_NO_HW_VSYNC := true
 
Upvote 0
If it is the same error I had just use these edits. That is what I was talking about commenting out, in my post above.

hardware/qcom/display/libhwcomposer/hwc.cpp
Code:
//#ifndef NO_HW_VSYNC
//        case HWC_EVENT_VSYNC:
//            if(ioctl(m->framebuffer->fd, MSMFB_OVERLAY_VSYNC_CTRL, &value) < 0)
//                ret = -errno;
//
//            if(ctx->mExtDisplay->getExternalDisplay()) {
//                ret = ctx->mExtDisplay->enableHDMIVsync(value);
//            }
//           break;
//#endif
hardware/qcom/display/libhwcomposer/hwc_external.cpp
Code:
//#ifndef NO_HW_VSYNC
//        case HWC_EVENT_VSYNC:
//            if(ioctl(m->framebuffer->fd, MSMFB_OVERLAY_VSYNC_CTRL, &value) < 0)
//                ret = -errno;
//
//            if(ctx->mExtDisplay->getExternalDisplay()) {
//                ret = ctx->mExtDisplay->enableHDMIVsync(value);
//            }
//           break;
//#endif

Or if you prefer to do what BSydz says, just do this commit:

https://github.com/mantera/android_...mmit/1f11dc63d4386d817523eab95ac391278996e159

I reverted it in the commits that I pushed up because it's not needed but this should work also. However, I think we do have hardware vsync capability in the mt so that's why I didn't want to just disable it.
 
Upvote 0
Upvote 0
Well, build server is down and I don't have a backup build on my local so I'm not able to make new changes.

Let's see when I get it back.

@BSydz, I think that was broken due to a recent commit by mantera defining the TARGET_NO_HW_VSYNC := true

No, it was broken before that. My original fix was to set it to true so that the build would skip that section of code. Once I figured out which header file contained the define that was causing the hwcomposer variable to be undefined, I reverted it back out. I left it in there before pushing just so I had something to remind me that it was there.
 
Upvote 0
No, it was broken before that. My original fix was to set it to true so that the build would skip that section of code. Once I figured out which header file contained the define that was causing the hwcomposer variable to be undefined, I rebrokenverted it back out. I left it in there before pushing just so I had something to remind me that it was there.
I accidentally said broken, I meant to either say fixed or it was broken before.

EDIT: Got a build, thanks to mantera. Let's see how this baby goes.

format() expects 5 args, got 4
E:Error in /tmp/sideload/package.zip
(Status 7)


So obviously it's asking for 5 args, I don't necessarily know how to change the args. But I can change it after the zip.
 
Upvote 0
Okay, got it to flash, yet no go. It goes past M logo and stops at a black screen. Adb recognizes the device but shows no logcat. Just stops as soon as it starts.

Seeing how there was no errors during the build, it's hard to stay what exactly the problem is, but it's going to be hard without a logcat.

BUT, we are moving closer.

Try a KMSG?
 
Upvote 0
I accidentally said broken, I meant to either say fixed or it was broken before.

EDIT: Got a build, thanks to mantera. Let's see how this baby goes.

format() expects 5 args, got 4
E:Error in /tmp/sideload/package.zip
(Status 7)


So obviously it's asking for 5 args, I don't necessarily know how to change the args. But I can change it after the zip.

Ok, I think I got the zip file fixed. resync and try again and see if the new zip file will flash and boot.
 
Upvote 0
Ok, I think I got the zip file fixed. resync and try again and see if the new zip file will flash and boot.
It flashes fine but it is a blank backlit screen. Which version kernel is this? Also Is this kernel in your git? Just want to try some stuff with the kernel, I want to try to build it with the system. I have an ICS kernel I was working on, maybe I can compare the 2 and see if anything is missing. Thanks for your work, you are a champ.

EDIT: If it is the 2.3.65 kernel then I know why it wont boot.
 
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