Hi
You can use the IRC48M to work at 120MHz system clock (needs to be in HSRUN mode), 60MHz bus clock and 24MHz Flash clock.
See http://www.utasker.com/kinetis/MCG.html for more details (including workaround for errata in earlier chips when using USB device)
In the uTasker project this is configured with
#define RUN_FROM_HIRC_PLL
#define EXTERNAL_CLOCK 48000000 // this is not really external but the IRC48MCLK is otherwise selected as if it were
#define _EXTERNAL_CLOCK EXTERNAL_CLOCK
#define USE_HIGH_SPEED_RUN_MODE // 120 MHz requires use of the high speed run mode (with restriction of not being able to program flash in that mode)
#define CLOCK_DIV 20 // input must be divided to 2MHz..4MHz range (/1 to /24)
#define CLOCK_MUL 50 // the PLL multiplication factor to achieve operating frequency of 120MHz (x24 to x55 possible)
#define BUS_CLOCK_DIVIDE 2 // 120/2 to give 60MHz
#define FLEX_CLOCK_DIVIDE 3 // 120/3 to give 40MHz
#define FLASH_CLOCK_DIVIDE 5 // 120/5 to give 24MHz
#define USB_CRYSTAL_LESS // use 48MHz IRC as USB source (according to Freescale AN4905 - only possible in device mode)
Regards
Mark
http://www.utasker.com/kinetis/FRDM-K22F.html
http://www.utasker.com/kinetis/TWR-K22F120M.html
http://www.utasker.com/kinetis/BLAZE_K22.html