xref: /openbmc/linux/drivers/w1/slaves/Kconfig (revision 4f5a5bad)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2bd529cfbSEvgeniy Polyakov#
3bd529cfbSEvgeniy Polyakov# 1-wire slaves configuration
4bd529cfbSEvgeniy Polyakov#
5bd529cfbSEvgeniy Polyakov
6bd529cfbSEvgeniy Polyakovmenu "1-wire Slaves"
7bd529cfbSEvgeniy Polyakov
8bd529cfbSEvgeniy Polyakovconfig W1_SLAVE_THERM
9bd529cfbSEvgeniy Polyakov	tristate "Thermal family implementation"
10bd529cfbSEvgeniy Polyakov	help
1189040b21SEvgeniy Polyakov	  Say Y here if you want to connect 1-wire thermal sensors to your
12bd529cfbSEvgeniy Polyakov	  wire.
13bd529cfbSEvgeniy Polyakov
14bd529cfbSEvgeniy Polyakovconfig W1_SLAVE_SMEM
15bd529cfbSEvgeniy Polyakov	tristate "Simple 64bit memory family implementation"
16bd529cfbSEvgeniy Polyakov	help
17bd529cfbSEvgeniy Polyakov	  Say Y here if you want to connect 1-wire
1889040b21SEvgeniy Polyakov	  simple 64bit memory rom(ds2401/ds2411/ds1990*) to your wire.
19bd529cfbSEvgeniy Polyakov
20dd6478d6SMaciej S. Szmigieroconfig W1_SLAVE_DS2405
21dd6478d6SMaciej S. Szmigiero	tristate "DS2405 Addressable Switch"
22dd6478d6SMaciej S. Szmigiero	help
23dd6478d6SMaciej S. Szmigiero	  Say Y or M here if you want to use a DS2405 1-wire
24dd6478d6SMaciej S. Szmigiero	  single-channel addressable switch.
25dd6478d6SMaciej S. Szmigiero	  This device can also work as a single-channel
26dd6478d6SMaciej S. Szmigiero	  binary remote sensor.
27dd6478d6SMaciej S. Szmigiero
2889610274SJean-François Dagenaisconfig W1_SLAVE_DS2408
2989610274SJean-François Dagenais	tristate "8-Channel Addressable Switch (IO Expander) 0x29 family support (DS2408)"
3089610274SJean-François Dagenais	help
3189610274SJean-François Dagenais	  Say Y here if you want to use a 1-wire
3289610274SJean-François Dagenais	  DS2408 8-Channel Addressable Switch device support
3389610274SJean-François Dagenais
34aceca285SJean-Francois Dagenaisconfig W1_SLAVE_DS2408_READBACK
35aceca285SJean-Francois Dagenais	bool "Read-back values written to DS2408's output register"
36aceca285SJean-Francois Dagenais	depends on W1_SLAVE_DS2408
37aceca285SJean-Francois Dagenais	default y
38aceca285SJean-Francois Dagenais	help
39aceca285SJean-Francois Dagenais	  Enabling this will cause the driver to read back the values written
40aceca285SJean-Francois Dagenais	  to the chip's output register in order to detect errors.
41aceca285SJean-Francois Dagenais
42aceca285SJean-Francois Dagenais	  This is slower but useful when debugging chips and/or busses.
43aceca285SJean-Francois Dagenais
4431b4ca3eSMariusz Bialonczykconfig W1_SLAVE_DS2413
4531b4ca3eSMariusz Bialonczyk	tristate "Dual Channel Addressable Switch 0x3a family support (DS2413)"
4631b4ca3eSMariusz Bialonczyk	help
4731b4ca3eSMariusz Bialonczyk	  Say Y here if you want to use a 1-wire
4831b4ca3eSMariusz Bialonczyk	  DS2413 Dual Channel Addressable Switch device support
4931b4ca3eSMariusz Bialonczyk
5094859308SScott Alfterconfig W1_SLAVE_DS2406
5194859308SScott Alfter	tristate "Dual Channel Addressable Switch 0x12 family support (DS2406)"
526b5fa776SArnd Bergmann	select CRC16
5394859308SScott Alfter	help
5494859308SScott Alfter	  Say Y or M here if you want to use a 1-wire
5594859308SScott Alfter	  DS2406 Dual Channel Addressable Switch.  EPROM read/write
5694859308SScott Alfter	  support for these devices is not implemented.
5794859308SScott Alfter
5817fecb55SMika Laitioconfig W1_SLAVE_DS2423
5917fecb55SMika Laitio	tristate "Counter 1-wire device (DS2423)"
6017fecb55SMika Laitio	select CRC16
6117fecb55SMika Laitio	help
6217fecb55SMika Laitio	  If you enable this you can read the counter values available
6317fecb55SMika Laitio	  in the DS2423 chipset from the w1_slave file under the
6417fecb55SMika Laitio	  sys file system.
6517fecb55SMika Laitio
6617fecb55SMika Laitio	  Say Y here if you want to use a 1-wire
6717fecb55SMika Laitio	  counter family device (DS2423).
6817fecb55SMika Laitio
69f6887531SAndrew Worsleyconfig W1_SLAVE_DS2805
70f6887531SAndrew Worsley	tristate "112-byte EEPROM support (DS28E05)"
71f6887531SAndrew Worsley	help
72f6887531SAndrew Worsley	  Say Y here if you want to use a 1-wire
73f6887531SAndrew Worsley	  is a 112-byte user-programmable EEPROM is
74f6887531SAndrew Worsley	  organized as 7 pages of 16 bytes each with 64bit
75f6887531SAndrew Worsley	  unique number. Requires OverDrive Speed to talk to.
76f6887531SAndrew Worsley
77c6bf3842SAngelo Dureghelloconfig W1_SLAVE_DS2430
78c6bf3842SAngelo Dureghello	tristate "256b EEPROM family support (DS2430)"
79c6bf3842SAngelo Dureghello	help
80c6bf3842SAngelo Dureghello	  Say Y here if you want to use a 1-wire 256bit EEPROM
81c6bf3842SAngelo Dureghello	  family device (DS2430).
82c6bf3842SAngelo Dureghello	  This EEPROM is organized as one page of 32 bytes for random
83c6bf3842SAngelo Dureghello	  access.
84c6bf3842SAngelo Dureghello
858ca2f156SHerton Ronaldo Krzesinskiconfig W1_SLAVE_DS2431
868ca2f156SHerton Ronaldo Krzesinski	tristate "1kb EEPROM family support (DS2431)"
878ca2f156SHerton Ronaldo Krzesinski	help
888ca2f156SHerton Ronaldo Krzesinski	  Say Y here if you want to use a 1-wire
898ca2f156SHerton Ronaldo Krzesinski	  1kb EEPROM family device (DS2431)
908ca2f156SHerton Ronaldo Krzesinski
91bd529cfbSEvgeniy Polyakovconfig W1_SLAVE_DS2433
92bd529cfbSEvgeniy Polyakov	tristate "4kb EEPROM family support (DS2433)"
93bd529cfbSEvgeniy Polyakov	help
94bd529cfbSEvgeniy Polyakov	  Say Y here if you want to use a 1-wire
95bd529cfbSEvgeniy Polyakov	  4kb EEPROM family device (DS2433).
96bd529cfbSEvgeniy Polyakov
97bd529cfbSEvgeniy Polyakovconfig W1_SLAVE_DS2433_CRC
98bd529cfbSEvgeniy Polyakov	bool "Protect DS2433 data with a CRC16"
99f621e1c7SJean-Luc Leger	depends on W1_SLAVE_DS2433
100bd529cfbSEvgeniy Polyakov	select CRC16
101bd529cfbSEvgeniy Polyakov	help
102bd529cfbSEvgeniy Polyakov	  Say Y here to protect DS2433 data with a CRC16.
103bd529cfbSEvgeniy Polyakov	  Each block has 30 bytes of data and a two byte CRC16.
104bd529cfbSEvgeniy Polyakov	  Full block writes are only allowed if the CRC is valid.
105bd529cfbSEvgeniy Polyakov
106e3af95e6SMariusz Bialonczykconfig W1_SLAVE_DS2438
107e3af95e6SMariusz Bialonczyk	tristate "DS2438 Smart Battery Monitor 0x26 family support"
108e3af95e6SMariusz Bialonczyk	help
109e3af95e6SMariusz Bialonczyk	  Say Y here if you want to use a 1-wire
110e3af95e6SMariusz Bialonczyk	  DS2438 Smart Battery Monitor device support
111e3af95e6SMariusz Bialonczyk
11225ec8710SThomas Bogendoerferconfig W1_SLAVE_DS250X
11325ec8710SThomas Bogendoerfer	tristate "512b/1kb/16kb EPROM family support"
114b058b255SYueHaibing	select CRC16
11525ec8710SThomas Bogendoerfer	help
11625ec8710SThomas Bogendoerfer	  Say Y here if you want to use a 1-wire
11725ec8710SThomas Bogendoerfer	  512b/1kb/16kb EPROM family device (DS250x).
11825ec8710SThomas Bogendoerfer
119275ac746SClifton Barnesconfig W1_SLAVE_DS2780
120275ac746SClifton Barnes	tristate "Dallas 2780 battery monitor chip"
121275ac746SClifton Barnes	help
122275ac746SClifton Barnes	  If you enable this you will have the DS2780 battery monitor
123275ac746SClifton Barnes	  chip support.
124275ac746SClifton Barnes
125275ac746SClifton Barnes	  The battery monitor chip is used in many batteries/devices
126275ac746SClifton Barnes	  as the one who is responsible for charging/discharging/monitoring
127275ac746SClifton Barnes	  Li+ batteries.
128275ac746SClifton Barnes
129275ac746SClifton Barnes	  If you are unsure, say N.
130275ac746SClifton Barnes
131fef37e9aSRenata Sayakhovaconfig W1_SLAVE_DS2781
132fef37e9aSRenata Sayakhova	tristate "Dallas 2781 battery monitor chip"
133fef37e9aSRenata Sayakhova	help
134fef37e9aSRenata Sayakhova	  If you enable this you will have the DS2781 battery monitor
135fef37e9aSRenata Sayakhova	  chip support.
136fef37e9aSRenata Sayakhova
137fef37e9aSRenata Sayakhova	  The battery monitor chip is used in many batteries/devices
138fef37e9aSRenata Sayakhova	  as the one who is responsible for charging/discharging/monitoring
139fef37e9aSRenata Sayakhova	  Li+ batteries.
140fef37e9aSRenata Sayakhova
141fef37e9aSRenata Sayakhova	  If you are unsure, say N.
142fef37e9aSRenata Sayakhova
143fbf7f7b4SMarkus Frankeconfig W1_SLAVE_DS28E04
144fbf7f7b4SMarkus Franke	tristate "4096-Bit Addressable 1-Wire EEPROM with PIO (DS28E04-100)"
145fbf7f7b4SMarkus Franke	select CRC16
146fbf7f7b4SMarkus Franke	help
147fbf7f7b4SMarkus Franke	  If you enable this you will have the DS28E04-100
148fbf7f7b4SMarkus Franke	  chip support.
149fbf7f7b4SMarkus Franke
150fbf7f7b4SMarkus Franke	  Say Y here if you want to use a 1-wire
151fbf7f7b4SMarkus Franke	  4kb EEPROM with PIO family device (DS28E04).
152fbf7f7b4SMarkus Franke
153fbf7f7b4SMarkus Franke	  If you are unsure, say N.
154fbf7f7b4SMarkus Franke
155ebc4768aSJan Kandzioraconfig W1_SLAVE_DS28E17
156ebc4768aSJan Kandziora	tristate "1-wire-to-I2C master bridge (DS28E17)"
157ebc4768aSJan Kandziora	select CRC16
158ebc4768aSJan Kandziora	depends on I2C
159ebc4768aSJan Kandziora	help
160ebc4768aSJan Kandziora	  Say Y here if you want to use the DS28E17 1-wire-to-I2C master bridge.
161ebc4768aSJan Kandziora	  For each DS28E17 detected, a new I2C adapter is created within the
162ebc4768aSJan Kandziora	  kernel. I2C devices on that bus can be configured to be used by the
163ebc4768aSJan Kandziora	  kernel and userspace tools as on any other "native" I2C bus.
164ebc4768aSJan Kandziora
165ebc4768aSJan Kandziora	  This driver is also available as a module. If so, the module
166ebc4768aSJan Kandziora	  will be called w1_ds28e17.
167ebc4768aSJan Kandziora
168ebc4768aSJan Kandziora	  If you are unsure, say N.
169ebc4768aSJan Kandziora
170bd529cfbSEvgeniy Polyakovendmenu
171