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

Root Porting ClockWorkMod to the Kyocera Rise

@darkside
The info you provided should be seperated from this thread. It relates to rooting not porting.
Though your info was informative there are documented tutorials all ready for this device.
 
@dtalley
You are correct it was a typo i made 512kb is correct.
Now though you were able to have the kernel compiled were you able to have it run on the device?
 
This is my thought for the process that I am trying to combine with the other info you guys provided...

(mmcblk0) is the boot image that starts booting the device. The (mmcblk0p1) and (mmcblk0p2) are the boot partitions.

(mmcblk0p3) is the protected partition which resets the device if boot is not correct.

(mmcblk0p4) is the extended partition. This block is used to create a chain of extended and logical partitions. This creates a series of loops which checks the integrity of the device. If the loops are interrupted it will revert to the protected block (mmcblk0p3) and reset the device for the correct booting process.

The extended partition (mmcblk0p04) is used as a link for all partitions. Sometime during the boot process the extended partition is empty.

If we could find the point were the extended block becomes empty, we may be able to insert code to manipulate the bootloader aka unlock the bootloader.

This is the same process done on other devices. The way it works is, as info is routed through the loops they are temporarily placed in the extended partitions. There is a point in all devices, which use the loops, where the extended partition becomes empty. Though each device is different if you find the empty point and insert the correct code or exploit, the bootloader should unlock. This is why in the dev/block folder you see some files called loop1+.

Now correct me if I am wrong but I think combining all the efforts posted here can potentially get us the desired results.

I have two rises, one stuck in a bootloop and one rooted working perfectly fine. I have another device to use as a main phone. So I am willing to take a second brick since I already have one, in the name of open source. In case anyone is afraid to damage their own phone.

TD378
 
I wouldn't suggest doing something that could end up bricking your phone because if we either get kexec or 2nd-init to work we wouldn't ever have to take that risk. As for the kernel I still have no way of booting it but it does compile. Because of that I can start looking more at compiling kexec as a module. If anybody is interested I have uploaded the zImage and modules http://dev.dtalley11.com/dtalley11/rise/
 
I got to load it on the device well sort-of...

Can you tell answer the following...
1. Can you upload the kexec-loader file?
2. Can you verify your kexec version by typing "kexec -v"
3. Does your kernel have atags?

When i tried to install it i got the error kexec-loader failed.

This may mean the kexec-loader or kexec.c may need to be adjusted.

The atags will allow installation of the image without command line args.

This way users wont have to specify serial no, mtp, etc.
 
So, let me explain, the kernel does not have kexec working yet (i get that error which make goes and errors about), I have been working with 2nd-init mostly. But if you found a way to load my kernel, we don't need to mess with work-arounds.

For kexec tools I am pretty sure you can just use any, I don't think they are device specific but they do require the kernel to support kexec. I'm sure you already know this, but just in case, to make sure you are running my kernel, if you pop open terminal emulate or adb you can run the command 'cat /proc/kmsg > /sdcard/kmsg.txt' without the 's and look to the 2nd line in the file. That line should say something like [HIGH][ 0.000000] Linux version 3.0.8-perf (dtalley11@agerthorn) (gcc version 4.4.3 (GCC) ) #1 PREEMPT Fri Aug 25 11:04:03 EST 2013[/HIGH] (idk what it is exactly cause I was never able to boot the kernel, with a locked bootloader and all). If this is the case, then you have done it (and it means the kernel source actually compiles into a booting kernel)!

If you have a way of loading entire boot images, here is a recovery I compiled:
http://downloads.codefi.re/dtalley11/TWRP-C5155.img
But again, i don't know if it boots, and it may brick you phones, so I would make sure you have a temporary way to boot that
 
I have been trying to load it from the sdcard. I realized the vold.fstab has the sdcard shut off during boot. I will try to load it from internal later.

If i can load it from intenel then we may be on the correct route. I can create a bat file to do all the work.

Right now everything is being done manually from the phone.
 
I have been trying to load it from the sdcard. I realized the vold.fstab has the sdcard shut off during boot. I will try to load it from internal later.

If i can load it from intenel then we may be on the correct route. I can create a bat file to do all the work.

Right now everything is being done manually from the phone.

You can get around vold remounting the sdcard a number of ways, you gotta be creative about it. if you take a loot at all the .rc files on / of your phone and follow them till you find a .sh file being ran, you can put in one of those scripts something to mount the /mmcblk0p1 as say /sdcard1. You might have to remount / (mount -wo remount rootfs / should do the trick).

You can use those script to hijack the boot process and stop say zygote and bootanimation (I think that will get you to a point where nothing is writing to the frame buffer) and run, say a recovery binary... but that isn't what we need for custom roms. Here is a list of services that the init system starts in the /*.rc files (ignore goldfish, it's not used)

services.list - Pastebin.com
You can stop all of these by using the command stop and the service name (stop zygote && stop bootanimation)
Here is what I got for 2nd-init just in case anybody is interested:

https://gist.github.com/dtalley11/6347079

