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