OESF Portables Forum
Model Specific Forums => Sharp Zaurus => Zaurus - pdaXrom => Topic started by: scrapheap on July 09, 2007, 09:21:36 am
-
I have been setting up r198 to my liking, but I have not figured out how to over/under clock the zaurus (c1000) in this version. It used to be adjusting the VCORE file in /proc/zaurus/ but I can't see that here. Is there a different method for this versionl?
-
In fact, it is total different.
r198 use ioctl()
-
OK, I guess I had better figure out how ioctl() works then.
-
/sys/devices/system/cpu/cpu0/cpufreq/cpu-voltage
/dev/ipmc
-
Is it possible to use dvfm (I have seen it mentioned on a few pages when googling for information about ioctl with /dev/ipmc)
-
Is it possible to use dvfm (I have seen it mentioned on a few pages when googling for information about ioctl with /dev/ipmc)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=164572\"][{POST_SNAPBACK}][/a][/div]
try looking at cpuoverclock.py
it uses dvfm to overclock/underclock the system, although, it does not adjust the voltage properly so expect lockups ...
-
#This script serves me well on my C860:
#/bin/bash
#
# overclocking from the command line, by 'shula'
#
echo overclocking...
if grep -q 161 /proc/cccr_change ; then echo status: normal
elif grep -q 162 /proc/cccr_change ; then echo status: high
elif grep -q 141 /proc/cccr_change ; then echo status: low
fi
changed=0
case $1 in
normal)
echo 161 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to $1
changed=1
;;
over|high)
echo 162 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to high
changed=1
;;
under|low)
echo 141 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to low
changed=1
;;
esac
if test 0 -eq $changed ; then
echo 'usage: overclock [normal|high|low]'
fi
-
#This script serves me well on my C860:
#/bin/bash
#
# overclocking from the command line, by 'shula'
#
echo overclocking...
if grep -q 161 /proc/cccr_change; then echo status: normal
elif grep -q 162 /proc/cccr_change; then echo status: high
elif grep -q 141 /proc/cccr_change; then echo status: low
fi
changed=0
case $1 in
normal)
echo 161 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to $1
changed=1
;;
over|high)
echo 162 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to high
changed=1
;;
under|low)
echo 141 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to low
changed=1
;;
esac
if test 0 -eq $changed; then
echo 'usage: overclock [normal|high|low]'
fi
-
#This script serves me well on my C860:
#/bin/bash
#
# overclocking from the command line, by 'shula'
#
echo overclocking...
if grep -q 161 /proc/cccr_change; then echo status: normal
elif grep -q 162 /proc/cccr_change; then echo status: high
elif grep -q 141 /proc/cccr_change; then echo status: low
fi
changed=0
case $1 in
normal)
echo 161 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to $1
changed=1
;;
over|high)
echo 162 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to high
changed=1
;;
under|low)
echo 141 > /proc/cccr_change
echo 100 > /proc/driver/w100/fastsysclk
echo changing to low
changed=1
;;
esac
if test 0 -eq $changed; then
echo 'usage: overclock [normal|high|low]'
fi
[div align=\"right\"][a href=\"index.php?act=findpost&pid=164615\"][{POST_SNAPBACK}][/a][/div]
make sure you don't use those values in the script. a c1000 needs different values.
-
If someone gives me the values that should be used on all the different models I could make the script autosense model from /proc/cpuinfo and apply the correct values for it.
We could then have one script that serves well all models ;-)
-
If someone gives me the values that should be used on all the different models I could make the script autosense model from /proc/cpuinfo and apply the correct values for it.
We could then have one script that serves well all models ;-)
[div align=\"right\"][a href=\"index.php?act=findpost&pid=164625\"][{POST_SNAPBACK}][/a][/div]
see cpuoverclock.py for all the required values...
-
In /usr/bib/cpuoverclock.py only pxa270 is implemented (which I guess id for C1000/3x00 models), therefor I guess that values for C860 are good for all pxa255 based models (750,760,860).
What about c700, its a pxa250 will pxa255 settings be good for pxa250 too ?
I've no idea what the 7500 has inside ;-)
Not sure what to do for 6000, 5600 and 5500 they are not supported by pdaxrom current.
-
In /usr/bib/cpuoverclock.py only pxa270 is implemented (which I guess id for C1000/3x00 models), therefor I guess that values for C860 are good for all pxa255 based models (750,760,860).
What about c700, its a pxa250 will pxa255 settings be good for pxa250 too ?
I've no idea what the 7500 has inside ;-)
Not sure what to do for 6000, 5600 and 5500 they are not supported by pdaxrom current.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=164629\"][{POST_SNAPBACK}][/a][/div]
check cpuoverclock.py for pdaXrom classic. it has the values for 6000, and according to that, c700 is a pxa250, c7500 and 6000 are pxa255
-
I dont have any of the older pdaxrom versions (and it's a good waste of time to install it just for that).
If someone is so kind as to post them I'd appreciate.
If noone posts them I'll go snooping for them in the IPK's from the feeds.
But will the older versuons running 2.4 kernels be doing the same stuff that is done in 2.6 kernels ?
Anyway I've only Cx60 and C1k so I guess I'll be fine anyway ;-)
-
Here's the cpuoverclock.py from pdaXrom beta 3. It seems to have all of the required values (I'm too lazy to paste just the required contents as I'm posting this from my Z).
Hope this helps.
-
It looks like things are done a little different in 2.4 kernel especially for the pxa270.
Shula: you're using that script on pre beta4 release ? .... /proc/cccr_change and /proc/driver/w100/fastsysclk do not exist on 2.6 kernel proc tree.
-
I've found a way for the corgi family (but only for undeclocking)... but this has ot been tested very long so stability may be an issue (use at your own risk).
No script for it yet.
cd /sys/devices/system/cpu/cpu0/cpufreq
cat scaling_avalible_frequencies
#select now which frequency you want to run lets say 99532 kHz
echo 99532 > scaling_max_freq
#to put it back to normal echo 398131 > scaling_max_freq
On Cxx00 there are 2 governors avalible "performance and pxa27x_governor"
when pxa27x_governor is selected you get more frequencies avalible and you can also overclock ... but be carefull because on pxa270 you also need to adjust cpu-voltage accordingly.
If you look in the avalible governors on c7x0 you will notice that only one governor is avalible ... while on cxx00 there is 2.
So I guess that for the moment overclocking is not possible on c7x0 using pdaxrom r197 ... but you can undeclock if you like.
-
It looks like things are done a little different in 2.4 kernel especially for the pxa270.
Shula: you're using that script on pre beta4 release ? .... /proc/cccr_change and /proc/driver/w100/fastsysclk do not exist on 2.6 kernel proc tree.
[div align=\"right\"][a href=\"index.php?act=findpost&pid=164705\"][{POST_SNAPBACK}][/a][/div]
sorry guys
i tested this script in this particular setting only:
pdax beta3 and lower
kernel 2.4.x of course
on my C860
my newly r197 doesn't work for these values and /dev/ .
-
sorry guys
i tested this script in this particular setting only:
pdax beta3 and lower
kernel 2.4.x of course
on my C860
my newly r197 doesn't work for these values and /dev/ .
But you can still underclock like I showed above.
I had a talk with kernel developer about this and it turns out that overclock on pxa255 is possible but not implemented.
Some things that everyone should ponder about about overclocking:
Z case is plastic (not good heat conductor)
overclocking inevitably produces more heat
depending on a bunch of factors like ambient temp and how close to abslolute maximum temp rating Sharp implemented the Z it could turn out that overclocking for long periods with heavy cpu load may permanently damage the Z.
This may be one of the reasons why overclock has not been implemented for pxa255.
-
As a handheld device, the powersaving always be the very important function.
We can use speedstep in dynamic, down cpu freq clock before the overheat, up it when cpu usage getting high.
The speedstep can hold my c1000 to listen songs or read a ebook over 6-12 hours in pdaxrom 1.1beta3 now.
No reason to give up it when moveing to kernel 2.6.