57 lines
1.6 KiB
Plaintext
57 lines
1.6 KiB
Plaintext
|
Frequently asked questions about the sunxi clock system
|
||
|
=======================================================
|
||
|
|
||
|
This document contains useful bits of information that people tend to ask
|
||
|
about the sunxi clock system, as well as accompanying ASCII art when adequate.
|
||
|
|
||
|
Q: Why is the main 24MHz oscillator gatable? Wouldn't that break the
|
||
|
system?
|
||
|
|
||
|
A: The 24MHz oscillator allows gating to save power. Indeed, if gated
|
||
|
carelessly the system would stop functioning, but with the right
|
||
|
steps, one can gate it and keep the system running. Consider this
|
||
|
simplified suspend example:
|
||
|
|
||
|
While the system is operational, you would see something like
|
||
|
|
||
|
24MHz 32kHz
|
||
|
|
|
||
|
PLL1
|
||
|
\
|
||
|
\_ CPU Mux
|
||
|
|
|
||
|
[CPU]
|
||
|
|
||
|
When you are about to suspend, you switch the CPU Mux to the 32kHz
|
||
|
oscillator:
|
||
|
|
||
|
24Mhz 32kHz
|
||
|
| |
|
||
|
PLL1 |
|
||
|
/
|
||
|
CPU Mux _/
|
||
|
|
|
||
|
[CPU]
|
||
|
|
||
|
Finally you can gate the main oscillator
|
||
|
|
||
|
32kHz
|
||
|
|
|
||
|
|
|
||
|
/
|
||
|
CPU Mux _/
|
||
|
|
|
||
|
[CPU]
|
||
|
|
||
|
Q: Were can I learn more about the sunxi clocks?
|
||
|
|
||
|
A: The linux-sunxi wiki contains a page documenting the clock registers,
|
||
|
you can find it at
|
||
|
|
||
|
http://linux-sunxi.org/A10/CCM
|
||
|
|
||
|
The authoritative source for information at this time is the ccmu driver
|
||
|
released by Allwinner, you can find it at
|
||
|
|
||
|
https://github.com/linux-sunxi/linux-sunxi/tree/sunxi-3.0/arch/arm/mach-sun4i/clock/ccmu
|