1 # SPDX-License-Identifier: GPL-2.0-only
5 Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
7 This framework is designed to provide a generic interface to NVMEM
8 from both the Linux Kernel and the userspace.
10 This driver can also be built as a module. If so, the module
11 will be called nvmem_core.
18 bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
22 Say Y here to add a sysfs interface for NVMEM.
24 This interface is mostly used by userspace applications to
25 read/write directly into nvmem.
28 tristate "i.MX IC Identification Module support"
29 depends on ARCH_MXC || COMPILE_TEST
31 This is a driver for the IC Identification Module (IIM) available on
32 i.MX SoCs, providing access to 4 Kbits of programmable
35 This driver can also be built as a module. If so, the module
36 will be called nvmem-imx-iim.
38 config NVMEM_IMX_OCOTP
39 tristate "i.MX 6/7/8 On-Chip OTP Controller support"
40 depends on ARCH_MXC || COMPILE_TEST
43 This is a driver for the On-Chip OTP Controller (OCOTP) available on
44 i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
47 This driver can also be built as a module. If so, the module
48 will be called nvmem-imx-ocotp.
50 config NVMEM_IMX_OCOTP_SCU
51 tristate "i.MX8 SCU On-Chip OTP Controller support"
53 depends on HAVE_ARM_SMCCC
55 This is a driver for the SCU On-Chip OTP Controller (OCOTP)
56 available on i.MX8 SoCs.
58 config NVMEM_LPC18XX_EEPROM
59 tristate "NXP LPC18XX EEPROM Memory Support"
60 depends on ARCH_LPC18XX || COMPILE_TEST
63 Say Y here to include support for NXP LPC18xx EEPROM memory found in
64 NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
65 To compile this driver as a module, choose M here: the module
66 will be called nvmem_lpc18xx_eeprom.
68 config NVMEM_LPC18XX_OTP
69 tristate "NXP LPC18XX OTP Memory Support"
70 depends on ARCH_LPC18XX || COMPILE_TEST
73 Say Y here to include support for NXP LPC18xx OTP memory found on
74 all LPC18xx and LPC43xx devices.
75 To compile this driver as a module, choose M here: the module
76 will be called nvmem_lpc18xx_otp.
78 config NVMEM_MXS_OCOTP
79 tristate "Freescale MXS On-Chip OTP Memory Support"
80 depends on ARCH_MXS || COMPILE_TEST
83 If you say Y here, you will get readonly access to the
84 One Time Programmable memory pages that are stored
85 on the Freescale i.MX23/i.MX28 processor.
87 This driver can also be built as a module. If so, the module
88 will be called nvmem-mxs-ocotp.
91 tristate "Mediatek SoCs EFUSE support"
92 depends on ARCH_MEDIATEK || COMPILE_TEST
95 This is a driver to access hardware related data like sensor
96 calibration, HDMI impedance etc.
98 This driver can also be built as a module. If so, the module
99 will be called efuse-mtk.
102 tristate "QCOM QFPROM Support"
103 depends on ARCH_QCOM || COMPILE_TEST
106 Say y here to enable QFPROM support. The QFPROM provides access
107 functions for QFPROM data to rest of the drivers via nvmem interface.
109 This driver can also be built as a module. If so, the module
110 will be called nvmem_qfprom.
112 config ROCKCHIP_EFUSE
113 tristate "Rockchip eFuse Support"
114 depends on ARCH_ROCKCHIP || COMPILE_TEST
117 This is a simple drive to dump specified values of Rockchip SoC
118 from eFuse, such as cpu-leakage.
120 This driver can also be built as a module. If so, the module
121 will be called nvmem_rockchip_efuse.
124 tristate "Rockchip OTP controller support"
125 depends on ARCH_ROCKCHIP || COMPILE_TEST
128 This is a simple drive to dump specified values of Rockchip SoC
129 from otp, such as cpu-leakage.
131 This driver can also be built as a module. If so, the module
132 will be called nvmem_rockchip_otp.
134 config NVMEM_BCM_OCOTP
135 tristate "Broadcom On-Chip OTP Controller support"
136 depends on ARCH_BCM_IPROC || COMPILE_TEST
138 default ARCH_BCM_IPROC
140 Say y here to enable read/write access to the Broadcom OTP
143 This driver can also be built as a module. If so, the module
144 will be called nvmem-bcm-ocotp.
146 config NVMEM_STM32_ROMEM
147 tristate "STMicroelectronics STM32 factory-programmed memory support"
148 depends on ARCH_STM32 || COMPILE_TEST
150 Say y here to enable read-only access for STMicroelectronics STM32
151 factory-programmed memory area.
153 This driver can also be built as a module. If so, the module
154 will be called nvmem-stm32-romem.
156 config NVMEM_SUNXI_SID
157 tristate "Allwinner SoCs SID support"
158 depends on ARCH_SUNXI
160 This is a driver for the 'security ID' available on various Allwinner
163 This driver can also be built as a module. If so, the module
164 will be called nvmem_sunxi_sid.
166 config UNIPHIER_EFUSE
167 tristate "UniPhier SoCs eFuse support"
168 depends on ARCH_UNIPHIER || COMPILE_TEST
171 This is a simple driver to dump specified values of UniPhier SoC
174 This driver can also be built as a module. If so, the module
175 will be called nvmem-uniphier-efuse.
177 config NVMEM_VF610_OCOTP
178 tristate "VF610 SoC OCOTP support"
179 depends on SOC_VF610 || COMPILE_TEST
182 This is a driver for the 'OCOTP' peripheral available on Vybrid
183 devices like VF5xx and VF6xx.
185 This driver can also be build as a module. If so, the module will
186 be called nvmem-vf610-ocotp.
189 tristate "Amlogic Meson GX eFuse Support"
190 depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
192 This is a driver to retrieve specific values from the eFuse found on
193 the Amlogic Meson GX SoCs.
195 This driver can also be built as a module. If so, the module
196 will be called nvmem_meson_efuse.
198 config MESON_MX_EFUSE
199 tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
200 depends on ARCH_MESON || COMPILE_TEST
202 This is a driver to retrieve specific values from the eFuse found on
203 the Amlogic Meson6, Meson8 and Meson8b SoCs.
205 This driver can also be built as a module. If so, the module
206 will be called nvmem_meson_mx_efuse.
208 config NVMEM_SNVS_LPGPR
209 tristate "Support for Low Power General Purpose Register"
210 depends on ARCH_MXC || COMPILE_TEST
212 This is a driver for Low Power General Purpose Register (LPGPR) available on
213 i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
215 This driver can also be built as a module. If so, the module
216 will be called nvmem-snvs-lpgpr.
218 config RAVE_SP_EEPROM
219 tristate "Rave SP EEPROM Support"
220 depends on RAVE_SP_CORE
222 Say y here to enable Rave SP EEPROM support.
225 tristate "Spreadtrum SC27XX eFuse Support"
226 depends on MFD_SC27XX_PMIC || COMPILE_TEST
229 This is a simple driver to dump specified values of Spreadtrum
230 SC27XX PMICs from eFuse.
232 This driver can also be built as a module. If so, the module
233 will be called nvmem-sc27xx-efuse.
236 bool "Xilinx ZYNQMP SoC nvmem firmware support"
237 depends on ARCH_ZYNQMP
239 This is a driver to access hardware related data like
240 soc revision, IDCODE... etc by using the firmware
243 If sure, say yes. If unsure, say no.
246 tristate "Spreadtrum SoC eFuse Support"
247 depends on ARCH_SPRD || COMPILE_TEST
250 This is a simple driver to dump specified values of Spreadtrum
253 This driver can also be built as a module. If so, the module
254 will be called nvmem-sprd-efuse.