hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
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
# SPDX-License-Identifier: GPL-2.0-only
menuconfig NVMEM
   bool "NVMEM Support"
   help
     Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
 
     This framework is designed to provide a generic interface to NVMEM
     from both the Linux Kernel and the userspace.
 
     If unsure, say no.
 
if NVMEM
 
config NVMEM_SYSFS
   bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
   depends on SYSFS
   default y
   help
    Say Y here to add a sysfs interface for NVMEM.
 
    This interface is mostly used by userspace applications to
    read/write directly into nvmem.
 
config NVMEM_IMX_IIM
   tristate "i.MX IC Identification Module support"
   depends on ARCH_MXC || COMPILE_TEST
   help
     This is a driver for the IC Identification Module (IIM) available on
     i.MX SoCs, providing access to 4 Kbits of programmable
     eFuses.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-imx-iim.
 
config NVMEM_IMX_OCOTP
   tristate "i.MX 6/7/8 On-Chip OTP Controller support"
   depends on ARCH_MXC || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a driver for the On-Chip OTP Controller (OCOTP) available on
     i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
     eFuses.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-imx-ocotp.
 
config NVMEM_IMX_OCOTP_SCU
   tristate "i.MX8 SCU On-Chip OTP Controller support"
   depends on IMX_SCU
   depends on HAVE_ARM_SMCCC
   help
     This is a driver for the SCU On-Chip OTP Controller (OCOTP)
     available on i.MX8 SoCs.
 
config JZ4780_EFUSE
   tristate "JZ4780 EFUSE Memory Support"
   depends on MACH_INGENIC || COMPILE_TEST
   depends on HAS_IOMEM
   depends on OF
   select REGMAP_MMIO
   help
     Say Y here to include support for JZ4780 efuse memory found on
     all JZ4780 SoC based devices.
     To compile this driver as a module, choose M here: the module
     will be called nvmem_jz4780_efuse.
 
config NVMEM_LPC18XX_EEPROM
   tristate "NXP LPC18XX EEPROM Memory Support"
   depends on ARCH_LPC18XX || COMPILE_TEST
   depends on HAS_IOMEM
   help
     Say Y here to include support for NXP LPC18xx EEPROM memory found in
     NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
     To compile this driver as a module, choose M here: the module
     will be called nvmem_lpc18xx_eeprom.
 
config NVMEM_LPC18XX_OTP
   tristate "NXP LPC18XX OTP Memory Support"
   depends on ARCH_LPC18XX || COMPILE_TEST
   depends on HAS_IOMEM
   help
     Say Y here to include support for NXP LPC18xx OTP memory found on
     all LPC18xx and LPC43xx devices.
     To compile this driver as a module, choose M here: the module
     will be called nvmem_lpc18xx_otp.
 
config NVMEM_MXS_OCOTP
   tristate "Freescale MXS On-Chip OTP Memory Support"
   depends on ARCH_MXS || COMPILE_TEST
   depends on HAS_IOMEM
   help
     If you say Y here, you will get readonly access to the
     One Time Programmable memory pages that are stored
     on the Freescale i.MX23/i.MX28 processor.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-mxs-ocotp.
 
config MTK_EFUSE
   tristate "Mediatek SoCs EFUSE support"
   depends on ARCH_MEDIATEK || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a driver to access hardware related data like sensor
     calibration, HDMI impedance etc.
 
     This driver can also be built as a module. If so, the module
     will be called efuse-mtk.
 
config QCOM_QFPROM
   tristate "QCOM QFPROM Support"
   depends on ARCH_QCOM || COMPILE_TEST
   depends on HAS_IOMEM
   help
     Say y here to enable QFPROM support. The QFPROM provides access
     functions for QFPROM data to rest of the drivers via nvmem interface.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_qfprom.
 
config NVMEM_SPMI_SDAM
   tristate "SPMI SDAM Support"
   depends on SPMI
   help
     This driver supports the Shared Direct Access Memory Module on
     Qualcomm Technologies, Inc. PMICs. It provides the clients
     an interface to read/write to the SDAM module's shared memory.
 
config RK628_EFUSE
   tristate "RK628 eFuse Support"
   depends on ARCH_ROCKCHIP || COMPILE_TEST
   depends on HAS_IOMEM
   depends on MFD_RK628
   help
     This is a simple drive to dump specified values of Rk628 SoC
     from eFuse, such as cpu-leakage.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_rk628_efuse.
 
