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