The functions BSPClockSetpointRequest() and BSPClockSetpointRelease() are used to allow other drivers or applications to control some aspects of the DVFS operation, in this case, we prohibited the low work point to be set from application or other drivers. (The reason: when LCD, USB, ENET is working, set to low work point has chance to hang up the system).
But we haven’t prohibited the low work point, as I mentioned in old mail, the OAL cpu loading checking code OALTimerNotifyReschedule() will check the run time CPU loading and notify DVFC driver to switch the work point, in this mode, the low point will also be used. To show such information, you can do the followed testing:
For another words, the two functions BSPClockSetpointRequest() and BSPClockSetpointRelease() are not the must functions for DVFC function, the DVFC driver can run only based on CPU loading checking. Those two functions gave the interface for other drivers and applications wo switch the DVFC mode directly. They are the two way for CPU work point switching.
The default WinCE BSP can only support the suspend to RAM function with ARM CPU idle mode.
If you need suspend to RAM with ARM CPU off mode, it is supported in last Linux release, 2.6.35_1.1.0 SDK, you can reference to it.