xref: /openbmc/linux/drivers/soc/samsung/Kconfig (revision 4ce94eab)
1# SPDX-License-Identifier: GPL-2.0
2#
3# Samsung SoC drivers
4#
5menuconfig SOC_SAMSUNG
6	bool "Samsung SoC driver support" if COMPILE_TEST
7
8if SOC_SAMSUNG
9
10# There is no need to enable these drivers for ARMv8
11config EXYNOS_ASV_ARM
12	bool "Exynos ASV ARMv7-specific driver extensions" if COMPILE_TEST
13	depends on EXYNOS_CHIPID
14
15config EXYNOS_CHIPID
16	bool "Exynos ChipID controller and ASV driver" if COMPILE_TEST
17	depends on ARCH_EXYNOS || COMPILE_TEST
18	select EXYNOS_ASV_ARM if ARM && ARCH_EXYNOS
19	select MFD_SYSCON
20	select SOC_BUS
21	help
22	  Support for Samsung Exynos SoC ChipID and Adaptive Supply Voltage.
23
24config EXYNOS_PMU
25	bool "Exynos PMU controller driver" if COMPILE_TEST
26	depends on ARCH_EXYNOS || ((ARM || ARM64) && COMPILE_TEST)
27	select EXYNOS_PMU_ARM_DRIVERS if ARM && ARCH_EXYNOS
28
29# There is no need to enable these drivers for ARMv8
30config EXYNOS_PMU_ARM_DRIVERS
31	bool "Exynos PMU ARMv7-specific driver extensions" if COMPILE_TEST
32	depends on EXYNOS_PMU
33
34config EXYNOS_PM_DOMAINS
35	bool "Exynos PM domains" if COMPILE_TEST
36	depends on (ARCH_EXYNOS && PM_GENERIC_DOMAINS) || COMPILE_TEST
37
38config SAMSUNG_PM_DEBUG
39	bool "Samsung PM Suspend debug"
40	depends on PM && DEBUG_KERNEL
41	depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210
42	depends on DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
43	depends on DEBUG_LL && MMU
44	help
45	  Say Y here if you want verbose debugging from the PM Suspend and
46	  Resume code. See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
47	  for more information.
48
49config S3C_PM_DEBUG_LED_SMDK
50       bool "SMDK LED suspend/resume debugging"
51       depends on PM && (MACH_SMDK6410)
52       help
53         Say Y here to enable the use of the SMDK LEDs on the baseboard
54	 for debugging of the state of the suspend and resume process.
55
56	 Note, this currently only works for S3C64XX based SMDK boards.
57
58config SAMSUNG_PM_CHECK
59	bool "S3C2410 PM Suspend Memory CRC"
60	depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210)
61	select CRC32
62	help
63	  Enable the PM code's memory area checksum over sleep. This option
64	  will generate CRCs of all blocks of memory, and store them before
65	  going to sleep. The blocks are then checked on resume for any
66	  errors.
67
68	  Note, this can take several seconds depending on memory size
69	  and CPU speed.
70
71	  See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
72
73config SAMSUNG_PM_CHECK_CHUNKSIZE
74	int "S3C2410 PM Suspend CRC Chunksize (KiB)"
75	depends on PM && SAMSUNG_PM_CHECK
76	default 64
77	help
78	  Set the chunksize in Kilobytes of the CRC for checking memory
79	  corruption over suspend and resume. A smaller value will mean that
80	  the CRC data block will take more memory, but will identify any
81	  faults with better precision.
82
83	  See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
84
85config EXYNOS_REGULATOR_COUPLER
86	bool "Exynos SoC Regulator Coupler" if COMPILE_TEST
87	depends on ARCH_EXYNOS || COMPILE_TEST
88endif
89