hc
2024-01-05 071106ecf68c401173c58808b1cf5f68cc50d390
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
#
# Multifunction miscellaneous devices
#
 
menu "Multifunction device drivers"
 
config MISC
   bool "Enable Driver Model for Misc drivers"
   depends on DM
   help
     Enable driver model for miscellaneous devices. This class is
     used only for those do not fit other more general classes. A
     set of generic read, write and ioctl methods may be used to
     access the device.
 
config SPL_MISC
   bool "Enable Driver Model for Misc drivers in SPL"
   depends on SPL_DM
   help
     Enable driver model for miscellaneous devices. This class is
     used only for those do not fit other more general classes. A
     set of generic read, write and ioctl methods may be used to
     access the device.
 
config TPL_MISC
   bool "Enable Driver Model for Misc drivers in TPL"
   depends on TPL_DM
   help
     Enable driver model for miscellaneous devices. This class is
     used only for those do not fit other more general classes. A
     set of generic read, write and ioctl methods may be used to
     access the device.
 
config MISC_DECOMPRESS
   bool "Enable misc decompress driver support"
   depends on MISC
   help
     Enable misc decompress driver support.
 
config SPL_MISC_DECOMPRESS
   bool "Enable misc decompress driver support in SPL"
   depends on SPL_MISC
   help
     Enable misc decompress driver support in spl.
 
config ALTERA_SYSID
   bool "Altera Sysid support"
   depends on MISC
   help
     Select this to enable a sysid for Altera devices. Please find
     details on the "Embedded Peripherals IP User Guide" of Altera.
 
config ATSHA204A
   bool "Support for Atmel ATSHA204A module"
   depends on MISC
   help
      Enable support for I2C connected Atmel's ATSHA204A
      CryptoAuthentication module found for example on the Turris Omnia
      board.
 
config ROCKCHIP_EFUSE
        bool "Rockchip e-fuse support"
   depends on MISC
   help
     Enable (read-only) access for the e-fuse block found in Rockchip
     SoCs: accesses can either be made using byte addressing and a length
     or through child-nodes that are generated based on the e-fuse map
     retrieved from the DTS.
 
     This driver currently supports the RK3399 only, but can easily be
     extended (by porting the read function from the Linux kernel sources)
     to support other recent Rockchip devices.
 
config ROCKCHIP_OTP
   bool "Rockchip OTP Support"
   depends on MISC
   help
     This is a simple drive to dump specified values of Rockchip SoC
     from otp, such as cpu-leakage.
 
config ROCKCHIP_HW_DECOMPRESS
   bool "Rockchip HardWare Decompress Support"
   depends on MISC_DECOMPRESS
   help
     This driver support Decompress IP built-in Rockchip SoC, support
     LZ4, GZIP, PNG, ZLIB.
 
config SPL_ROCKCHIP_HW_DECOMPRESS
   bool "Rockchip HardWare Decompress Support"
   depends on SPL_MISC_DECOMPRESS
   help
     This driver support Decompress IP built-in Rockchip SoC, support
     LZ4, GZIP, PNG, ZLIB.
 
config ROCKCHIP_SECURE_OTP
   bool "Rockchip Secure OTP Support"
   depends on MISC && !OPTEE_CLIENT
   help
     Support read & write secure otp.
 
config SPL_ROCKCHIP_SECURE_OTP
   bool "Rockchip Secure OTP Support in spl"
   depends on SPL_MISC
   help
     Support read & write secure otp in spl.
 
config CMD_CROS_EC
   bool "Enable crosec command"
   depends on CROS_EC
   help
     Enable command-line access to the Chrome OS EC (Embedded
     Controller). This provides the 'crosec' command which has
     a number of sub-commands for performing EC tasks such as
     updating its flash, accessing a small saved context area
     and talking to the I2C bus behind the EC (if there is one).
 
config CROS_EC
   bool "Enable Chrome OS EC"
   help
     Enable access to the Chrome OS EC. This is a separate
     microcontroller typically available on a SPI bus on Chromebooks. It
     provides access to the keyboard, some internal storage and may
     control access to the battery and main PMIC depending on the
     device. You can use the 'crosec' command to access it.
 
config CROS_EC_I2C
   bool "Enable Chrome OS EC I2C driver"
   depends on CROS_EC
   help
     Enable I2C access to the Chrome OS EC. This is used on older
     ARM Chromebooks such as snow and spring before the standard bus
     changed to SPI. The EC will accept commands across the I2C using
     a special message protocol, and provide responses.
 
config CROS_EC_LPC
   bool "Enable Chrome OS EC LPC driver"
   depends on CROS_EC
   help
     Enable I2C access to the Chrome OS EC. This is used on x86
     Chromebooks such as link and falco. The keyboard is provided
     through a legacy port interface, so on x86 machines the main
     function of the EC is power and thermal management.
 
config CROS_EC_SANDBOX
   bool "Enable Chrome OS EC sandbox driver"
   depends on CROS_EC && SANDBOX
   help
     Enable a sandbox emulation of the Chrome OS EC. This supports
     keyboard (use the -l flag to enable the LCD), verified boot context,
     EC flash read/write/erase support and a few other things. It is
     enough to perform a Chrome OS verified boot on sandbox.
 
