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