# 1-Wire configuration options

# Copyright (c) 2022 Thomas Stranger
# SPDX-License-Identifier: Apache-2.0

menuconfig W1
	bool
	prompt "1-Wire Drivers"
	help
	  Enable 1-Wire Drivers

if W1

module = W1
module-str = W1
source "subsys/logging/Kconfig.template.log_config"

config W1_INIT_PRIORITY
	int
	default 65
	prompt "Init priority"
	help
	  1-Wire device driver initialization priority.

config W1_SHELL
	bool "1-Wire Shell"
	depends on SHELL
	default y if !SHELL_MINIMAL
	help
	  Enable 1-Wire Shell for testing.

config W1_SHELL_BUFFER_SIZE
	int
	default 16
	depends on W1_SHELL
	prompt "1-Wire Shell buffer size"
	help
	  Size of the send and receive buffer in bytes.
	  To be able to write more than 8 bytes make
	  sure to also increase SHELL_ARGC_MAX accordingly.

rsource "Kconfig.ds2484"
rsource "Kconfig.ds2477_85"
rsource "Kconfig.ds2485"
rsource "Kconfig.test"
rsource "Kconfig.zephyr_serial"

config W1_NET
	bool "1-Wire network layer"
	default y
	help
	  Enable 1-wire network layer

endif # W1
