I’ve been looking inside the bootloader of the i858 and it appears that the kernel supports the following frequencies: 208, 312, 416, 403, 624, and 806 Mhz. As we all know our phones are set to run at 624 Mhz, but when I check the speed mine is actually running closer to 619 Mhz.

The problem is that normally there is a directory named “cpufreq” located at “/sys/devices/system/cpu/cpu0/” which has a number of files in it the system uses to regulate the CPU frequencies and voltages. On the i858 there is no directory named “cpufreq”. I cannot figure out how to remount “/sys” as writable. When you remount “/system” it has no affect on “/sys”. I have Googled and googled and cannot find how to make “/sys” writable. If I can make it writable I can create the directory and play around with putting in the frequency control files to see if the phone reads them.

I also think this is why setcpu is crashing. It is trying to access those files and they don’t exist. The nonexistence of the files was not considered by the developer of set cpu, as most devices have them, and it creates a force close condition.

Here is the current CPU info generated by the phone:

Processor : XScale-V3 based processor rev 9 (v5l)
BogoMIPS : 618.65
Features : swp half thumb fastmult edsp iwmmxt
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant : 0x0
CPU part : 0x693
CPU revision : 9

Hardware : saar
Revision : 0000
Serial : 0000000000000000