# Copyright (c) 2021 Espressif Systems (Shanghai) Co., Ltd.
# SPDX-License-Identifier: Apache-2.0

config INTC_ESP32C3
	bool "ESP32C3 interrupt controller driver"
	depends on SOC_ESP32C3
	default y
	help
	  Enables the esp32c3 interrupt controller driver to handle ISR
	  management at SoC level.

config INTC_ESP32C3_DECISIONS_LOG
	bool "Espressif's interrupt allocator logging"
	depends on INTC_ESP32C3
	select LOG
	help
	  Enable this option to visualize information on decisions made by the
	  interrupt allocator. This has no impact on the interrupt allocator usage
	  but may be valuable for debugging purposes. When enabled, messages are
	  print to the serial console.
