linux/drivers/clk
Geert Uytterhoeven 5573d19412 clk: renesas: r8a7795: Add support for R-Car H3 ES2.0
The Clock Pulse Generator / Module Standby and Software Reset module in
R-Car H3 ES2.0 differs from ES1.x in the following areas:
  - More core clocks (S0D2, S0D3, S0D6, S0D8, S0D12),
  - Different parent clocks for AUDMAC, EtherAVB, FCP, FDP, IMR,
    SYS-DMAC, VIN, VSPB, VSPI,
  - Removal of modules CSI21, FCPCI, FCPF2, FCPVD3, FCPVI2, FDP1-2,
    USB3-IF1, VSPD3, VSPI2,
  - Addition of modules EHCI3, HS-USB-IF3, USB-DMAC3-0, USB-DMAC3-1.

The goal is twofold:
  1. Support both the ES1.x and ES2.0 SoC revisions in a single binary
     for now,
  2. Make it clear which code supports ES1.x, so it can easily be
     identified and removed later, when production SoCs are deemed
     ubiquitous.

This is achieved by:
  - Updating the clock tables for the latest revision (ES2.0), but not
    removing clocks that only exist on earlier revisions (ES1.x),
  - Detecting the SoC revision at runtime using the new soc_device_match()
    API, and fixing up the clocks tables to match the actual SoC
    revision, by:
      - NULLifying core and module clocks of modules that do not exist,
      - Reparenting module clocks that have a different parent on ES1.x.

