msm-4.14/arch/arm64/Kconfig.platforms
Taniya Das b48282c68f clk: msm: Add snapshot of clock framework files
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>
2019-11-25 15:40:46 +05:30

358 lines
8.6 KiB
Plaintext

menu "Platform selection"
config ARCH_ACTIONS
bool "Actions Semi Platforms"
select OWL_TIMER
help
This enables support for the Actions Semiconductor S900 SoC family.
config ARCH_SUNXI
bool "Allwinner sunxi 64-bit SoC Family"
select ARCH_HAS_RESET_CONTROLLER
select GENERIC_IRQ_CHIP
select PINCTRL
select RESET_CONTROLLER
help
This enables support for Allwinner sunxi based SoCs like the A64.
config ARCH_ALPINE
bool "Annapurna Labs Alpine platform"
select ALPINE_MSI if PCI
help
This enables support for the Annapurna Labs Alpine
Soc family.
config ARCH_BCM2835
bool "Broadcom BCM2835 family"
select TIMER_OF
select GPIOLIB
select PINCTRL
select PINCTRL_BCM2835
select ARM_AMBA
select ARM_TIMER_SP804
select HAVE_ARM_ARCH_TIMER
help
This enables support for the Broadcom BCM2837 SoC.
This SoC is used in the Raspberry Pi 3 device.
config ARCH_BCM_IPROC
bool "Broadcom iProc SoC Family"
select COMMON_CLK_IPROC
select GPIOLIB
select PINCTRL
help
This enables support for Broadcom iProc based SoCs
config ARCH_BERLIN
bool "Marvell Berlin SoC Family"
select DW_APB_ICTL
select GPIOLIB
select PINCTRL
help
This enables support for Marvell Berlin SoC Family
config ARCH_BRCMSTB
bool "Broadcom Set-Top-Box SoCs"
select BRCMSTB_L2_IRQ
select GENERIC_IRQ_CHIP
help
This enables support for Broadcom's ARMv8 Set Top Box SoCs
config ARCH_EXYNOS
bool "ARMv8 based Samsung Exynos SoC family"
select COMMON_CLK_SAMSUNG
select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
select EXYNOS_PMU
select HAVE_S3C2410_WATCHDOG if WATCHDOG
select HAVE_S3C_RTC if RTC_CLASS
select PINCTRL
select PINCTRL_EXYNOS
select SOC_SAMSUNG
help
This enables support for ARMv8 based Samsung Exynos SoC family.
config ARCH_LAYERSCAPE
bool "ARMv8 based Freescale Layerscape SoC family"
select EDAC_SUPPORT
help
This enables support for the Freescale Layerscape SoC family.
config ARCH_LG1K
bool "LG Electronics LG1K SoC Family"
help
This enables support for LG Electronics LG1K SoC Family
config ARCH_HISI
bool "Hisilicon SoC Family"
select ARM_TIMER_SP804
select HISILICON_IRQ_MBIGEN if PCI
select PINCTRL
help
This enables support for Hisilicon ARMv8 SoC family
config ARCH_MEDIATEK
bool "Mediatek MT65xx & MT81xx ARMv8 SoC"
select ARM_GIC
select PINCTRL
select MTK_TIMER
help
Support for Mediatek MT65xx & MT81xx ARMv8 SoCs
config ARCH_MESON
bool "Amlogic Platforms"
select PINCTRL
select PINCTRL_MESON
select COMMON_CLK_AMLOGIC
select COMMON_CLK_GXBB
help
This enables support for the Amlogic S905 SoCs.
config ARCH_MVEBU
bool "Marvell EBU SoC Family"
select ARMADA_AP806_SYSCON
select ARMADA_CP110_SYSCON
select ARMADA_37XX_CLK
select GPIOLIB
select GPIOLIB_IRQCHIP
select MVEBU_GICP
select MVEBU_ICU
select MVEBU_ODMI
select MVEBU_PIC
select OF_GPIO
select PINCTRL
select PINCTRL_ARMADA_37XX
select PINCTRL_ARMADA_AP806
select PINCTRL_ARMADA_CP110
help
This enables support for Marvell EBU familly, including:
- Armada 3700 SoC Family
- Armada 7K SoC Family
- Armada 8K SoC Family
config ARCH_QCOM
bool "Qualcomm Platforms"
select GPIOLIB
select PINCTRL
select PM_OPP
select SOC_BUS
select MFD_CORE
select SND_SOC_COMPRESS
select SND_HWDEP
select CLKDEV_LOOKUP
select HAVE_CLK
select HAVE_CLK_PREPARE
select PM_OPP
help
This enables support for the ARMv8 based Qualcomm chipsets.
config ARCH_SM8150
bool "Enable Support for Qualcomm Technologies, Inc. SM8150"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This enables support for the SM8150 chipset. If you do not
wish to build a kernel that runs on this chipset, say 'N' here.
config ARCH_SDMSHRIKE
bool "Enable Support for Qualcomm Technologies, Inc. SDMSHRIKE"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This configuration option enables support to build kernel for
SDMSHRIKE SoC.
If you do not wish to build a kernel that runs on this chipset,
say 'N' here.
config ARCH_SM6150
bool "Enable Support for Qualcomm Technologies, Inc. SM6150"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This enables support for the SM6150 chipset. If you do not
wish to build a kernel that runs on this chipset, say 'N' here.
config ARCH_ATOLL
bool "Enable Support for Qualcomm Technologies, Inc. ATOLL"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
select QTI_PDC_ATOLL
help
This enables support for the ATOLL chipset. If you do not
wish to build a kernel that runs on this chipset, say 'N' here.
config ARCH_QCS405
bool "Enable Support for Qualcomm Technologies, Inc. QCS405"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This configuration option enables support to build kernel for
QCS405 SoC.
If you do not wish to build a kernel that runs on this chipset,
say 'N' here.
config ARCH_QCS403
bool "Enable Support for Qualcomm Technologies, Inc. QCS403"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This configuration option enables support to build kernel for
QCS403 SoC.
If you do not wish to build a kernel that runs on this chipset,
say 'N' here.
config ARCH_SDMMAGPIE
bool "Enable Support for Qualcomm Technologies, Inc. SDMMAGPIE"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This enables support for the SDMMAGPIE chipset. If you do not
wish to build a kernel that runs on this chipset, say 'N' here.
config ARCH_TRINKET
bool "Enable Support for Qualcomm Technologies, Inc. TRINKET"
depends on ARCH_QCOM
select COMMON_CLK
select COMMON_CLK_QCOM
help
This enables support for the TRINKET chipset. If you do not
wish to build a kernel that runs on this chipset, say 'N' here.
config ARCH_REALTEK
bool "Realtek Platforms"
help
This enables support for the ARMv8 based Realtek chipsets,
like the RTD1295.
config ARCH_ROCKCHIP
bool "Rockchip Platforms"
select ARCH_HAS_RESET_CONTROLLER
select GPIOLIB
select PINCTRL
select PINCTRL_ROCKCHIP
select PM
select ROCKCHIP_TIMER
help
This enables support for the ARMv8 based Rockchip chipsets,
like the RK3368.
config ARCH_SEATTLE
bool "AMD Seattle SoC Family"
help
This enables support for AMD Seattle SOC Family
config ARCH_SHMOBILE
bool
config ARCH_RENESAS
bool "Renesas SoC Platforms"
select ARCH_SHMOBILE
select PINCTRL
select PM
select PM_GENERIC_DOMAINS
select RENESAS_IRQC
select SOC_BUS
help
This enables support for the ARMv8 based Renesas SoCs.
config ARCH_R8A7795
bool "Renesas R-Car H3 SoC Platform"
depends on ARCH_RENESAS
help
This enables support for the Renesas R-Car H3 SoC.
config ARCH_R8A7796
bool "Renesas R-Car M3-W SoC Platform"
depends on ARCH_RENESAS
help
This enables support for the Renesas R-Car M3-W SoC.
config ARCH_R8A77995
bool "Renesas R-Car D3 SoC Platform"
depends on ARCH_RENESAS
help
This enables support for the Renesas R-Car D3 SoC.
config ARCH_STRATIX10
bool "Altera's Stratix 10 SoCFPGA Family"
help
This enables support for Altera's Stratix 10 SoCFPGA Family.
config ARCH_TEGRA
bool "NVIDIA Tegra SoC Family"
select ARCH_HAS_RESET_CONTROLLER
select CLKDEV_LOOKUP
select CLKSRC_MMIO
select TIMER_OF
select GENERIC_CLOCKEVENTS
select GPIOLIB
select PINCTRL
select PM
select PM_GENERIC_DOMAINS
select RESET_CONTROLLER
help
This enables support for the NVIDIA Tegra SoC family.
config ARCH_SPRD
bool "Spreadtrum SoC platform"
help
Support for Spreadtrum ARM based SoCs
config ARCH_THUNDER
bool "Cavium Inc. Thunder SoC Family"
help
This enables support for Cavium's Thunder Family of SoCs.
config ARCH_THUNDER2
bool "Cavium ThunderX2 Server Processors"
select GPIOLIB
help
This enables support for Cavium's ThunderX2 CN99XX family of
server processors.
config ARCH_UNIPHIER
bool "Socionext UniPhier SoC Family"
select ARCH_HAS_RESET_CONTROLLER
select PINCTRL
help
This enables support for Socionext UniPhier SoC family.
config ARCH_VEXPRESS
bool "ARMv8 software model (Versatile Express)"
select COMMON_CLK_VERSATILE
select GPIOLIB
select PM
select PM_GENERIC_DOMAINS
select POWER_RESET_VEXPRESS
select VEXPRESS_CONFIG
help
This enables support for the ARMv8 software model (Versatile
Express).
config ARCH_VULCAN
def_bool n
config ARCH_XGENE
bool "AppliedMicro X-Gene SOC Family"
help
This enables support for AppliedMicro X-Gene SOC Family
config ARCH_ZX
bool "ZTE ZX SoC Family"
select PINCTRL
help
This enables support for ZTE ZX SoC Family
config ARCH_ZYNQMP
bool "Xilinx ZynqMP Family"
help
This enables support for Xilinx ZynqMP Family
endmenu