# Copyright (c) 2021 Telink Semiconductor
# SPDX-License-Identifier: Apache-2.0

# Telink B91 GPIO configuration options

config GPIO_TELINK_B91
	bool "Telink B91 GPIO driver"
	default y
	depends on DT_HAS_TELINK_B91_GPIO_ENABLED
	help
	  Enable the B91 GPIO driver.
