xref: /openbmc/linux/drivers/soc/samsung/Kconfig (revision 2e3ee090)
106512c53SKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0
2bfce552dSPankaj Dubey#
394500540SKrzysztof Kozlowski# Samsung SoC drivers
4bfce552dSPankaj Dubey#
5b11301d5SKrzysztof Kozlowskimenuconfig SOC_SAMSUNG
6b11301d5SKrzysztof Kozlowski	bool "Samsung SoC driver support" if COMPILE_TEST
7bfce552dSPankaj Dubey
8b11301d5SKrzysztof Kozlowskiif SOC_SAMSUNG
9bfce552dSPankaj Dubey
105ea42859SSylwester Nawrocki# There is no need to enable these drivers for ARMv8
115ea42859SSylwester Nawrockiconfig EXYNOS_ASV_ARM
125ea42859SSylwester Nawrocki	bool "Exynos ASV ARMv7-specific driver extensions" if COMPILE_TEST
13352bfbb3SKrzysztof Kozlowski	depends on EXYNOS_CHIPID
145ea42859SSylwester Nawrocki
153253b7b7SPankaj Dubeyconfig EXYNOS_CHIPID
16140bbfe7SKrzysztof Kozlowski	tristate "Exynos ChipID controller and ASV driver"
173253b7b7SPankaj Dubey	depends on ARCH_EXYNOS || COMPILE_TEST
18140bbfe7SKrzysztof Kozlowski	default ARCH_EXYNOS
19352bfbb3SKrzysztof Kozlowski	select EXYNOS_ASV_ARM if ARM && ARCH_EXYNOS
2028578825SSylwester Nawrocki	select MFD_SYSCON
213253b7b7SPankaj Dubey	select SOC_BUS
22352bfbb3SKrzysztof Kozlowski	help
23352bfbb3SKrzysztof Kozlowski	  Support for Samsung Exynos SoC ChipID and Adaptive Supply Voltage.
241e3e559fSKrzysztof Kozlowski	  This driver can also be built as module (exynos_chipid).
253253b7b7SPankaj Dubey
26b603377eSSam Protsenkoconfig EXYNOS_USI
27b603377eSSam Protsenko	tristate "Exynos USI (Universal Serial Interface) driver"
28b603377eSSam Protsenko	default ARCH_EXYNOS && ARM64
29b603377eSSam Protsenko	depends on ARCH_EXYNOS || COMPILE_TEST
30b603377eSSam Protsenko	select MFD_SYSCON
31b603377eSSam Protsenko	help
32b603377eSSam Protsenko	  Enable support for USI block. USI (Universal Serial Interface) is an
33b603377eSSam Protsenko	  IP-core found in modern Samsung Exynos SoCs, like Exynos850 and
34442b0c08SSam Protsenko	  ExynosAutoV9. USI block can be configured to provide one of the
35b603377eSSam Protsenko	  following serial protocols: UART, SPI or High Speed I2C.
36b603377eSSam Protsenko
37b603377eSSam Protsenko	  This driver allows one to configure USI for desired protocol, which
38b603377eSSam Protsenko	  is usually done in USI node in Device Tree.
39b603377eSSam Protsenko
40bfce552dSPankaj Dubeyconfig EXYNOS_PMU
41b11301d5SKrzysztof Kozlowski	bool "Exynos PMU controller driver" if COMPILE_TEST
42a0ebf662SKrzysztof Kozlowski	depends on ARCH_EXYNOS || ((ARM || ARM64) && COMPILE_TEST)
43a0ebf662SKrzysztof Kozlowski	select EXYNOS_PMU_ARM_DRIVERS if ARM && ARCH_EXYNOS
44e37ef6dcSDavid Virag	select MFD_CORE
45a0ebf662SKrzysztof Kozlowski
46a0ebf662SKrzysztof Kozlowski# There is no need to enable these drivers for ARMv8
47a0ebf662SKrzysztof Kozlowskiconfig EXYNOS_PMU_ARM_DRIVERS
48a0ebf662SKrzysztof Kozlowski	bool "Exynos PMU ARMv7-specific driver extensions" if COMPILE_TEST
49a0ebf662SKrzysztof Kozlowski	depends on EXYNOS_PMU
50bfce552dSPankaj Dubey
519479f7ccSKrzysztof Kozlowskiconfig EXYNOS_PM_DOMAINS
529479f7ccSKrzysztof Kozlowski	bool "Exynos PM domains" if COMPILE_TEST
5317132da7SArnd Bergmann	depends on (ARCH_EXYNOS && PM_GENERIC_DOMAINS) || COMPILE_TEST
5417132da7SArnd Bergmann
5517132da7SArnd Bergmannconfig SAMSUNG_PM_CHECK
5617132da7SArnd Bergmann	bool "S3C2410 PM Suspend Memory CRC"
57*2e3ee090SArnd Bergmann	depends on PM && (ARCH_S3C64XX || ARCH_S5PV210)
5817132da7SArnd Bergmann	select CRC32
5917132da7SArnd Bergmann	help
6017132da7SArnd Bergmann	  Enable the PM code's memory area checksum over sleep. This option
6117132da7SArnd Bergmann	  will generate CRCs of all blocks of memory, and store them before
6217132da7SArnd Bergmann	  going to sleep. The blocks are then checked on resume for any
6317132da7SArnd Bergmann	  errors.
6417132da7SArnd Bergmann
6517132da7SArnd Bergmann	  Note, this can take several seconds depending on memory size
6617132da7SArnd Bergmann	  and CPU speed.
6717132da7SArnd Bergmann
6817132da7SArnd Bergmannconfig SAMSUNG_PM_CHECK_CHUNKSIZE
6917132da7SArnd Bergmann	int "S3C2410 PM Suspend CRC Chunksize (KiB)"
7017132da7SArnd Bergmann	depends on PM && SAMSUNG_PM_CHECK
7117132da7SArnd Bergmann	default 64
7217132da7SArnd Bergmann	help
7317132da7SArnd Bergmann	  Set the chunksize in Kilobytes of the CRC for checking memory
7417132da7SArnd Bergmann	  corruption over suspend and resume. A smaller value will mean that
7517132da7SArnd Bergmann	  the CRC data block will take more memory, but will identify any
7617132da7SArnd Bergmann	  faults with better precision.
7717132da7SArnd Bergmann
7800067ca5SMarek Szyprowskiconfig EXYNOS_REGULATOR_COUPLER
7900067ca5SMarek Szyprowski	bool "Exynos SoC Regulator Coupler" if COMPILE_TEST
8000067ca5SMarek Szyprowski	depends on ARCH_EXYNOS || COMPILE_TEST
81b11301d5SKrzysztof Kozlowskiendif
82