imx: mx7ulp: Add clock framework and functions
authorPeng Fan <peng.fan@nxp.com>
Wed, 22 Feb 2017 08:21:42 +0000 (16:21 +0800)
committerStefano Babic <sbabic@denx.de>
Fri, 17 Mar 2017 08:27:08 +0000 (09:27 +0100)
commitd0f8516d9e6a327b39cacdeb9a4e930c1348d907
treecf67611feca62b5d3d8109dfd5b0d4988a65efa6
parent0cb3d82c68012887475eba12ee3d8b82894b460b
imx: mx7ulp: Add clock framework and functions

Add a clock framework to support SCG1/PCC2/PCC3 for A7 to support get/set
clock source, divider, clock rate and parent source.
Users need to include pcc.h to use the APIs to for peripherals clock. Each
peripheral clock is defined in enum pcc_clk type.

SCG relevants APIs are defined in scg.h which supports clock rate get, PLL/PFD
enablement and settings, and all SCG clock initialization. User need use enum
scg_clk to access each clock source.

In clock.c, we initialize necessary clocks at u-boot s_init and implement the
clock functions used by driver modules to operate clocks dynamically.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
arch/arm/cpu/armv7/mx7ulp/Makefile
arch/arm/cpu/armv7/mx7ulp/clock.c [new file with mode: 0644]
arch/arm/cpu/armv7/mx7ulp/pcc.c [new file with mode: 0644]
arch/arm/cpu/armv7/mx7ulp/scg.c [new file with mode: 0644]
arch/arm/include/asm/arch-mx7ulp/clock.h [new file with mode: 0644]
arch/arm/include/asm/arch-mx7ulp/pcc.h [new file with mode: 0644]
arch/arm/include/asm/arch-mx7ulp/scg.h [new file with mode: 0644]