[HOWTO] Overclocking your HTC Legend

greenolive

Senior Member
Aug 19, 2010
145
59
0
I truly am really sorry to say that me, my dumb self and that weird guy in the corner with ease can reach 806. It seemed stable at least. No problems booting, no rebooting and I played angry birds for about 15 minutes without any hiccups. Tough my, my dumb self and that weird guy in the corner feels safer going down to 678 for daily use.

Strange how this can differ this much. Perhaps it's batch-specific.
My phone and I are both in Sweden so maybe the cold weather helps :)
 

fatthumb

Senior Member
May 26, 2010
282
19
0
Singapore
I suppose. I'd rather go to 864 though. It kinda bugs me to know that my friends, who haven't rooted and never will, might have legends that can OC properly.

Swyped from my HTC Legend
I can understand what you mean. Some people are happy with a smartphone that just works, and don't bother to try maximise the potential of their device. I have 2 colleagues who are like that, I'm thinking to swap my Legend with theirs to try out, haha.

Sent from my rooted Legend using XDA App.
CM6.1 Nightly build 25
 

fatthumb

Senior Member
May 26, 2010
282
19
0
Singapore
I suppose. I'd rather go to 864 though. It kinda bugs me to know that my friends, who haven't rooted and never will, might have legends that can OC properly.

Swyped from my HTC Legend
Hi GrammarFreak,

I suppose with v4.0 now we can go lower than 768 MHz (i.e. 710, 729, 748)? Probably will be useful for people like me who live in the tropic and have a lousy CPU :eek: Do you think it will works like that:confused:

I still need to do my part on the reading though :)
 

TheGrammarFreak

Senior Member
Jul 29, 2010
2,820
678
0
twitter.com
Hi GrammarFreak,

I suppose with v4.0 now we can go lower than 768 MHz (i.e. 710, 729, 748)? Probably will be useful for people like me who live in the tropic and have a lousy CPU :eek: Do you think it will works like that:confused:

I still need to do my part on the reading though :)
A very good set of questions my friend. v3.5 works absolutely fine and is easier to set up, so I'd stick with that one. And no, you couldn;t go lower than 768. You could make a request in the OC thread. :p

The way the OC works:
There's a base clock speed on all CPUs, and in our case it's 19200KHz, so all OCs (when measure in KHz) need to be divisible by that number. I'm sure you already know this though. If you want to go lower than 768MHz then you'll need to find a frequency that is divisible by 19.2MHz There might be one, but none of the numbers you suggested work. Sorry.