config ROCKCHIP_EFUSE
   tristate "Rockchip eFuse Support"
   depends on ARCH_ROCKCHIP || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a simple drive to dump specified values of Rockchip SoC
     from eFuse, such as cpu-leakage.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_rockchip_efuse.
 
config ROCKCHIP_OTP
   tristate "Rockchip OTP controller support"
   depends on ARCH_ROCKCHIP || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a simple drive to dump specified values of Rockchip SoC
     from otp, such as cpu-leakage.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_rockchip_otp.
 
config NVMEM_ROCKCHIP_SEC_OTP
   tristate "Rockchip Secure OTP controller support"
   depends on ARCH_ROCKCHIP || COMPILE_TEST
   depends on TEE && OPTEE
   help
     This is a simple drive to read and write non-protected
     oem zone in secure otp.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-rockchip-secure-otp.
 
config NVMEM_BCM_OCOTP
   tristate "Broadcom On-Chip OTP Controller support"
   depends on ARCH_BCM_IPROC || COMPILE_TEST
   depends on HAS_IOMEM
   default ARCH_BCM_IPROC
   help
     Say y here to enable read/write access to the Broadcom OTP
     controller.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-bcm-ocotp.
 
config NVMEM_STM32_ROMEM
   tristate "STMicroelectronics STM32 factory-programmed memory support"
   depends on ARCH_STM32 || COMPILE_TEST
   help
     Say y here to enable read-only access for STMicroelectronics STM32
     factory-programmed memory area.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-stm32-romem.
 
config NVMEM_SUNXI_SID
   tristate "Allwinner SoCs SID support"
   depends on ARCH_SUNXI
   help
     This is a driver for the 'security ID' available on various Allwinner
     devices.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_sunxi_sid.
 
config UNIPHIER_EFUSE
   tristate "UniPhier SoCs eFuse support"
   depends on ARCH_UNIPHIER || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a simple driver to dump specified values of UniPhier SoC
     from eFuse.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-uniphier-efuse.
 
config NVMEM_VF610_OCOTP
   tristate "VF610 SoC OCOTP support"
   depends on SOC_VF610 || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a driver for the 'OCOTP' peripheral available on Vybrid
     devices like VF5xx and VF6xx.
 
     This driver can also be build as a module. If so, the module will
     be called nvmem-vf610-ocotp.
 
config MESON_EFUSE
   tristate "Amlogic Meson GX eFuse Support"
   depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
   help
     This is a driver to retrieve specific values from the eFuse found on
     the Amlogic Meson GX SoCs.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_meson_efuse.
 
config MESON_MX_EFUSE
   tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
   depends on ARCH_MESON || COMPILE_TEST
   help
     This is a driver to retrieve specific values from the eFuse found on
     the Amlogic Meson6, Meson8 and Meson8b SoCs.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem_meson_mx_efuse.
 
config NVMEM_SNVS_LPGPR
   tristate "Support for Low Power General Purpose Register"
   depends on ARCH_MXC || COMPILE_TEST
   help
     This is a driver for Low Power General Purpose Register (LPGPR) available on
     i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-snvs-lpgpr.
 
config RAVE_SP_EEPROM
   tristate "Rave SP EEPROM Support"
   depends on RAVE_SP_CORE
   help
     Say y here to enable Rave SP EEPROM support.
 
config SC27XX_EFUSE
   tristate "Spreadtrum SC27XX eFuse Support"
   depends on MFD_SC27XX_PMIC || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a simple driver to dump specified values of Spreadtrum
     SC27XX PMICs from eFuse.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-sc27xx-efuse.
 
config NVMEM_ZYNQMP
   bool "Xilinx ZYNQMP SoC nvmem firmware support"
   depends on ARCH_ZYNQMP
   help
     This is a driver to access hardware related data like
     soc revision, IDCODE... etc by using the firmware
     interface.
 
     If sure, say yes. If unsure, say no.
 
config SPRD_EFUSE
   tristate "Spreadtrum SoC eFuse Support"
   depends on ARCH_SPRD || COMPILE_TEST
   depends on HAS_IOMEM
   help
     This is a simple driver to dump specified values of Spreadtrum
     SoCs from eFuse.
 
     This driver can also be built as a module. If so, the module
     will be called nvmem-sprd-efuse.
 
endif