]> git.baikalelectronics.ru Git - kernel.git/commit
clk: imx: add imx7ulp clk driver
authorA.s. Dong <aisheng.dong@nxp.com>
Wed, 14 Nov 2018 13:02:08 +0000 (13:02 +0000)
committerStephen Boyd <sboyd@kernel.org>
Mon, 3 Dec 2018 19:31:36 +0000 (11:31 -0800)
commit0314533c6e24ea39b9ee5043bd7582b92a9f519e
treefb56d8eeded75262f1cc09a4aecf41ccd13877bf
parent63869aa4934d644820646369659ffa5d0af3fd99
clk: imx: add imx7ulp clk driver

i.MX7ULP Clock functions are under joint control of the System
Clock Generation (SCG) modules, Peripheral Clock Control (PCC)
modules, and Core Mode Controller (CMC)1 blocks

The clocking scheme provides clear separation between M4 domain
and A7 domain. Except for a few clock sources shared between two
domains, such as the System Oscillator clock, the Slow IRC (SIRC),
and and the Fast IRC clock (FIRCLK), clock sources and clock
management are separated and contained within each domain.

M4 clock management consists of SCG0, PCC0, PCC1, and CMC0 modules.
A7 clock management consists of SCG1, PCC2, PCC3, and CMC1 modules.

This driver only adds clock support in A7 domain.

Note that most clocks required to be operated when gated, e.g. pll,
pfd, pcc. And more special cases that scs/ddr/nic mux selecting
different clock source requires that clock to be enabled first,
then we need set CLK_OPS_PARENT_ENABLE flag for them properly.

Cc: Stephen Boyd <sboyd@codeaurora.org>
Cc: Michael Turquette <mturquette@baylibre.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Anson Huang <Anson.Huang@nxp.com>
Cc: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/imx/Makefile
drivers/clk/imx/clk-imx7ulp.c [new file with mode: 0644]