# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0

choice
prompt "ITE IT8XXX2 system implementation"
depends on SOC_SERIES_RISCV32_IT8XXX2

config SOC_IT8XXX2
	bool "ITE IT8XXX2 system implementation"
	select RISCV
	select ATOMIC_OPERATIONS_BUILTIN

endchoice

if SOC_IT8XXX2

config SOC_IT8XXX2_PLL_FLASH_48M
	bool "Flash frequency is 48MHz"
	default y
	help
	  Change frequency of PLL, CPU, and flash to 48MHz during initialization.

	  Set n to use the default settings.
	  (PLL and CPU run at 48MHz, flash frequency is 16MHz)

choice
	prompt "Clock source for PLL reference clock"

config SOC_IT8XXX2_INT_32K
	bool "Use the +/-2.3% internal clock generator"

config SOC_IT8XXX2_EXT_32K
	bool "Use external 32.768 kHz clock source"

endchoice

endif # SOC_IT8XXX2