config CROS_EC_SPI
   bool "Enable Chrome OS EC SPI driver"
   depends on CROS_EC
   help
     Enable SPI access to the Chrome OS EC. This is used on newer
     ARM Chromebooks such as pit, pi and nyan-big. The SPI interface
     provides a faster and more robust interface than I2C but the bugs
     are less interesting.
 
config DS4510
   bool "Enable support for DS4510 CPU supervisor"
   help
     Enable support for the Maxim DS4510 CPU supervisor. It has an
     integrated 64-byte EEPROM, four programmable non-volatile I/O pins
     and a configurable timer for the supervisor function. The device is
     connected over I2C.
 
config FSL_SEC_MON
   bool "Enable FSL SEC_MON Driver"
   help
     Freescale Security Monitor block is responsible for monitoring
     system states.
     Security Monitor can be transitioned on any security failures,
     like software violations or hardware security violations.
 
config MXC_OCOTP
   bool "Enable MXC OCOTP Driver"
   help
     If you say Y here, you will get support for the One Time
     Programmable memory pages that are stored on the some
     Freescale i.MX processors.
 
config NUVOTON_NCT6102D
   bool "Enable Nuvoton NCT6102D Super I/O driver"
   help
     If you say Y here, you will get support for the Nuvoton
     NCT6102D Super I/O driver. This can be used to enable or
     disable the legacy UART, the watchdog or other devices
     in the Nuvoton Super IO chips on X86 platforms.
 
config PWRSEQ
   bool "Enable power-sequencing drivers"
   depends on DM
   help
     Power-sequencing drivers provide support for controlling power for
     devices. They are typically referenced by a phandle from another
     device. When the device is started up, its power sequence can be
     initiated.
 
config SPL_PWRSEQ
   bool "Enable power-sequencing drivers for SPL"
   depends on PWRSEQ
   help
     Power-sequencing drivers provide support for controlling power for
     devices. They are typically referenced by a phandle from another
     device. When the device is started up, its power sequence can be
     initiated.
 
config PCA9551_LED
   bool "Enable PCA9551 LED driver"
   help
     Enable driver for PCA9551 LED controller. This controller
     is connected via I2C. So I2C needs to be enabled.
 
config PCA9551_I2C_ADDR
   hex "I2C address of PCA9551 LED controller"
   depends on PCA9551_LED
   default 0x60
   help
     The I2C address of the PCA9551 LED controller.
 
config TEGRA_CAR
   bool "Enable support for the Tegra CAR driver"
   depends on TEGRA_NO_BPMP
   help
     The Tegra CAR (Clock and Reset Controller) is a HW module that
     controls almost all clocks and resets in a Tegra SoC.
 
config TEGRA186_BPMP
   bool "Enable support for the Tegra186 BPMP driver"
   depends on TEGRA186
   help
     The Tegra BPMP (Boot and Power Management Processor) is a separate
     auxiliary CPU embedded into Tegra to perform power management work,
     and controls related features such as clocks, resets, power domains,
     PMIC I2C bus, etc. This driver provides the core low-level
     communication path by which feature-specific drivers (such as clock)
     can make requests to the BPMP. This driver is similar to an MFD
     driver in the Linux kernel.
 
config WINBOND_W83627
   bool "Enable Winbond Super I/O driver"
   help
     If you say Y here, you will get support for the Winbond
     W83627 Super I/O driver. This can be used to enable the
     legacy UART or other devices in the Winbond Super IO chips
     on X86 platforms.
 
config QFW
   bool
   help
     Hidden option to enable QEMU fw_cfg interface. This will be selected by
     either CONFIG_CMD_QFW or CONFIG_GENERATE_ACPI_TABLE.
 
config I2C_EEPROM
   bool "Enable driver for generic I2C-attached EEPROMs"
   depends on MISC
   help
     Enable a generic driver for EEPROMs attached via I2C.
 
if I2C_EEPROM
 
config SYS_I2C_EEPROM_ADDR
   hex "Chip address of the EEPROM device"
   default 0
 
config SYS_I2C_EEPROM_BUS
   int "I2C bus of the EEPROM device."
   default 0
 
config SYS_EEPROM_SIZE
   int "Size in bytes of the EEPROM device"
   default 256
 
config SYS_EEPROM_PAGE_WRITE_BITS
   int "Number of bits used to address bytes in a single page"
   default 0
   help
     The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
     A 64 byte page, for example would require six bits.
 
config SYS_EEPROM_PAGE_WRITE_DELAY_MS
   int "Number of milliseconds to delay between page writes"
   default 0
 
config SYS_I2C_EEPROM_ADDR_LEN
   int "Length in bytes of the EEPROM memory array address"
   default 1
   help
     Note: This is NOT the chip address length!
 
config SYS_I2C_EEPROM_ADDR_OVERFLOW
   hex "EEPROM Address Overflow"
   default 0
   help
     EEPROM chips that implement "address overflow" are ones
     like Catalyst 24WC04/08/16 which has 9/10/11 bits of
     address and the extra bits end up in the "chip address" bit
     slots. This makes a 24WC08 (1Kbyte) chip look like four 256
     byte chips.
 
endif
 
 
endmenu