clk: mvebu: Add the peripheral clock driver for Armada 3700
authorGregory CLEMENT <gregory.clement@free-electrons.com>
Tue, 19 Jul 2016 13:42:22 +0000 (15:42 +0200)
committerStephen Boyd <sboyd@codeaurora.org>
Mon, 15 Aug 2016 21:10:27 +0000 (14:10 -0700)
commit8ca4746a78abc39cc0496654068eaaadb0f3c4d0
treec17fa40b5cebcc7c9c1502e29fd2f2fe21272790
parentc6d591c14e45e7ca8e158f2e0e5449371e23055c
clk: mvebu: Add the peripheral clock driver for Armada 3700

These clocks are the ones which will be used as source for the
peripherals of the Armada 3700 SoC. On this SoC there is two blocks of
clocks: the North bridge one and the South bridge one.

Most of them are gatable. Most of the time their rate are their parent
rated divided by a ratio depending of two registers. Their parent can be
choose between the TBG clocks for most of them.

However, some of them can't choose their parent or directly depend of the
xtal clocks. Other ones do not use exactly the same pattern to find the
ratio between their parent rate and their rate.

For these reason each clock is a composite clock and the operations they
use are different depending of the clock.

According to the datasheet it would be possible to select the parent
clock and the ratio, however currently the driver does not support it.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/mvebu/Makefile
drivers/clk/mvebu/armada-37xx-periph.c [new file with mode: 0644]