IT still doesn't work right, I've been smashing my head on this issue for a while. For clues for why it isn't booting, you can cat /proc/last_kmsg > /sdcard/last_kmsg.txt and see if you can do anything with it, or help point out the exact problem.

EDIT: Does anybody know if there are there any button combos for going into bootloader mode? (adb reboot bootloader or just reboot bootloader in terminal does it but i'm wondering just in case)
 
you got it into fastboot? i havent been able to, even with adb

Yes! well, no. I can use the fastboot utility with the phone while it is in bootloader mode (adb reboot bootloader . In bootloader mode it just shows the bootlogo and doesn't boot to anything else unless you tell it to with fastboot)

Also, I tried some hydra kernels which the bootloader just ran them in boot and recovery partitions. (the recovery doesn't work, but the kernel boots the phone). This means if we ever get kexec to work on either phone, we can use it on both phones
 
You cannot do anything because there is a specified time where the device say "A hell No you can't do that" then shuts some features off.

Trying to track down the file which triggers this response and change its opinion on making changes.
 
IT still doesn't work right, I've been smashing my head on this issue for a while. For clues for why it isn't booting, you can cat /proc/last_kmsg > /sdcard/last_kmsg.txt and see if you can do anything with it, or help point out the exact problem

Your on the right track just keep in mind embedded is in FW itself not phone otherwise you will be Smart equivalent where he booted into prior forementioned kicking in and booting him out
 
Awesome! but plugging your phone into a computer with the sdk everytime you want to boot can't be the most pleasant way to boot. But with this we can look into kexec-mod
 
So, we can almost nearly boot into third party firmware?

Well, before I bricked my Rise, I was at a point where I was flashing my CM9 builds... but the process to get there is hard to explain and very impractical, I am waiting to get another Rise before I get back to working on workarounds
 
Well, before I bricked my Rise, I was at a point where I was flashing my CM9 builds... but the process to get there is hard to explain and very impractical, I am waiting to get another Rise before I get back to working on workarounds

I just bought a sprint version of the rise. I'll let you know when it gets here. We may need to swap the VM bootloader with the sprint bootloader, unless I just have shitty rises that wont go into the bootloader. Have you got your VM rise yet?
 
Curious if sprint would allow u to unlock boot loader since its there brand, they are the ones that got kyocera supposedly by shorthairs & have read that sprint is pretty good about rooted phones also read of a member from here or another site maybe xda that brought in a rooted phone ( not rise) just for test sake put a backup on his computer brought in a bricked phone & after some talk they restored the phone to non rooted factory for this person then he of course had to redo the who root process again & unlock to restore his backup but, you guys very well may have better corroperation with sprint
 
I just bought a sprint version of the rise. I'll let you know when it gets here. We may need to swap the VM bootloader with the sprint bootloader, unless I just have shitty rises that wont go into the bootloader. Have you got your VM rise yet?

Okay, I got the Sprint Rise. First thing I did after rooting it? "reboot bootloader" from Terminal Emulator. BAM! Right into the bootloader. So I can confirm that the Sprint Rise DOES go into bootloader, and my VM Rise DOESNT.

Next test it to take the bootloader from the Sprint Rise and put it onto my backup VM Rise. If that works, awesome. If not, well then I need a new backup. -_-
 
Okay, I got the Sprint Rise. First thing I did after rooting it? "reboot bootloader" from Terminal Emulator. BAM! Right into the bootloader. So I can confirm that the Sprint Rise DOES go into bootloader, and my VM Rise DOESNT.

Next test it to take the bootloader from the Sprint Rise and put it onto my backup VM Rise. If that works, awesome. If not, well then I need a new backup. -_-

Nice, I can also confirm that the Virgin-rise does not have adb reboot bootloader, may I ask what firmware you are using? I know I was on the old one with my sprint rise. We still have one issue... we may be able to get Sprint phones running the VM firmware, but how do we reverse that? (if you use dd, check your MD5s, if it worked, you should be able to match the MD5 of the image you flashed and the block partition you flashed it to)

Also if you are interested in testing and fixing my CM9 device tree, you can find all the sources here: https://github.com/rise-recon (rise-recon on github)

Also, hit me up with your github account if you have one and I can add you to the team. Reheromax TD and myself like to collaborate via irc. We have been on the channel #rise-recon on the freenode irc network for a bit now. If you have any free time we'd enjoy it if you hoped on so we could work in real time
 
Let me find my github account, I haven't used in some time. Also, never used IRC, so I'll have to get my head wrapped around that too, but I'll hop in when I have time.
 
Okay, I got the Sprint Rise. First thing I did after rooting it? "reboot bootloader" from Terminal Emulator. BAM! Right into the bootloader. So I can confirm that the Sprint Rise DOES go into bootloader, and my VM Rise DOESNT.

Next test it to take the bootloader from the Sprint Rise and put it onto my backup VM Rise. If that works, awesome. If not, well then I need a new backup. -_-

Can you upload the img of the bootloader and recovery of your Sprint Rise? I wanna try it also on my back up Rise
 
Back
Top Bottom