Dear Sirs.
I have detected strange behaviour of OPP.
As you know, OPP (Operating performance Point) is a part of DVFS/CPUFreq manager. http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_DVFS_User_Guide
I have used custom power control function to change core VCC. For now my OPP list has next points:
OPP_INITIALIZER("mpu", true, 600000000, 1100000),
/* MPU OPP2 - OPP 100 */
OPP_INITIALIZER("mpu", true, 800000000, 1200000),
/* MPU OPP3 - OPP 120 */
OPP_INITIALIZER("mpu", true, 1000000000, 1350000),
It is good enough for my purposes.
I have detected system crash by switching from maximum frequency to lowest one without central point. Reverse sequence works fine.
$echo -n "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
$echo -n 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
$echo -n 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
$echo -n 1000000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
works fine
$echo -n "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
$echo -n 1000000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
$echo -n 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
$echo -n 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
works fine
$echo -n "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
$echo -n 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
$echo -n 1000000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
works fine
$echo -n "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
$echo -n 1000000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
$echo -n 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
crash
In all cases, after echo into scaling_setspeed I have proper regulator voltage value, even for crash case (1.1V core voltage).
Could you help me to resolve this problem?