# SPDX-License-Identifier: GPL-2.0 # # Samsung SoC drivers # menuconfig SOC_SAMSUNG bool "Samsung SoC driver support" if COMPILE_TEST config SOC_S5E9925 bool "Samsung S5E9925" select ARCH_EXYNOS help Support Samsung SOC S5E9925. config SOC_S5E9925_EVT0 bool "Samsung S5E9925 evt0" select ARCH_EXYNOS help Support Samsung SOC S5E9925 evt0. config SOC_S5E8825 bool "Samsung S5E8825" select ARCH_EXYNOS help Support Samsung SOC S5E8825. if SOC_SAMSUNG config EXYNOS_ASV bool "Exynos Adaptive Supply Voltage support" if COMPILE_TEST depends on (ARCH_EXYNOS && EXYNOS_CHIPID) || COMPILE_TEST select EXYNOS_ASV_ARM if ARM && ARCH_EXYNOS # There is no need to enable these drivers for ARMv8 config EXYNOS_ASV_ARM bool "Exynos ASV ARMv7-specific driver extensions" if COMPILE_TEST depends on EXYNOS_ASV config EXYNOS_CHIPID bool "Exynos Chipid controller driver" if COMPILE_TEST depends on ARCH_EXYNOS || COMPILE_TEST select MFD_SYSCON select SOC_BUS config EXYNOS_CHIPID_V2 tristate "Exynos Chipid controller driver v2" depends on ARCH_EXYNOS config EXYNOS_PMU bool "Exynos PMU controller driver" if COMPILE_TEST depends on ARCH_EXYNOS || ((ARM || ARM64) && COMPILE_TEST) config EXYNOS_PMU_IF tristate "Exynos PMU controller Interface driver" help Support PMU register API for Exynos SoC. select EXYNOS_PMU_ARM_DRIVERS if ARM && ARCH_EXYNOS # There is no need to enable these drivers for ARMv8 config EXYNOS_PMU_ARM_DRIVERS bool "Exynos PMU ARMv7-specific driver extensions" if COMPILE_TEST depends on EXYNOS_PMU config EXYNOS_PM_DOMAINS bool "Exynos PM domains" if COMPILE_TEST depends on (ARCH_EXYNOS && PM_GENERIC_DOMAINS) || COMPILE_TEST config SAMSUNG_PM_DEBUG bool "Samsung PM Suspend debug" depends on PM && DEBUG_KERNEL depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 depends on DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART depends on DEBUG_LL && MMU help Say Y here if you want verbose debugging from the PM Suspend and Resume code. See for more information. config S3C_PM_DEBUG_LED_SMDK bool "SMDK LED suspend/resume debugging" depends on PM && (MACH_SMDK6410) help Say Y here to enable the use of the SMDK LEDs on the baseboard for debugging of the state of the suspend and resume process. Note, this currently only works for S3C64XX based SMDK boards. config SAMSUNG_PM_CHECK bool "S3C2410 PM Suspend Memory CRC" depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210) select CRC32 help Enable the PM code's memory area checksum over sleep. This option will generate CRCs of all blocks of memory, and store them before going to sleep. The blocks are then checked on resume for any errors. Note, this can take several seconds depending on memory size and CPU speed. See config SAMSUNG_PM_CHECK_CHUNKSIZE int "S3C2410 PM Suspend CRC Chunksize (KiB)" depends on PM && SAMSUNG_PM_CHECK default 64 help Set the chunksize in Kilobytes of the CRC for checking memory corruption over suspend and resume. A smaller value will mean that the CRC data block will take more memory, but will identify any faults with better precision. See config EXYNOS_REGULATOR_COUPLER bool "Exynos SoC Regulator Coupler" if COMPILE_TEST depends on ARCH_EXYNOS || COMPILE_TEST source "drivers/soc/samsung/cpif/Kconfig" source "drivers/soc/samsung/gnssif/Kconfig" endif config CAL_IF tristate "Exynos Chip Abstraction Layer Interface" help Support CMU CAL for Exynos SoC. config EXYNOS_DEBUG_INFO bool "Exynos Debug infromation" default y help Support printing Exynos Debug information. config CMUCAL tristate "Exynos CMU Chip Abstraction Layer" default y depends on CAL_IF help Support CMUCAL for Exynos SoC. config CP_PMUCAL tristate "Exynos PMU(for CP) Chip Abstraction Layer" default n depends on CAL_IF help Support CP_PMUCAL for Exynos SoC. config GNSS_PMUCAL tristate "Exynos PMU(for GNSS) Chip Abstraction Layer" depends on CAL_IF help Support GNSS_PMUCAL for Exynos SoC. config CHUB_PMUCAL tristate "Exynos PMU(for CHUB) Chip Abstraction Layer" default n depends on CAL_IF help Support CHUB_PMUCAL for Exynos SoC. config CMUCAL_DEBUG tristate "CMUCAL Debug Interface" default y depends on CMUCAL config CMUCAL_QCH_IGNORE_SUPPORT tristate "CMUCAL QCH IGNORE Support" default y depends on CMUCAL config PMUCAL bool "Exynos PMU Chip Abstraction Layer" depends on CAL_IF default y help Support PMUCAL for Exynos SoC. config PMUCAL_DBG tristate "Exynos PMUCAL debugging interface" depends on PMUCAL help Support PMUCAL debugging for Exynos SoC. config EXYNOS_FLEXPMU_DBG tristate "Exynos FLEXPMU debugging interface" depends on PMUCAL help Support FLEXPMU for Exynos SoC. config PMUCAL_CMU_INIT tristate "CMU_INIT in kernel" default n help Support PMUCAL_CMU_INIT for Exynos SoC. config USI_V2 tristate "Enable Universal Serial Interface version 2" config CMU_EWF tristate "exynos early wakeup force enable" depends on CAL_IF default n help Support CMUEWF for Exynos SoC. config EXYNOS_PD tristate "Exynos PM domain Support" depends on CAL_IF && CMUCAL depends on PM select PM_GENERIC_DOMAINS config EXYNOS_PD_DBG tristate "Exynos PM domain Support" depends on CAL_IF && CMUCAL depends on PM select PM_GENERIC_DOMAINS config EXYNOS_PD_EL3 tristate "Exynos PD Save/Restore" default m help Support Exynos Power Domain Save/Restore config EXYNOS_SCI tristate "EXYNOS SCI interface driver support" help Enable exynos sci interface driver support config EXYNOS_SCI_DBG tristate "EXYNOS SCI DBG interface driver support" depends on EXYNOS_SCI help Enable exynos sci debug interface driver support config EXYNOS_BCM_DBG tristate "EXYNOS_BCM_DBG driver support" help Enable exynos-bcm_dbg driver support config EXYNOS_BCM_DBG_GNR tristate "EXYNOS_BCM_DBG_GNR driver support" help Enable exynos-bcm_dbg driver support config EXYNOS_BCM_DBG_AUTO tristate "EXYNOS_BCM_DBG_AUTO support" default n depends on EXYNOS_BCM_DBG depends on !(USE_SIGNED_BINARY) help Enable exynos-bcm_dbg_auto support config EXYNOS_BCM_DBG_DUMP tristate "EXYNOS_BCM_DBG dump support" depends on EXYNOS_BCM_DBG help Enable exynos-bcm_dbg dump support config EXYNOS_ACPM tristate "ACPM driver support" depends on ARCH_EXYNOS default n help Support ACPM for Exynos SoC. config ACPM_DVFS tristate "Exynos ACPM DVFS manager" depends on CAL_IF && CMUCAL default n help Support ACPM DVFS for Exynos SoC. config SHOW_ASV tristate "Support ASV Sysfs Node" depends on CAL_IF default y help Support ASV Sysfs Node config ECT tristate "Enable Exynos Characteristic Table File" default n help Support ECT for Exynos SoC. config EXYNOS_PM tristate "Enable Exynos PM" help Support EXYNOS_PM for Exynos SoC. config EXYNOS_DVFS_MANAGER tristate "Exynos DVFS Manager" default m help Enable DVFS Manager for Exynos SoC. This module controls constraint between each DVFS domains. config EXYNOS_CPUPM tristate "Exynos CPU Power Management driver" depends on ARCH_EXYNOS && PMUCAL default m help Support Exynos CPU Power Control for EXYNOS SoC. config EXYNOS_SSP tristate "Exynos Samsung Secure Platform" default m help Support Samsung Secure Platform config EXYNOS_CRYPTOMANAGER tristate "Exynos Samsung CryptoManager" default m help Support Exynos Samsung CryptoManager config EXYNOS_CPUHP tristate "CPU Hotplug driver support" default n help Support CPU Hotplug for Exynos SoC. config EXYNOS_UFCC tristate "User Frequency & C-state Control" depends on EXYNOS_CPUPM && ARM_EXYNOS_ACME default n help Control Frequency & C-state by user config EXYNOS_AFM tristate "Exynos AFM Handler" depends on CPU_FREQ default n help Enable AFM handler for Exynos SoC. config EXYNOS_PM_QOS tristate "Exynos PM QOS" default m help Support Exynos PM QOS config ACPM_DVFS tristate "Exynos ACPM DVFS manager" depends on CAL_IF && CMUCAL default n help Support ACPM DVFS for Exynos SoC. config EXYNOS_DEBUG_FREQ tristate "check constraint freq and print log" depends on CAL_IF default m help If this config is set, check constraint freq every time which cpufreq, config EXYNOS_MEMORY_LOGGER tristate "Exynos Memory Logger" default n help Exynos Memory Logger API is provided by memlog driver. Memlog means exynos memory Logger driver. The memlog provides the logging method desired by each driver in memory for debugging, memlog provides APIs for memory logging. config EXYNOS_SYSTEM_EVENT tristate "Exynos System Event Framework" default n help Enable System Event Framework for Exynos SoC. config EXYNOS_IMGLOADER tristate "Exynos Image Loader" default n help Enable Image Loader for Exynos SoC. config EXYNOS_MCINFO tristate "Exynos memory controller information" default m config MCINFO_SYSFS bool "Exynos memory controller information sysfs" depends on EXYNOS_MCINFO default y if SYSFS config EXYNOS_EL2 tristate "Exynos EL2 Solution" depends on ARCH_EXYNOS help Exynos EL2 Solution has implemented Stage 2 MMU and IOMMU config EXYNOS_S2MPU tristate "Exynos Stage 2 Memory Protection Unit(S2MPU)" depends on EXYNOS_EL2 help Exynos S2MPU driver to set S2MPU access permission. config EXYNOS_S2MPUFD_FAIL_DETECTOR bool "Exynos S2MPU Fail Detector" depends on EXYNOS_S2MPU default y help Support Exynos S2MPU Fail Detector config EXYNOS_S2MPUFD_ILLEGAL_ACCESS_PANIC bool "Kernel Panic over S2MPU Illegal Access" depends on EXYNOS_S2MPUFD_FAIL_DETECTOR default y help Kernel panic will occur in case that S2MPU illegal access is detected. config EXYNOS_S2MPU_PD bool "Exynos S2MPU PM domain support" depends on EXYNOS_S2MPU default y help Backup and restore S2MPU when PM domains on and off. config EXYNOS_SDM tristate "Exynos Security Dump Manager Support" depends on DEBUG_SNAPSHOT default m help Exynos Security Dump Manager config EXYNOS_SECURE_LOG tristate "Exynos Secure Log" default m help Support Exynos Secure Log config EXYNOS_TZASC_FAIL_DETECTOR tristate "Exynos TZASC Fail Detector" default m help Support Exynos TZASC Fail Detector config EXYNOS_TZASC_ILLEGAL_READ_LOGGING bool "Logging TZASC Read Fail Information" depends on EXYNOS_TZASC_FAIL_DETECTOR default n help TZASC fail information of illegal reads will be printed by the Kernel logging system. config EXYNOS_TZASC_ILLEGAL_ACCESS_PANIC bool "Kernel Panic over TZASC Illegal Access" depends on EXYNOS_TZASC_FAIL_DETECTOR default y help Kernel panic will occur in case that TZASC illegal access is detected. config EXYNOS_PPMPU_FAIL_DETECTOR tristate "Exynos PPMPU Fail Detector" default m help Support Exynos PPMPU Fail Detector config EXYNOS_PPMPU_ILLEGAL_READ_LOGGING bool "Logging PPMPU Read Fail Information" depends on EXYNOS_PPMPU_FAIL_DETECTOR default n help PPMPU fail information of illegal reads will be printed by the Kernel logging system. config EXYNOS_PPMPU_ILLEGAL_ACCESS_PANIC bool "Kernel Panic over PPMPU Illegal Access" depends on EXYNOS_PPMPU_FAIL_DETECTOR default y help Kernel panic will occur in case that PPMPU illegal access is detected. config EXYNOS_SEH tristate "Exynos Smart Exception Handler" default m help Support Exynos Smart Exception Handler config EXYNOS_CONTENT_PATH_PROTECTION tristate "Exynos Content Path Protection" default m help Enable content path protection of EXYNOS. config EXYNOS_DP_POWER_CONTROL bool "Exynos DP power control for DRM" depends on HDCP2_DP_ENABLE default y help Enable DP power control of EXYNOS. config EXYNOS_MIGOV tristate "Exynos Multi IP Governor support" default m help Support Multi IP Governor for Exynos SoC. config EXYNOS_GPU_PROFILER tristate "Exynos GPU Profiler support" depends on EXYNOS_MIGOV default m help Support GPU Profiler for Exynos SoC. config EXYNOS_MIF_PROFILER tristate "Exynos MIF Profiler support" default m help Support MIF Profiler for Exynos SoC. config EXYNOS_CPU_PROFILER tristate "Exynos CPU Profiler support" depends on EXYNOS_MIGOV default m help Support CPU Profiler for Exynos SoC. config EXYNOS_WOW tristate "Exynos Workload Watcher" depends on ARM_EXYNOS_DEVFREQ default m help Exynos Workload Wather (WoW) driver support config EXYNOS_PTRAUTH_OVERRIDE_CFISCS bool "Exynos kernel ptr auth override CFI & Shadow Callstack" default n help For PTRAUTH active device, CFI & Shadow callstack check can be removed. Enable this config to remain CFI and shadow callstack only for modules to support GKI kernel. If unsure, keep default value. source "drivers/soc/samsung/acpm/Kconfig" source "drivers/soc/samsung/debug/Kconfig" source "drivers/soc/samsung/xperf/Kconfig" source "drivers/soc/samsung/exynos-hdcp/Kconfig"