# SPDX-License-Identifier: GPL-2.0-only
#
# 1-wire slaves configuration
#
menu "1-wire Slaves"
config [31mCONFIG_W1_SLAVE_THERM[0m
tristate "Thermal family implementation"
help
Say Y here if you want to connect 1-wire thermal sensors to your
wire.
config [31mCONFIG_W1_SLAVE_SMEM[0m
tristate "Simple 64bit memory family implementation"
help
Say Y here if you want to connect 1-wire
simple 64bit memory rom(ds2401/ds2411/ds1990*) to your wire.
config [31mCONFIG_W1_SLAVE_DS2405[0m
tristate "DS2405 Addressable Switch"
help
Say Y or [31mCONFIG_M[0m here if you want to use a DS2405 1-wire
single-channel addressable switch.
This device can also work as a single-channel
binary remote sensor.
config [31mCONFIG_W1_SLAVE_DS2408[0m
tristate "8-Channel Addressable Switch (IO Expander) 0x29 family support (DS2408)"
help
Say Y here if you want to use a 1-wire
DS2408 8-Channel Addressable Switch device support
config [31mCONFIG_W1_SLAVE_DS2408_READBACK[0m
bool "Read-back values written to DS2408's output register"
depends on [31mCONFIG_W1_SLAVE_DS2408[0m
default y
help
Enabling this will cause the driver to read back the values written
to the chip's output register in order to detect errors.
This is slower but useful when debugging chips and/or busses.
config [31mCONFIG_W1_SLAVE_DS2413[0m
tristate "Dual Channel Addressable Switch 0x3a family support (DS2413)"
help
Say Y here if you want to use a 1-wire
DS2413 Dual Channel Addressable Switch device support
config [31mCONFIG_W1_SLAVE_DS2406[0m
tristate "Dual Channel Addressable Switch 0x12 family support (DS2406)"
select [31mCONFIG_CRC16[0m
help
Say Y or [31mCONFIG_M[0m here if you want to use a 1-wire
DS2406 Dual Channel Addressable Switch. EPROM read/write
support for these devices is not implemented.
config [31mCONFIG_W1_SLAVE_DS2423[0m
tristate "Counter 1-wire device (DS2423)"
select [31mCONFIG_CRC16[0m
help
If you enable this you can read the counter values available
in the DS2423 chipset from the w1_slave file under the
sys file system.
Say Y here if you want to use a 1-wire
counter family device (DS2423).
config [31mCONFIG_W1_SLAVE_DS2805[0m
tristate "112-byte EEPROM support (DS28E05)"
help
Say Y here if you want to use a 1-wire
is a 112-byte user-programmable EEPROM is
organized as 7 pages of 16 bytes each with 64bit
unique number. Requires OverDrive Speed to talk to.
config [31mCONFIG_W1_SLAVE_DS2431[0m
tristate "1kb EEPROM family support (DS2431)"
help
Say Y here if you want to use a 1-wire
1kb EEPROM family device (DS2431)
config [31mCONFIG_W1_SLAVE_DS2433[0m
tristate "4kb EEPROM family support (DS2433)"
help
Say Y here if you want to use a 1-wire
4kb EEPROM family device (DS2433).
config [31mCONFIG_W1_SLAVE_DS2433_CRC[0m
bool "Protect DS2433 data with a CRC16"
depends on [31mCONFIG_W1_SLAVE_DS2433[0m
select [31mCONFIG_CRC16[0m
help
Say Y here to protect DS2433 data with a [31mCONFIG_CRC16[0m.
Each block has 30 bytes of data and a two byte [31mCONFIG_CRC16[0m.
Full block writes are only allowed if the CRC is valid.
config [31mCONFIG_W1_SLAVE_DS2438[0m
tristate "DS2438 Smart Battery Monitor 0x26 family support"
help
Say Y here if you want to use a 1-wire
DS2438 Smart Battery Monitor device support
config [31mCONFIG_W1_SLAVE_DS250X[0m
tristate "512b/1kb/16kb EPROM family support"
select [31mCONFIG_CRC16[0m
help
Say Y here if you want to use a 1-wire
512b/1kb/16kb EPROM family device (DS250x).
config [31mCONFIG_W1_SLAVE_DS2780[0m
tristate "Dallas 2780 battery monitor chip"
help
If you enable this you will have the DS2780 battery monitor
chip support.
The battery monitor chip is used in many batteries/devices
as the one who is responsible for charging/discharging/monitoring
Li+ batteries.
If you are unsure, say N.
config [31mCONFIG_W1_SLAVE_DS2781[0m
tristate "Dallas 2781 battery monitor chip"
help
If you enable this you will have the DS2781 battery monitor
chip support.
The battery monitor chip is used in many batteries/devices
as the one who is responsible for charging/discharging/monitoring
Li+ batteries.
If you are unsure, say N.
config [31mCONFIG_W1_SLAVE_DS28E04[0m
tristate "4096-Bit Addressable 1-Wire EEPROM with PIO (DS28E04-100)"
select [31mCONFIG_CRC16[0m
help
If you enable this you will have the DS28E04-100
chip support.
Say Y here if you want to use a 1-wire
4kb EEPROM with PIO family device (DS28E04).
If you are unsure, say N.
config [31mCONFIG_W1_SLAVE_DS28E17[0m
tristate "1-wire-to-I2C master bridge (DS28E17)"
select [31mCONFIG_CRC16[0m
depends on [31mCONFIG_I2C[0m
help
Say Y here if you want to use the DS28E17 1-wire-to-[31mCONFIG_I2C[0m master bridge.
For each DS28E17 detected, a new [31mCONFIG_I2C[0m adapter is created within the
kernel. [31mCONFIG_I2C[0m devices on that bus can be configured to be used by the
kernel and userspace tools as on any other "native" [31mCONFIG_I2C[0m bus.
This driver is also available as a module. If so, the module
will be called w1_ds28e17.
If you are unsure, say N.
endmenu