So, the v4.0 kernel won't allow what you're asking, but dumfuq might put that in his kernels if you ask nicely. :D You could get 748.8, 729.6, 710.4 (the fact these numbers are so close suggests to me that you know what you're talking about, but I'll put 'em here anyway.) or 691.2.
 

fatthumb

Senior Member
May 26, 2010
282
19
0
Singapore
A very good set of questions my friend. v3.5 works absolutely fine and is easier to set up, so I'd stick with that one. And no, you couldn;t go lower than 768. You could make a request in the OC thread. :p

The way the OC works:
There's a base clock speed on all CPUs, and in our case it's 19200KHz, so all OCs (when measure in KHz) need to be divisible by that number. I'm sure you already know this though. If you want to go lower than 768MHz then you'll need to find a frequency that is divisible by 19.2MHz There might be one, but none of the numbers you suggested work. Sorry.

So, the v4.0 kernel won't allow what you're asking, but dumfuq might put that in his kernels if you ask nicely. :D You could get 748.8, 729.6, 710.4 (the fact these numbers are so close suggests to me that you know what you're talking about, but I'll put 'em here anyway.) or 691.2.
Yes regarding the frequency actually I had some knowledge from overclocking good old Celeron 300 MHz by increasing the multiplier. Too bad for me, this things (kernel, etc) are out of my league (hence I need further reading).

I did some spreadsheet with 19200 as starting "FSB" and multiply it with increment of 1 from 15 to 45. I found out that those frequencies that dumfuq included in v3.5 are actually quite similar (i.e. 768000 - 672000, 825600 - 729600, etc). It kinda bugs me if 768 and 825 MHz could works why 672 and 729 MHz can't?

I'm not very good with words so forgive my new-b explanation :eek: What do you think?
 

TheGrammarFreak

Senior Member
Jul 29, 2010
2,820
678
0
twitter.com
Yes regarding the frequency actually I had some knowledge from overclocking good old Celeron 300 MHz by increasing the multiplier. Too bad for me, this things (kernel, etc) are out of my league (hence I need further reading).

I did some spreadsheet with 19200 as starting "FSB" and multiply it with increment of 1 from 15 to 45. I found out that those frequencies that dumfuq included in v3.5 are actually quite similar (i.e. 768000 - 672000, 825600 - 729600, etc). It kinda bugs me if 768 and 825 MHz could works why 672 and 729 MHz can't?

I'm not very good with words so forgive my new-b explanation :eek: What do you think?
I don't see a reason why it can't (in future kernels), but I may be very wrong. I'm no expert on overclocking, I just bothered to write a guide. :D From what I know those frequencies could be made to work, but you'll need to ask dumfuq to make a kernel that allows those frequencies. The kernel essentially says: "Right then CPU, you're allowed these frequency steppings: lots of numbers here" V4 doesn't include the frequencies you want, but dumfuq might make one that does.
 

BlaY0

Retired Recognized Developer
Sep 15, 2007
1,553
566
0
Medvode
I did some spreadsheet with 19200 as starting "FSB" and multiply it with increment of 1 from 15 to 45. I found out that those frequencies that dumfuq included in v3.5 are actually quite similar (i.e. 768000 - 672000, 825600 - 729600, etc). It kinda bugs me if 768 and 825 MHz could works why 672 and 729 MHz can't?
Have you read this post?
 

fatthumb

Senior Member
May 26, 2010
282
19
0
Singapore
I don't see a reason why it can't (in future kernels), but I may be very wrong. I'm no expert on overclocking, I just bothered to write a guide. :D From what I know those frequencies could be made to work, but you'll need to ask dumfuq to make a kernel that allows those frequencies. The kernel essentially says: "Right then CPU, you're allowed these frequency steppings: lots of numbers here" V4 doesn't include the frequencies you want, but dumfuq might make one that does.
Hmm, if you look at dumfuq's thread some ppl actually tried higher frequencies than those originally included in v4 (>864 MHz). Maybe I'll try to ask those guys :D

Thanks for the help! Maybe you can include some more details for v4 in your guide here for ppl like me :p

edit: to Blay0.. I'm reading it now. Thanks for the link :)
 

BlaY0

Retired Recognized Developer
Sep 15, 2007
1,553
566
0
Medvode
Hey Grammar,

I have just read your HOWTO and have come to "boot loop". Is it really boot loop or just framework restarting? Would you care to test this one? Because if it is just framework restarting, then there's no need to take the battery out. Lemme know if you're up for some testing...
 

TheGrammarFreak

Senior Member
Jul 29, 2010
2,820
678
0
twitter.com
Hey Grammar,

I have just read your HOWTO and have come to "boot loop". Is it really boot loop or just framework restarting? Would you care to test this one? Because if it is just framework restarting, then there's no need to take the battery out. Lemme know if you're up for some testing...
I'll install a high frequency kernel and 'ave a look-see. :D

EDIT, no I won't. I has V4, I'll change 00banner again. Lol

EDIT 2: Ahh, crap. The thing still boots, then it just freezes. It's most likely to be a framework restart, I'll try again with the 3.5 kernel...

EDIT 3: WTF?! That damn phone still boots. SetCPU tells me that it's running 245/844MHz interactive, then the phone freezes up. Stupid thing

EDIT 4: I can't make my phone "bootloop" Which is odd, it used to do this on anything above 806... I'll try setting the minimum frequency, see what that does. Also, that link you gave is a really interesting read. Cheers. :D

EDIT 5: Yeah, more edits. It won't "bootloop" I have no idea why. I just set it to 844 min, it still booted. It just froze once setCPU got root permissions is all...
 
Last edited:

BlaY0

Retired Recognized Developer
Sep 15, 2007
1,553
566
0
Medvode
Either way hook it up with your PC and try adb shell. If you can get in, there's no need to take the battery out, just issue adb reboot recovery. It's the same with "boot loop", no need for battery removal... but if you encounter proc freeze or kernel panic, you will have to remove it.

EDIT: There's no need to change init.d script every time you need to change that speed. You are testing right, so you have your gizmo connected to your PC anywayz. So set that top speed to some reasonable value like 768, reboot and then rise that speed via adb. When you get a boot loop set it back to previous value and you're set. But be careful if you are using SetCPU... SetCPU itself does change those values in /sys/devices/system/cpu/cpu0/cpufreq too so it will most probably override your setting the next time it switches from one profile to another.

EDIT 2: While testing it is wise to stop SetCPU or even unistall it for that testing period. You can set all the parameters in /sys/devices/system/cpu/cpu0/cpufreq manually using echo via adb...
 
Last edited:

TheGrammarFreak

Senior Member
Jul 29, 2010
2,820
678
0
twitter.com
Either way hook it up with your PC and try adb shell. If you can get in, there's no need to take the battery out, just issue adb reboot recovery. It's the same with "boot loop", no need for battery removal... but if you encounter proc freeze or kernel panic, you will have to remove it.

EDIT: There's no need to change init.d script every time you need to change that speed. You are testing right, so you have your gizmo connected to your PC anywayz. So set that top speed to some reasonable value like 768, reboot and then rise that speed via adb. When you get a boot loop set it back to previous value and you're set. But be careful if you are using SetCPU... SetCPU itself does change those values in /sys/devices/system/cpu/cpu0/cpufreq too so it will most probably override your setting the next time it switches from one profile to another.

EDIT 2: While testing it is wise to stop SetCPU or even unistall it for that testing period. You can set all the parameters in /sys/devices/system/cpu/cpu0/cpufreq manually using echo via adb...
Ok, cheers for the info there. In terms of this guide, I'll add what you've said about adb reboot recovery, but leave in the battery pull as well (noobs).

On another note, any idea why my phone can suddenly boot at 844 when it couldn't before?

EDIT: Ok, OP updated. I'll add in a bit about the V4 kernel as well, but now I need to do some work.
 
Last edited:

BlaY0

Retired Recognized Developer
Sep 15, 2007
1,553
566
0
Medvode
What's causing those "boot loops" is actually (I guess) incompatibility in stepping through some frequencies... but if you uninstall SetCPU and set upper and lower speed limit to the same value using performance governor (via init.d), there's really a slight chance of "boot loop".
 

dumfuq

Retired Recognized Developer
May 23, 2009
542
42
0
I don't see a reason why it can't (in future kernels), but I may be very wrong. I'm no expert on overclocking, I just bothered to write a guide. :D From what I know those frequencies could be made to work, but you'll need to ask dumfuq to make a kernel that allows those frequencies. The kernel essentially says: "Right then CPU, you're allowed these frequency steppings: lots of numbers here" V4 doesn't include the frequencies you want, but dumfuq might make one that does.
including the frequencies between 600 and 768 is actually my next goal. The problem is it is not as simple as just adding them, the steppings need to be adjusted or the phones will freeze/reboot when changing between certain frequencies. this is not trivial (at least for me) but I do plan on working on it when I have time.
 

BlaY0

Retired Recognized Developer
Sep 15, 2007
1,553
566
0
Medvode
It is not actually a good idea to have so many frequencies being used... that way processor would be too busy stepping through them using too many cycles just for that. Using 3 or 4 tops would be much better but then again U would have to compile like 20 kernels for all tastes.

Sent from my HTC Legend using XDA App