Clock scaling
-------------

The kernel supports scaling of CLCK.CMODE, CLCK.CM and CLKC.P0 clock
registers. If built with CONFIG_PM and CONFIG_SYSCTL options enabled, four
extra files will appear in the directory /proc/sys/pm/. Reading these files
will show:

      p0		-- current value of the P0 bit in CLKC register.
      cm		-- current value of the CM bits in CLKC register.
      cmode		-- current value of the CMODE bits in CLKC register.

On all boards, the 'p0' file should also be writable, and either '1' or '0'
can be rewritten, to set or clear the CLKC_P0 bit respectively, hence
controlling whether the resource bus rate clock is halved.

The 'cm' file should also be available on all boards. '0' can be written to it
to shift the board into High-Speed mode (normal), and '1' can be written to
shift the board into Medium-Speed mode. Selecting Low-Speed mode is not
supported by this interface, even though some CPUs do support it.

On the boards with FR405 CPU (i.e. CB60 and CB70), the 'cmode' file is also
writable, allowing the CPU core speed (and other clock speeds) to be
controlled from userspace.


Determining current and possible settings
-----------------------------------------

The current state and the available masks can be found in /proc/cpuinfo. For
example, on the CB70:

	# cat /proc/cpuinfo
	CPU-Series:     fr400
	CPU-Core:       fr405, gr0-31, BE, CCCR
	CPU:            mb93405
	MMU:            Prot
	FP-Media:       fr0-31, Media
	System:         mb93091-cb70, mb93090-mb00
	PM-Controls:    cmode=0xd31f, cm=0x3, p0=0x3, suspend=0x9
	PM-Status:      cmode=3, cm=0, p0=0
	Clock-In:       50.00 MHz
	Clock-Core:     300.00 MHz
	Clock-SDRAM:    100.00 MHz
	Clock-CBus:     100.00 MHz
	Clock-Res:      50.00 MHz
	Clock-Ext:      50.00 MHz
	Clock-DSU:      25.00 MHz
	BogoMips:       300.00

And on the PDK, the PM lines look like the following:

	PM-Controls:    cm=0x3, p0=0x3, suspend=0x9
	PM-Status:      cmode=9, cm=0, p0=0

The PM-Controls line, if present, will indicate which /proc/sys/pm files can
be set to what values. The specification values are bitmasks; so, for example,
"suspend=0x9" indicates that 0 and 3 can be written validly to
/proc/sys/pm/suspend.

The PM-Controls line will only be present if CONFIG_PM is configured to Y.

The PM-Status line indicates which clock controls are set to which value. If
the file can be read, then the suspend value must be 0, and so that's not
included.
