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

CONFIG_SOC_SERIES_RISCV32_IT8XXX2=y
CONFIG_SOC_IT8XXX2=y
CONFIG_BOARD_IT8XXX2_EVB=y
CONFIG_BOOT_DELAY=1

CONFIG_GEN_IRQ_VECTOR_TABLE=n
CONFIG_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_UART_CONSOLE=y

CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32768

CONFIG_XIP=y
CONFIG_INIT_STACKS=y
CONFIG_LINKER_ORPHAN_SECTION_PLACE=y
CONFIG_COMPILER_OPT="-mcmodel=medlow"
CONFIG_GPIO=y
# Power Management
CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_POLICY_CUSTOM=y
