This is snapshot of the clock framework files as of msm-4.9
'commit cc7a1542d987 ("msm: ipa: Fix assignment warning with clang").
Below is the brief description of the additional changes made:
1. Add COMMON_CLK_MSM config flag for conditional compilation for
some common files used between COMMON_CLK_MSM and COMMON_CLK_QCOM
clock framework files.
2. Add reset controller framework files for BCR operation.
3. Add conditional compilation support for FTRACE clock functions
to maintain compatibility for clock framework based on
COMMON_CLK_MSM and COMMON_CLK_QCOM.
4. Add files for GDSC operation.
5. Add BCR reset maps.
6. Resolve compilation issue for qti-quin-gvm.
Some PLL HWs require an additional delay for the PLL lock detect
to stabilize after being brought out of reset and SW to poll for
lock detect status. Add delay of 50uSec before polling lock_det
bit by introducing new pll ops.
Also if PLL fails to lock, record additional PLL debug information
in the kernel log before panic().
'commit 90cb5ecd7cfd ("clk: msm: Add delay of 50uSec before polling
lock_detect status")'.
1:1 is the MN divider preference for DSI PCLK for the regular
24 bpp use-case for display as per hardware recommendation.
Update the divider array to give first priority to 1:1
divider combination.
'commit a270c07a1e21 ("clk: msm: update the fractional divider
array for DSI PCLK")'.
For some PLLs, there could be need to configure the calibration
L value for auto calibration which PLL would use whenever it will
come out of reset. Add support for the same by writing into
USER_CTL_HI register.
'commit 05bd8759e347 ("clk: msm: Add support to configure
calibration L value")'.
Change-Id: I4260a9807e5e1b116db8f43fb9cfbbb55a5a8d67
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Signed-off-by: Suresh Kumar Allam <allamsuresh@codeaurora.org>
247 lines
7.1 KiB
Plaintext
247 lines
7.1 KiB
Plaintext
|
|
config CLKDEV_LOOKUP
|
|
bool
|
|
select HAVE_CLK
|
|
|
|
config HAVE_CLK_PREPARE
|
|
bool
|
|
|
|
config COMMON_CLK
|
|
bool
|
|
select HAVE_CLK_PREPARE
|
|
select CLKDEV_LOOKUP
|
|
select SRCU
|
|
select RATIONAL
|
|
---help---
|
|
The common clock framework is a single definition of struct
|
|
clk, useful across many platforms, as well as an
|
|
implementation of the clock API in include/linux/clk.h.
|
|
Architectures utilizing the common struct clk should select
|
|
this option.
|
|
|
|
menu "Common Clock Framework"
|
|
depends on COMMON_CLK
|
|
|
|
config COMMON_CLK_WM831X
|
|
tristate "Clock driver for WM831x/2x PMICs"
|
|
depends on MFD_WM831X
|
|
---help---
|
|
Supports the clocking subsystem of the WM831x/2x series of
|
|
PMICs from Wolfson Microelectronics.
|
|
|
|
source "drivers/clk/versatile/Kconfig"
|
|
|
|
config CLK_HSDK
|
|
bool "PLL Driver for HSDK platform"
|
|
depends on OF || COMPILE_TEST
|
|
---help---
|
|
This driver supports the HSDK core, system, ddr, tunnel and hdmi PLLs
|
|
control.
|
|
|
|
config COMMON_CLK_MAX77686
|
|
tristate "Clock driver for Maxim 77620/77686/77802 MFD"
|
|
depends on MFD_MAX77686 || MFD_MAX77620 || COMPILE_TEST
|
|
---help---
|
|
This driver supports Maxim 77620/77686/77802 crystal oscillator
|
|
clock.
|
|
|
|
config COMMON_CLK_RK808
|
|
tristate "Clock driver for RK805/RK808/RK818"
|
|
depends on MFD_RK808
|
|
---help---
|
|
This driver supports RK805, RK808 and RK818 crystal oscillator clock. These
|
|
multi-function devices have two fixed-rate oscillators,
|
|
clocked at 32KHz each. Clkout1 is always on, Clkout2 can off
|
|
by control register.
|
|
|
|
config COMMON_CLK_HI655X
|
|
tristate "Clock driver for Hi655x"
|
|
depends on MFD_HI655X_PMIC || COMPILE_TEST
|
|
---help---
|
|
This driver supports the hi655x PMIC clock. This
|
|
multi-function device has one fixed-rate oscillator, clocked
|
|
at 32KHz.
|
|
|
|
config COMMON_CLK_SCPI
|
|
tristate "Clock driver controlled via SCPI interface"
|
|
depends on ARM_SCPI_PROTOCOL || COMPILE_TEST
|
|
---help---
|
|
This driver provides support for clocks that are controlled
|
|
by firmware that implements the SCPI interface.
|
|
|
|
This driver uses SCPI Message Protocol to interact with the
|
|
firmware providing all the clock controls.
|
|
|
|
config COMMON_CLK_SI5351
|
|
tristate "Clock driver for SiLabs 5351A/B/C"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
select RATIONAL
|
|
---help---
|
|
This driver supports Silicon Labs 5351A/B/C programmable clock
|
|
generators.
|
|
|
|
config COMMON_CLK_SI514
|
|
tristate "Clock driver for SiLabs 514 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
---help---
|
|
This driver supports the Silicon Labs 514 programmable clock
|
|
generator.
|
|
|
|
config COMMON_CLK_SI570
|
|
tristate "Clock driver for SiLabs 570 and compatible devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
---help---
|
|
This driver supports Silicon Labs 570/571/598/599 programmable
|
|
clock generators.
|
|
|
|
config COMMON_CLK_CDCE706
|
|
tristate "Clock driver for TI CDCE706 clock synthesizer"
|
|
depends on I2C
|
|
select REGMAP_I2C
|
|
select RATIONAL
|
|
---help---
|
|
This driver supports TI CDCE706 programmable 3-PLL clock synthesizer.
|
|
|
|
config COMMON_CLK_CDCE925
|
|
tristate "Clock driver for TI CDCE913/925/937/949 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
---help---
|
|
This driver supports the TI CDCE913/925/937/949 programmable clock
|
|
synthesizer. Each chip has different number of PLLs and outputs.
|
|
For example, the CDCE925 contains two PLLs with spread-spectrum
|
|
clocking support and five output dividers. The driver only supports
|
|
the following setup, and uses a fixed setting for the output muxes.
|
|
Y1 is derived from the input clock
|
|
Y2 and Y3 derive from PLL1
|
|
Y4 and Y5 derive from PLL2
|
|
Given a target output frequency, the driver will set the PLL and
|
|
divider to best approximate the desired output.
|
|
|
|
config COMMON_CLK_CS2000_CP
|
|
tristate "Clock driver for CS2000 Fractional-N Clock Synthesizer & Clock Multiplier"
|
|
depends on I2C
|
|
help
|
|
If you say yes here you get support for the CS2000 clock multiplier.
|
|
|
|
config COMMON_CLK_GEMINI
|
|
bool "Clock driver for Cortina Systems Gemini SoC"
|
|
depends on ARCH_GEMINI || COMPILE_TEST
|
|
select MFD_SYSCON
|
|
select RESET_CONTROLLER
|
|
---help---
|
|
This driver supports the SoC clocks on the Cortina Systems Gemini
|
|
platform, also known as SL3516 or CS3516.
|
|
|
|
config COMMON_CLK_S2MPS11
|
|
tristate "Clock driver for S2MPS1X/S5M8767 MFD"
|
|
depends on MFD_SEC_CORE || COMPILE_TEST
|
|
---help---
|
|
This driver supports S2MPS11/S2MPS14/S5M8767 crystal oscillator
|
|
clock. These multi-function devices have two (S2MPS14) or three
|
|
(S2MPS11, S5M8767) fixed-rate oscillators, clocked at 32KHz each.
|
|
|
|
config CLK_TWL6040
|
|
tristate "External McPDM functional clock from twl6040"
|
|
depends on TWL6040_CORE
|
|
---help---
|
|
Enable the external functional clock support on OMAP4+ platforms for
|
|
McPDM. McPDM module is using the external bit clock on the McPDM bus
|
|
as functional clock.
|
|
|
|
config COMMON_CLK_AXI_CLKGEN
|
|
tristate "AXI clkgen driver"
|
|
depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
|
|
help
|
|
---help---
|
|
Support for the Analog Devices axi-clkgen pcore clock generator for Xilinx
|
|
FPGAs. It is commonly used in Analog Devices' reference designs.
|
|
|
|
config CLK_QORIQ
|
|
bool "Clock driver for Freescale QorIQ platforms"
|
|
depends on (PPC_E500MC || ARM || ARM64 || COMPILE_TEST) && OF
|
|
---help---
|
|
This adds the clock driver support for Freescale QorIQ platforms
|
|
using common clock framework.
|
|
|
|
config COMMON_CLK_XGENE
|
|
bool "Clock driver for APM XGene SoC"
|
|
default y
|
|
depends on ARM64 || COMPILE_TEST
|
|
---help---
|
|
Sypport for the APM X-Gene SoC reference, PLL, and device clocks.
|
|
|
|
config COMMON_CLK_NXP
|
|
def_bool COMMON_CLK && (ARCH_LPC18XX || ARCH_LPC32XX)
|
|
select REGMAP_MMIO if ARCH_LPC32XX
|
|
select MFD_SYSCON if ARCH_LPC18XX
|
|
---help---
|
|
Support for clock providers on NXP platforms.
|
|
|
|
config COMMON_CLK_PALMAS
|
|
tristate "Clock driver for TI Palmas devices"
|
|
depends on MFD_PALMAS
|
|
---help---
|
|
This driver supports TI Palmas devices 32KHz output KG and KG_AUDIO
|
|
using common clock framework.
|
|
|
|
config COMMON_CLK_PWM
|
|
tristate "Clock driver for PWMs used as clock outputs"
|
|
depends on PWM
|
|
---help---
|
|
Adapter driver so that any PWM output can be (mis)used as clock signal
|
|
at 50% duty cycle.
|
|
|
|
config COMMON_CLK_PXA
|
|
def_bool COMMON_CLK && ARCH_PXA
|
|
---help---
|
|
Support for the Marvell PXA SoC.
|
|
|
|
config COMMON_CLK_PIC32
|
|
def_bool COMMON_CLK && MACH_PIC32
|
|
|
|
config COMMON_CLK_OXNAS
|
|
bool "Clock driver for the OXNAS SoC Family"
|
|
depends on ARCH_OXNAS || COMPILE_TEST
|
|
select MFD_SYSCON
|
|
---help---
|
|
Support for the OXNAS SoC Family clocks.
|
|
|
|
config COMMON_CLK_VC5
|
|
tristate "Clock driver for IDT VersaClock 5,6 devices"
|
|
depends on I2C
|
|
depends on OF
|
|
select REGMAP_I2C
|
|
help
|
|
---help---
|
|
This driver supports the IDT VersaClock 5 and VersaClock 6
|
|
programmable clock generators.
|
|
|
|
source "drivers/clk/bcm/Kconfig"
|
|
source "drivers/clk/hisilicon/Kconfig"
|
|
source "drivers/clk/imgtec/Kconfig"
|
|
source "drivers/clk/keystone/Kconfig"
|
|
source "drivers/clk/mediatek/Kconfig"
|
|
source "drivers/clk/meson/Kconfig"
|
|
source "drivers/clk/mvebu/Kconfig"
|
|
source "drivers/clk/qcom/Kconfig"
|
|
source "drivers/clk/renesas/Kconfig"
|
|
source "drivers/clk/samsung/Kconfig"
|
|
source "drivers/clk/sunxi-ng/Kconfig"
|
|
source "drivers/clk/tegra/Kconfig"
|
|
source "drivers/clk/ti/Kconfig"
|
|
source "drivers/clk/uniphier/Kconfig"
|
|
|
|
endmenu
|
|
|
|
source "drivers/clk/msm/Kconfig"
|