# Kconfig.defconfig - Nordic Semiconductor nRFx MCU line
#
# Copyright (c) 2016-2018 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

if SOC_FAMILY_NRF

source "soc/arm/nordic_nrf/*/Kconfig.defconfig.series"

if SYS_CLOCK_EXISTS
# If the kernel has timer support, enable both clock control and timer
config CLOCK_CONTROL
       default y

config NRF_RTC_TIMER
       default y
endif # SYS_CLOCK_EXISTS

config SYS_CLOCK_HW_CYCLES_PER_SEC
	int
	default 32768

config SYS_CLOCK_TICKS_PER_SEC
	int
	default 32768

config ARCH_HAS_CUSTOM_BUSY_WAIT
	default y

config SYS_POWER_MANAGEMENT
	default y

config BUILD_OUTPUT_HEX
	default y

if SPI

config GPIO
	default y

endif # SPI

endif # SOC_FAMILY_NRF
