Linux-libre 5.4.48-gnu
[librecmc/linux-libre.git] / drivers / w1 / slaves / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # 1-wire slaves configuration
4 #
5
6 menu "1-wire Slaves"
7
8 config 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
14 config 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
20 config 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
28 config 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
34 config 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
44 config 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
50 config 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
58 config 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
69 config 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
77 config 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
83 config 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
89 config 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
98 config 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
104 config W1_SLAVE_DS250X
105         tristate "512b/1kb/16kb EPROM family support"
106         select CRC16
107         help
108           Say Y here if you want to use a 1-wire
109           512b/1kb/16kb EPROM family device (DS250x).
110
111 config W1_SLAVE_DS2780
112         tristate "Dallas 2780 battery monitor chip"
113         help
114           If you enable this you will have the DS2780 battery monitor
115           chip support.
116
117           The battery monitor chip is used in many batteries/devices
118           as the one who is responsible for charging/discharging/monitoring
119           Li+ batteries.
120
121           If you are unsure, say N.
122
123 config W1_SLAVE_DS2781
124         tristate "Dallas 2781 battery monitor chip"
125         help
126           If you enable this you will have the DS2781 battery monitor
127           chip support.
128
129           The battery monitor chip is used in many batteries/devices
130           as the one who is responsible for charging/discharging/monitoring
131           Li+ batteries.
132
133           If you are unsure, say N.
134
135 config W1_SLAVE_DS28E04
136         tristate "4096-Bit Addressable 1-Wire EEPROM with PIO (DS28E04-100)"
137         select CRC16
138         help
139           If you enable this you will have the DS28E04-100
140           chip support.
141
142           Say Y here if you want to use a 1-wire
143           4kb EEPROM with PIO family device (DS28E04).
144
145           If you are unsure, say N.
146
147 config W1_SLAVE_DS28E17
148         tristate "1-wire-to-I2C master bridge (DS28E17)"
149         select CRC16
150         depends on I2C
151         help
152           Say Y here if you want to use the DS28E17 1-wire-to-I2C master bridge.
153           For each DS28E17 detected, a new I2C adapter is created within the
154           kernel. I2C devices on that bus can be configured to be used by the
155           kernel and userspace tools as on any other "native" I2C bus.
156
157           This driver is also available as a module. If so, the module
158           will be called w1_ds28e17.
159
160           If you are unsure, say N.
161
162 endmenu