# Copyright (c) 2023 TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_RA4M1=y
CONFIG_SOC_R7FA4M1AB3CFM=y

CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=48000000

CONFIG_BUILD_OUTPUT_HEX=y

# enable uart driver
CONFIG_SERIAL=y

# enable console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

# enable GPIO
CONFIG_GPIO=y

CONFIG_PINCTRL=y

CONFIG_CLOCK_CONTROL=y

CONFIG_USE_DT_CODE_PARTITION=y
