^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # 1-wire slaves configuration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) menu "1-wire Slaves"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) config W1_SLAVE_THERM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) tristate "Thermal family implementation"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) Say Y here if you want to connect 1-wire thermal sensors to your
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) wire.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) config W1_SLAVE_SMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) tristate "Simple 64bit memory family implementation"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) Say Y here if you want to connect 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) simple 64bit memory rom(ds2401/ds2411/ds1990*) to your wire.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) config W1_SLAVE_DS2405
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) tristate "DS2405 Addressable Switch"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) Say Y or M here if you want to use a DS2405 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) single-channel addressable switch.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) This device can also work as a single-channel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) binary remote sensor.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) config W1_SLAVE_DS2408
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) tristate "8-Channel Addressable Switch (IO Expander) 0x29 family support (DS2408)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) DS2408 8-Channel Addressable Switch device support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) config W1_SLAVE_DS2408_READBACK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) bool "Read-back values written to DS2408's output register"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) depends on W1_SLAVE_DS2408
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) Enabling this will cause the driver to read back the values written
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) to the chip's output register in order to detect errors.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) This is slower but useful when debugging chips and/or busses.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) config W1_SLAVE_DS2413
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) tristate "Dual Channel Addressable Switch 0x3a family support (DS2413)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) DS2413 Dual Channel Addressable Switch device support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) config W1_SLAVE_DS2406
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) tristate "Dual Channel Addressable Switch 0x12 family support (DS2406)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) Say Y or M here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) DS2406 Dual Channel Addressable Switch. EPROM read/write
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) support for these devices is not implemented.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) config W1_SLAVE_DS2423
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) tristate "Counter 1-wire device (DS2423)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) If you enable this you can read the counter values available
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) in the DS2423 chipset from the w1_slave file under the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) sys file system.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) counter family device (DS2423).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) config W1_SLAVE_DS2805
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) tristate "112-byte EEPROM support (DS28E05)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) is a 112-byte user-programmable EEPROM is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) organized as 7 pages of 16 bytes each with 64bit
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) unique number. Requires OverDrive Speed to talk to.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) config W1_SLAVE_DS2430
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) tristate "256b EEPROM family support (DS2430)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) Say Y here if you want to use a 1-wire 256bit EEPROM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) family device (DS2430).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) This EEPROM is organized as one page of 32 bytes for random
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) access.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) config W1_SLAVE_DS2431
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) tristate "1kb EEPROM family support (DS2431)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) 1kb EEPROM family device (DS2431)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) config W1_SLAVE_DS2433
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) tristate "4kb EEPROM family support (DS2433)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) 4kb EEPROM family device (DS2433).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) config W1_SLAVE_DS2433_CRC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) bool "Protect DS2433 data with a CRC16"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) depends on W1_SLAVE_DS2433
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) Say Y here to protect DS2433 data with a CRC16.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) Each block has 30 bytes of data and a two byte CRC16.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) Full block writes are only allowed if the CRC is valid.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) config W1_SLAVE_DS2438
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) tristate "DS2438 Smart Battery Monitor 0x26 family support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) DS2438 Smart Battery Monitor device support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) config W1_SLAVE_DS250X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) tristate "512b/1kb/16kb EPROM family support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 512b/1kb/16kb EPROM family device (DS250x).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) config W1_SLAVE_DS2780
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) tristate "Dallas 2780 battery monitor chip"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) If you enable this you will have the DS2780 battery monitor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) chip support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) The battery monitor chip is used in many batteries/devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) as the one who is responsible for charging/discharging/monitoring
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) Li+ batteries.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) If you are unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) config W1_SLAVE_DS2781
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) tristate "Dallas 2781 battery monitor chip"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) If you enable this you will have the DS2781 battery monitor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) chip support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) The battery monitor chip is used in many batteries/devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) as the one who is responsible for charging/discharging/monitoring
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) Li+ batteries.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) If you are unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) config W1_SLAVE_DS28E04
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) tristate "4096-Bit Addressable 1-Wire EEPROM with PIO (DS28E04-100)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) If you enable this you will have the DS28E04-100
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) chip support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) Say Y here if you want to use a 1-wire
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 4kb EEPROM with PIO family device (DS28E04).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) If you are unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) config W1_SLAVE_DS28E17
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) tristate "1-wire-to-I2C master bridge (DS28E17)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) select CRC16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) depends on I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) Say Y here if you want to use the DS28E17 1-wire-to-I2C master bridge.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) For each DS28E17 detected, a new I2C adapter is created within the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) kernel. I2C devices on that bus can be configured to be used by the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) kernel and userspace tools as on any other "native" I2C bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) This driver is also available as a module. If so, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) will be called w1_ds28e17.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) If you are unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) endmenu