linux/drivers/clk/ti
Tony Lindgren 163152cbbe clk: ti: Add support for FAPLL on dm816x
On dm816x the clocks are sourced from a FAPLL (Flying Adder PLL)
that does not seem to be used on the other omap variants.

There are four instances of the FAPLL on dm816x that each have three
to seven child synthesizers.

I've set up the FAPLL as a single fapll.c driver. Later on we could
potentially have the PLL code generic. To do that, we would have to
consider the following:

1. Setting the PLL to bypass mode also sets the child synthesizers
   into bypass mode. As the bypass rate can also be generated by
   the PLL in regular mode, there's no way for the child synthesizers
   to detect the bypass mode based on the parent clock rate.

2. The PLL registers control the power for each of the child
   syntheriser.

Note that the clocks are currently still missing the set_rate
implementation so things are still running based on the bootloader
values. That's OK for now as most of the outputs have dividers and
those can be set using the existing TI component clock code.

I have verified that the extclk rates are correct for a few clocks,
so adding the set_rate support should be fairly trivial later on.

This code is partially based on the TI81XX-LINUX-PSP-04.04.00.02
patches published at:

http://downloads.ti.com/dsps/dsps_public_sw/psp/LinuxPSP/TI81XX_04_04/04_04_00_02/index_FDS.html

Cc: Brian Hutchinson <b.hutchman@gmail.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Michael Turquette <mturquette@linaro.org>
2015-01-20 10:09:07 -08:00
..
apll.c clk: ti: dra7: return error code in failure case 2014-06-19 14:52:31 +03:00
autoidle.c CLK: TI: add autoidle support 2014-01-17 12:34:59 -08:00
clk-2xxx.c ARM: OMAP2: clock: add DT boot support for cpufreq_ck 2014-05-28 13:05:57 +03:00
clk-3xxx.c mfd: omap-usb-host: Get clocks based on hardware revision 2014-03-13 22:23:51 +00:00
clk-7xx.c The clock framework changes for 3.17 are mostly additions of new clock 2014-08-04 11:44:20 -07:00
clk-33xx.c clk: ti: am335x: remove unecessary cpu0 clk node 2014-02-24 22:56:38 -08:00
clk-43xx.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2014-06-12 14:27:40 -07:00
clk-44xx.c CLK: TI: OMAP4/5/DRA7: Remove gpmc_fck from dummy clocks 2014-03-13 13:41:50 -07:00
clk-54xx.c CLK: TI: clk-54xx: Set the rate for dpll_abe_m2x2_ck 2014-06-06 20:33:34 +03:00
clk-dra7-atl.c Merge branch 'for-v3.18/ti-clk-driver' of github.com:t-kristo/linux-pm into clk-next 2014-09-29 23:38:59 -07:00
clk.c clk: ti: change clock init to use generic of_clk_init 2014-09-29 11:51:13 +03:00
clockdomain.c clk: ti: consider the fact that of_clk_get() might return an error 2014-09-29 11:51:13 +03:00
composite.c clk: ti: add support for basic mux clock 2014-01-17 12:35:17 -08:00
divider.c Merge branch 'for-v3.18/ti-clk-driver' of github.com:t-kristo/linux-pm into clk-next 2014-09-29 23:38:59 -07:00
dpll.c ARM: OMAP3+: DPLL: use determine_rate() and set_rate_and_parent() 2014-11-13 09:26:45 -07:00
fapll.c clk: ti: Add support for FAPLL on dm816x 2015-01-20 10:09:07 -08:00
fixed-factor.c clk: ti: add support for TI fixed factor clock 2014-01-17 12:35:07 -08:00
gate.c Merge branch 'for-v3.16/ti-clk-drv' of github.com:t-kristo/linux-pm into clk-next 2014-06-10 16:53:25 -07:00
interface.c CLK: TI: interface: add support for omap2430 specific interface clock 2014-05-28 12:30:12 +03:00
Makefile clk: ti: Add support for FAPLL on dm816x 2015-01-20 10:09:07 -08:00
mux.c clk: ti: set CLK_SET_RATE_NO_REPARENT for ti,mux-clock 2014-06-19 14:52:32 +03:00