18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# Samsung SoC drivers
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_cimenuconfig SOC_SAMSUNG
68c2ecf20Sopenharmony_ci	bool "Samsung SoC driver support" if COMPILE_TEST
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciif SOC_SAMSUNG
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciconfig EXYNOS_ASV
118c2ecf20Sopenharmony_ci	bool "Exynos Adaptive Supply Voltage support" if COMPILE_TEST
128c2ecf20Sopenharmony_ci	depends on (ARCH_EXYNOS && EXYNOS_CHIPID) || COMPILE_TEST
138c2ecf20Sopenharmony_ci	select EXYNOS_ASV_ARM if ARM && ARCH_EXYNOS
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci# There is no need to enable these drivers for ARMv8
168c2ecf20Sopenharmony_ciconfig EXYNOS_ASV_ARM
178c2ecf20Sopenharmony_ci	bool "Exynos ASV ARMv7-specific driver extensions" if COMPILE_TEST
188c2ecf20Sopenharmony_ci	depends on EXYNOS_ASV
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciconfig EXYNOS_CHIPID
218c2ecf20Sopenharmony_ci	bool "Exynos Chipid controller driver" if COMPILE_TEST
228c2ecf20Sopenharmony_ci	depends on ARCH_EXYNOS || COMPILE_TEST
238c2ecf20Sopenharmony_ci	select MFD_SYSCON
248c2ecf20Sopenharmony_ci	select SOC_BUS
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ciconfig EXYNOS_PMU
278c2ecf20Sopenharmony_ci	bool "Exynos PMU controller driver" if COMPILE_TEST
288c2ecf20Sopenharmony_ci	depends on ARCH_EXYNOS || ((ARM || ARM64) && COMPILE_TEST)
298c2ecf20Sopenharmony_ci	select EXYNOS_PMU_ARM_DRIVERS if ARM && ARCH_EXYNOS
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci# There is no need to enable these drivers for ARMv8
328c2ecf20Sopenharmony_ciconfig EXYNOS_PMU_ARM_DRIVERS
338c2ecf20Sopenharmony_ci	bool "Exynos PMU ARMv7-specific driver extensions" if COMPILE_TEST
348c2ecf20Sopenharmony_ci	depends on EXYNOS_PMU
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ciconfig EXYNOS_PM_DOMAINS
378c2ecf20Sopenharmony_ci	bool "Exynos PM domains" if COMPILE_TEST
388c2ecf20Sopenharmony_ci	depends on (ARCH_EXYNOS && PM_GENERIC_DOMAINS) || COMPILE_TEST
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ciconfig SAMSUNG_PM_DEBUG
418c2ecf20Sopenharmony_ci	bool "Samsung PM Suspend debug"
428c2ecf20Sopenharmony_ci	depends on PM && DEBUG_KERNEL
438c2ecf20Sopenharmony_ci	depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210
448c2ecf20Sopenharmony_ci	depends on DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
458c2ecf20Sopenharmony_ci	depends on DEBUG_LL && MMU
468c2ecf20Sopenharmony_ci	help
478c2ecf20Sopenharmony_ci	  Say Y here if you want verbose debugging from the PM Suspend and
488c2ecf20Sopenharmony_ci	  Resume code. See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
498c2ecf20Sopenharmony_ci	  for more information.
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ciconfig S3C_PM_DEBUG_LED_SMDK
528c2ecf20Sopenharmony_ci       bool "SMDK LED suspend/resume debugging"
538c2ecf20Sopenharmony_ci       depends on PM && (MACH_SMDK6410)
548c2ecf20Sopenharmony_ci       help
558c2ecf20Sopenharmony_ci         Say Y here to enable the use of the SMDK LEDs on the baseboard
568c2ecf20Sopenharmony_ci	 for debugging of the state of the suspend and resume process.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci	 Note, this currently only works for S3C64XX based SMDK boards.
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ciconfig SAMSUNG_PM_CHECK
618c2ecf20Sopenharmony_ci	bool "S3C2410 PM Suspend Memory CRC"
628c2ecf20Sopenharmony_ci	depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210)
638c2ecf20Sopenharmony_ci	select CRC32
648c2ecf20Sopenharmony_ci	help
658c2ecf20Sopenharmony_ci	  Enable the PM code's memory area checksum over sleep. This option
668c2ecf20Sopenharmony_ci	  will generate CRCs of all blocks of memory, and store them before
678c2ecf20Sopenharmony_ci	  going to sleep. The blocks are then checked on resume for any
688c2ecf20Sopenharmony_ci	  errors.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci	  Note, this can take several seconds depending on memory size
718c2ecf20Sopenharmony_ci	  and CPU speed.
728c2ecf20Sopenharmony_ci
738c2ecf20Sopenharmony_ci	  See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciconfig SAMSUNG_PM_CHECK_CHUNKSIZE
768c2ecf20Sopenharmony_ci	int "S3C2410 PM Suspend CRC Chunksize (KiB)"
778c2ecf20Sopenharmony_ci	depends on PM && SAMSUNG_PM_CHECK
788c2ecf20Sopenharmony_ci	default 64
798c2ecf20Sopenharmony_ci	help
808c2ecf20Sopenharmony_ci	  Set the chunksize in Kilobytes of the CRC for checking memory
818c2ecf20Sopenharmony_ci	  corruption over suspend and resume. A smaller value will mean that
828c2ecf20Sopenharmony_ci	  the CRC data block will take more memory, but will identify any
838c2ecf20Sopenharmony_ci	  faults with better precision.
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci	  See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ciconfig EXYNOS_REGULATOR_COUPLER
888c2ecf20Sopenharmony_ci	bool "Exynos SoC Regulator Coupler" if COMPILE_TEST
898c2ecf20Sopenharmony_ci	depends on ARCH_EXYNOS || COMPILE_TEST
908c2ecf20Sopenharmony_ciendif
91