Based on R-Car Gen3 Hardware User's Manual rev. 0.53E.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
2017-03-30 13:25:50 +02:00
..
at91 clk: at91: Fix a return value in case of error 2016-10-20 16:37:56 -07:00
axis clk: axis: Use new macro CLK_OF_DECLARE_DRIVER 2016-08-12 18:00:37 -07:00
axs10x clk/axs10x: Clear init field in driver probe 2017-01-09 16:06:40 -08:00
bcm clk: bcm2835: Add leaf clock measurement support, disabled by default 2017-01-20 16:22:56 -08:00
berlin clk: berlin: Pass correct type to hw provider registration 2016-11-16 11:04:17 -08:00
h8300 clk: h8300: Migrate to clk_hw based registration APIs 2016-08-24 17:37:10 -07:00
hisilicon clk: hisilicon: fix lock assignment 2017-01-26 16:18:34 -08:00
imx Merge branch 'clk-imx7', 'clk-bcm2835' into clk-next 2017-01-26 15:52:37 -08:00
ingenic clk: ingenic: Allow divider value to be divided 2016-05-12 14:48:25 -07:00
keystone clk: keystone: pll: Unmap region obtained by of_iomap 2016-12-08 16:34:15 -08:00
loongson1 CLK: Add Loongson1C clock support 2016-09-23 14:49:21 -07:00
mediatek clk: mediatek: Fix MT8135 dependencies 2017-01-26 16:04:31 -08:00
meson ARM: SoC: late DT updates for v4.11 2017-03-03 16:15:48 -08:00
microchip clk: microchip: Initialize SOSC clock rate for PIC32MZDA. 2016-08-24 16:05:24 -07:00
mmp clk:mmp:clk-of-mmp2: Free memory and Unmap region obtained by kzalloc and of_iomap 2016-12-08 16:29:39 -08:00
mvebu clk: mvebu: adjust clock handling for the CP110 system controller 2017-02-14 10:59:15 -08:00
mxs clk: mxs: Remove CLK_IS_ROOT 2016-03-02 17:44:59 -08:00
nxp clk: nxp: clk-lpc18xx-ccu: Unmap region obtained by of_iomap 2016-11-01 17:32:25 -07:00
pistachio
pxa ARM: SoC platform updates for v4.10 2016-12-15 15:39:02 -08:00
qcom clk: qcom: Do not drop device node twice 2017-02-15 17:17:55 -08:00
renesas clk: renesas: r8a7795: Add support for R-Car H3 ES2.0 2017-03-30 13:25:50 +02:00
rockchip clk: rockchip: rk3288: make all niu clocks critical 2017-01-23 00:58:45 +01:00
samsung Merge branch 'next/late' with mainline 2017-03-02 17:52:44 +01:00
sirf clk: sirf: Remove CLK_IS_ROOT 2016-04-15 16:50:04 -07:00
socfpga clk: socfpga: allow for multiple parents on Arria10 periph clocks 2016-02-22 14:17:37 -08:00
spear clk: spear: Remove CLK_IS_ROOT 2016-03-02 17:46:55 -08:00
st clk: st: clk-flexgen: Unmap region obtained by of_iomap 2016-12-08 16:35:22 -08:00
sunxi Allwinner clock changes for 4.10 2016-11-16 11:19:20 -08:00
sunxi-ng clk: sunxi-ng: sun9i-a80: Fix wrong pointer passed to PTR_ERR() 2017-02-06 15:01:29 -08:00
tegra The usual collection of new drivers, non-critical fixes, and updates 2017-02-25 14:28:06 -08:00
ti clk: ti: divider: Add the table parsing to get the best divider value 2017-01-26 16:03:04 -08:00
uniphier clk: uniphier: add eMMC clock for LD11 and LD20 SoCs 2017-02-03 11:55:21 -08:00
ux500 clk: ux500: Convert ABx500 clocks to use OF probing 2017-01-26 16:10:02 -08:00
versatile clk: versatile/icst: support for AP baseboard clocks 2016-08-29 11:38:51 -07:00
x86 clk: x86: Add Atom PMC platform clocks 2017-01-26 16:20:46 -08:00
zte clk: zte: add i2s clocks for zx296718 2017-02-10 09:17:38 -08:00
zynq clk: zynq: Remove CLK_IS_ROOT 2016-03-02 17:48:26 -08:00
clk-asm9260.c clk: asm9260: Migrate to clk_hw based registration and OF APIs 2016-08-24 16:08:33 -07:00
clk-axi-clkgen.c clk: axi-clkgen: Migrate to clk_hw based OF and registration APIs 2016-08-24 16:10:31 -07:00
clk-axm5516.c clk: axm5516: Migrate to clk_hw based OF and registration APIs 2016-08-24 16:11:07 -07:00
clk-cdce706.c clk: cdce: Migrate to clk_hw based OF and registration APIs 2016-08-24 16:12:38 -07:00
clk-cdce925.c clk: cdce925: add support for CDCE913, CDCE937, and CDCE949 2017-01-09 16:38:30 -08:00
clk-clps711x.c clk: clps711x: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:19:26 -07:00
clk-composite.c Merge branch 'clk-hw-register' (early part) into clk-next 2016-04-21 14:47:18 -07:00
clk-conf.c clk: clk-conf: Do not print error messages if EPROBE_DEFER 2017-01-09 16:09:05 -08:00
clk-cs2000-cp.c clk: cs2000: add Suspend/Resume feature 2017-01-20 16:17:39 -08:00
clk-devres.c clk: add devm_get_clk_from_child() API 2016-12-08 16:37:33 -08:00
clk-divider.c clk: divider: Fix clk_divider_round_rate() to use clk_readl() 2016-08-12 17:33:09 -07:00
clk-efm32gg.c clk: efm32gg: Pass correct type to hw provider registration 2016-11-16 11:08:55 -08:00
clk-fixed-factor.c clk: fixed-factor: Remove export symbol on setup function 2016-08-15 15:08:03 -07:00
clk-fixed-rate.c clk: fixed-rate: Remove export symbol on setup function 2016-08-15 15:08:06 -07:00
clk-fractional-divider.c clk: fractional-divider: Add hw based registration APIs 2016-04-19 16:56:28 -07:00
clk-gate.c clk: gate: fix coding style 2016-11-09 12:05:50 -08:00
clk-gpio.c clk: gpio: Add hw based registration APIs 2016-04-19 16:56:28 -07:00
clk-highbank.c clk: highbank: Migrate to clk_hw based registration and OF APIs 2016-06-30 12:25:28 -07:00
clk-max77686.c clk: max77686: fix number of clocks setup for clk_hw based registration 2016-10-17 15:31:59 -07:00
clk-mb86s7x.c clk: mb86s7x: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:01 -07:00
clk-moxart.c clk: moxart: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:20 -07:00
clk-multiplier.c clk: multiplier: Prevent the multiplier from under / over flowing 2016-06-20 13:00:00 -07:00
clk-mux.c clk: mux: Add hw based registration APIs 2016-04-19 16:55:01 -07:00
clk-nomadik.c clk: nomadik: Migrate to clk_hw based OF and registration APIs 2016-06-30 12:25:53 -07:00
clk-nspire.c clk: nspire: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:21 -07:00
clk-oxnas.c clk: oxnas: Add OX820 Gate clocks 2016-10-23 10:18:45 -07:00
clk-palmas.c clk: palmas: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:23 -07:00
clk-pwm.c clk: pwm: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:27 -07:00
clk-qoriq.c clk: qoriq: added ls1012a clock configuration 2016-12-08 16:29:30 -08:00
clk-rk808.c clk: rk808: Pass the right pointer as the get_hw context 2016-09-09 11:07:07 -07:00
clk-s2mps11.c clk: s2mps11: Migrate to clk_hw based OF and registration APIs 2016-06-30 12:29:14 -07:00
clk-scpi.c clk: scpi: don't add cpufreq device if the scpi dvfs node is disabled 2017-01-09 16:08:19 -08:00
clk-si514.c clk: si514: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:29:59 -07:00
clk-si570.c clk: si570: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:30:01 -07:00
clk-si5351.c clk: si5351: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:30:00 -07:00
clk-si5351.h
clk-stm32f4.c clk: stm32f7: Introduce stm32f7 clocks for STM32F746 boards 2017-01-26 15:53:03 -08:00
clk-tango4.c clk: tango4: improve clkgen driver 2016-04-15 17:16:06 -07:00
clk-twl6040.c clk: twl6040: Migrate to clk_hw based registration APIs 2016-08-24 17:34:11 -07:00
clk-u300.c clk: u300: Migrate to clk_hw based registration APIs 2016-06-30 12:26:18 -07:00
clk-versaclock5.c clk: vc5: Add support for IDT VersaClock 5P49V5923 and 5P49V5933 2017-01-20 16:17:34 -08:00
clk-vt8500.c clk: vt8500: Migrate to clk_hw based registration APIs 2016-08-24 17:35:48 -07:00
clk-wm831x.c clk: wm831x: fix usleep_range with bad range 2017-01-09 16:06:41 -08:00
clk-xgene.c clk: xgene: Don't call __pa on ioremaped address 2016-10-28 11:03:47 -07:00
clk.c clk: core: Force setting the phase delay when no change 2016-08-30 14:52:26 -07:00
clk.h
clkdev.c ARM: 8631/1: clkdev: Detect errors in clk_hw_register_clkdev() for mass registration 2016-11-22 11:45:28 +00:00
Kconfig clk: vc5: Add support for IDT VersaClock 5P49V5923 and 5P49V5933 2017-01-20 16:17:34 -08:00
Makefile clk: Make x86/ conditional on CONFIG_COMMON_CLK 2017-01-26 16:20:07 -08:00