xref: /linux/drivers/nvmem/Kconfig (revision 73bcd133c910bff3b6d3b3834d0d14be9444e90a)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2eace75cfSSrinivas Kandagatlamenuconfig NVMEM
32a37ce25SArnd Bergmann	bool "NVMEM Support"
4eace75cfSSrinivas Kandagatla	help
5eace75cfSSrinivas Kandagatla	  Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
6eace75cfSSrinivas Kandagatla
7eace75cfSSrinivas Kandagatla	  This framework is designed to provide a generic interface to NVMEM
8eace75cfSSrinivas Kandagatla	  from both the Linux Kernel and the userspace.
9eace75cfSSrinivas Kandagatla
10eace75cfSSrinivas Kandagatla	  If unsure, say no.
114ab11996SSrinivas Kandagatla
124ab11996SSrinivas Kandagatlaif NVMEM
134ab11996SSrinivas Kandagatla
14ae0c2d72SSrinivas Kandagatlaconfig NVMEM_SYSFS
15ae0c2d72SSrinivas Kandagatla	bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
16ae0c2d72SSrinivas Kandagatla	depends on SYSFS
17ae0c2d72SSrinivas Kandagatla	default y
18ae0c2d72SSrinivas Kandagatla	help
19ae0c2d72SSrinivas Kandagatla	 Say Y here to add a sysfs interface for NVMEM.
20ae0c2d72SSrinivas Kandagatla
21ae0c2d72SSrinivas Kandagatla	 This interface is mostly used by userspace applications to
22ae0c2d72SSrinivas Kandagatla	 read/write directly into nvmem.
23ae0c2d72SSrinivas Kandagatla
24266570f4SMichael Walle# Layouts
25266570f4SMichael Walle
26266570f4SMichael Wallesource "drivers/nvmem/layouts/Kconfig"
27266570f4SMichael Walle
28a06d9e5aSRafał Miłecki# Devices
29a06d9e5aSRafał Miłecki
30a06d9e5aSRafał Miłeckiconfig NVMEM_APPLE_EFUSES
31a06d9e5aSRafał Miłecki	tristate "Apple eFuse support"
32a06d9e5aSRafał Miłecki	depends on ARCH_APPLE || COMPILE_TEST
33a06d9e5aSRafał Miłecki	default ARCH_APPLE
34a06d9e5aSRafał Miłecki	help
35a06d9e5aSRafał Miłecki	  Say y here to enable support for reading eFuses on Apple SoCs
36a06d9e5aSRafał Miłecki	  such as the M1. These are e.g. used to store factory programmed
37a06d9e5aSRafał Miłecki	  calibration data required for the PCIe or the USB-C PHY.
38a06d9e5aSRafał Miłecki
39a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module will
40a06d9e5aSRafał Miłecki	  be called nvmem-apple-efuses.
41a06d9e5aSRafał Miłecki
42a06d9e5aSRafał Miłeckiconfig NVMEM_BCM_OCOTP
43a06d9e5aSRafał Miłecki	tristate "Broadcom On-Chip OTP Controller support"
44a06d9e5aSRafał Miłecki	depends on ARCH_BCM_IPROC || COMPILE_TEST
45a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
46a06d9e5aSRafał Miłecki	default ARCH_BCM_IPROC
47a06d9e5aSRafał Miłecki	help
48a06d9e5aSRafał Miłecki	  Say y here to enable read/write access to the Broadcom OTP
49a06d9e5aSRafał Miłecki	  controller.
50a06d9e5aSRafał Miłecki
51a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
52a06d9e5aSRafał Miłecki	  will be called nvmem-bcm-ocotp.
53a06d9e5aSRafał Miłecki
54a06d9e5aSRafał Miłeckiconfig NVMEM_BRCM_NVRAM
55a06d9e5aSRafał Miłecki	tristate "Broadcom's NVRAM support"
56a06d9e5aSRafał Miłecki	depends on ARCH_BCM_5301X || COMPILE_TEST
57a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
58*73bcd133SRafał Miłecki	select GENERIC_NET_UTILS
59a06d9e5aSRafał Miłecki	help
60a06d9e5aSRafał Miłecki	  This driver provides support for Broadcom's NVRAM that can be accessed
61a06d9e5aSRafał Miłecki	  using I/O mapping.
62a06d9e5aSRafał Miłecki
63c066c1c0SMichael Grzeschikconfig NVMEM_IMX_IIM
64c066c1c0SMichael Grzeschik	tristate "i.MX IC Identification Module support"
65c066c1c0SMichael Grzeschik	depends on ARCH_MXC || COMPILE_TEST
66c066c1c0SMichael Grzeschik	help
67c066c1c0SMichael Grzeschik	  This is a driver for the IC Identification Module (IIM) available on
68c066c1c0SMichael Grzeschik	  i.MX SoCs, providing access to 4 Kbits of programmable
69c066c1c0SMichael Grzeschik	  eFuses.
70c066c1c0SMichael Grzeschik
71c066c1c0SMichael Grzeschik	  This driver can also be built as a module. If so, the module
72c066c1c0SMichael Grzeschik	  will be called nvmem-imx-iim.
73c066c1c0SMichael Grzeschik
743edba6b4SPhilipp Zabelconfig NVMEM_IMX_OCOTP
75dd4c1047SLucas Stach	tristate "i.MX 6/7/8 On-Chip OTP Controller support"
76dd4c1047SLucas Stach	depends on ARCH_MXC || COMPILE_TEST
7763c0c076SSrinivas Kandagatla	depends on HAS_IOMEM
783edba6b4SPhilipp Zabel	help
793edba6b4SPhilipp Zabel	  This is a driver for the On-Chip OTP Controller (OCOTP) available on
803edba6b4SPhilipp Zabel	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
813edba6b4SPhilipp Zabel	  eFuses.
823edba6b4SPhilipp Zabel
833edba6b4SPhilipp Zabel	  This driver can also be built as a module. If so, the module
843edba6b4SPhilipp Zabel	  will be called nvmem-imx-ocotp.
853edba6b4SPhilipp Zabel
8667ff708bSPeng Fanconfig NVMEM_IMX_OCOTP_SCU
8767ff708bSPeng Fan	tristate "i.MX8 SCU On-Chip OTP Controller support"
8867ff708bSPeng Fan	depends on IMX_SCU
89b210fac7SSrinivas Kandagatla	depends on HAVE_ARM_SMCCC
9067ff708bSPeng Fan	help
9167ff708bSPeng Fan	  This is a driver for the SCU On-Chip OTP Controller (OCOTP)
9267ff708bSPeng Fan	  available on i.MX8 SoCs.
9367ff708bSPeng Fan
9428fc7c98SRafał Miłeckiconfig NVMEM_JZ4780_EFUSE
954a2addc2SPrasannaKumar Muralidharan	tristate "JZ4780 EFUSE Memory Support"
964a2addc2SPrasannaKumar Muralidharan	depends on MACH_INGENIC || COMPILE_TEST
974a2addc2SPrasannaKumar Muralidharan	depends on HAS_IOMEM
984a2addc2SPrasannaKumar Muralidharan	depends on OF
994a2addc2SPrasannaKumar Muralidharan	select REGMAP_MMIO
1004a2addc2SPrasannaKumar Muralidharan	help
1014a2addc2SPrasannaKumar Muralidharan	  Say Y here to include support for JZ4780 efuse memory found on
1024a2addc2SPrasannaKumar Muralidharan	  all JZ4780 SoC based devices.
1034a2addc2SPrasannaKumar Muralidharan	  To compile this driver as a module, choose M here: the module
1044a2addc2SPrasannaKumar Muralidharan	  will be called nvmem_jz4780_efuse.
1054a2addc2SPrasannaKumar Muralidharan
1069e8f208aSHoratiu Vulturconfig NVMEM_LAN9662_OTPC
1079e8f208aSHoratiu Vultur	tristate "Microchip LAN9662 OTP controller support"
1089e8f208aSHoratiu Vultur	depends on SOC_LAN966 || COMPILE_TEST
1099e8f208aSHoratiu Vultur	depends on HAS_IOMEM
1109e8f208aSHoratiu Vultur	help
1119e8f208aSHoratiu Vultur	  This driver enables the OTP controller available on Microchip LAN9662
1129e8f208aSHoratiu Vultur	  SoCs. It controls the access to the OTP memory connected to it.
1139e8f208aSHoratiu Vultur
114a06d9e5aSRafał Miłeckiconfig NVMEM_LAYERSCAPE_SFP
115a06d9e5aSRafał Miłecki	tristate "Layerscape SFP (Security Fuse Processor) support"
116a06d9e5aSRafał Miłecki	depends on ARCH_LAYERSCAPE || COMPILE_TEST
117a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
118a06d9e5aSRafał Miłecki	select REGMAP_MMIO
119a06d9e5aSRafał Miłecki	help
120a06d9e5aSRafał Miłecki	  This driver provides support to read the eFuses on Freescale
121a06d9e5aSRafał Miłecki	  Layerscape SoC's. For example, the vendor provides a per part
122a06d9e5aSRafał Miłecki	  unique ID there.
123a06d9e5aSRafał Miłecki
124a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
125a06d9e5aSRafał Miłecki	  will be called layerscape-sfp.
126a06d9e5aSRafał Miłecki
127f02f8aeeSAriel D'Alessandroconfig NVMEM_LPC18XX_EEPROM
128f02f8aeeSAriel D'Alessandro	tristate "NXP LPC18XX EEPROM Memory Support"
129f02f8aeeSAriel D'Alessandro	depends on ARCH_LPC18XX || COMPILE_TEST
1302ce7aed6SKrzysztof Kozlowski	depends on HAS_IOMEM
131f02f8aeeSAriel D'Alessandro	help
132f02f8aeeSAriel D'Alessandro	  Say Y here to include support for NXP LPC18xx EEPROM memory found in
133f02f8aeeSAriel D'Alessandro	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
134f02f8aeeSAriel D'Alessandro	  To compile this driver as a module, choose M here: the module
135f02f8aeeSAriel D'Alessandro	  will be called nvmem_lpc18xx_eeprom.
136f02f8aeeSAriel D'Alessandro
13788806dafSJoachim Eastwoodconfig NVMEM_LPC18XX_OTP
13888806dafSJoachim Eastwood	tristate "NXP LPC18XX OTP Memory Support"
13988806dafSJoachim Eastwood	depends on ARCH_LPC18XX || COMPILE_TEST
14088806dafSJoachim Eastwood	depends on HAS_IOMEM
14188806dafSJoachim Eastwood	help
14288806dafSJoachim Eastwood	  Say Y here to include support for NXP LPC18xx OTP memory found on
14388806dafSJoachim Eastwood	  all LPC18xx and LPC43xx devices.
14488806dafSJoachim Eastwood	  To compile this driver as a module, choose M here: the module
14588806dafSJoachim Eastwood	  will be called nvmem_lpc18xx_otp.
14688806dafSJoachim Eastwood
147a06d9e5aSRafał Miłeckiconfig NVMEM_MESON_EFUSE
148a06d9e5aSRafał Miłecki	tristate "Amlogic Meson GX eFuse Support"
149a06d9e5aSRafał Miłecki	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
150c01e9a11SStefan Wahren	help
151a06d9e5aSRafał Miłecki	  This is a driver to retrieve specific values from the eFuse found on
152a06d9e5aSRafał Miłecki	  the Amlogic Meson GX SoCs.
153c01e9a11SStefan Wahren
154c01e9a11SStefan Wahren	  This driver can also be built as a module. If so, the module
155a06d9e5aSRafał Miłecki	  will be called nvmem_meson_efuse.
156a06d9e5aSRafał Miłecki
157a06d9e5aSRafał Miłeckiconfig NVMEM_MESON_MX_EFUSE
158a06d9e5aSRafał Miłecki	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
159a06d9e5aSRafał Miłecki	depends on ARCH_MESON || COMPILE_TEST
160a06d9e5aSRafał Miłecki	help
161a06d9e5aSRafał Miłecki	  This is a driver to retrieve specific values from the eFuse found on
162a06d9e5aSRafał Miłecki	  the Amlogic Meson6, Meson8 and Meson8b SoCs.
163a06d9e5aSRafał Miłecki
164a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
165a06d9e5aSRafał Miłecki	  will be called nvmem_meson_mx_efuse.
166a06d9e5aSRafał Miłecki
167a06d9e5aSRafał Miłeckiconfig NVMEM_MICROCHIP_OTPC
168a06d9e5aSRafał Miłecki	tristate "Microchip OTPC support"
169a06d9e5aSRafał Miłecki	depends on ARCH_AT91 || COMPILE_TEST
170a06d9e5aSRafał Miłecki	help
171a06d9e5aSRafał Miłecki	  This driver enable the OTP controller available on Microchip SAMA7G5
172fb817c4eSColin Ian King	  SoCs. It controls the access to the OTP memory connected to it.
173c01e9a11SStefan Wahren
17428fc7c98SRafał Miłeckiconfig NVMEM_MTK_EFUSE
1754c7e4fe3SAndrew-CT Chen	tristate "Mediatek SoCs EFUSE support"
1764c7e4fe3SAndrew-CT Chen	depends on ARCH_MEDIATEK || COMPILE_TEST
1772ce7aed6SKrzysztof Kozlowski	depends on HAS_IOMEM
1784c7e4fe3SAndrew-CT Chen	help
1794c7e4fe3SAndrew-CT Chen	  This is a driver to access hardware related data like sensor
1804c7e4fe3SAndrew-CT Chen	  calibration, HDMI impedance etc.
1814c7e4fe3SAndrew-CT Chen
1824c7e4fe3SAndrew-CT Chen	  This driver can also be built as a module. If so, the module
1834c7e4fe3SAndrew-CT Chen	  will be called efuse-mtk.
1844c7e4fe3SAndrew-CT Chen
185a06d9e5aSRafał Miłeckiconfig NVMEM_MXS_OCOTP
186a06d9e5aSRafał Miłecki	tristate "Freescale MXS On-Chip OTP Memory Support"
187a06d9e5aSRafał Miłecki	depends on ARCH_MXS || COMPILE_TEST
188a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
18998830350SClaudiu Beznea	help
190a06d9e5aSRafał Miłecki	  If you say Y here, you will get readonly access to the
191a06d9e5aSRafał Miłecki	  One Time Programmable memory pages that are stored
192a06d9e5aSRafał Miłecki	  on the Freescale i.MX23/i.MX28 processor.
193a06d9e5aSRafał Miłecki
194a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
195a06d9e5aSRafał Miłecki	  will be called nvmem-mxs-ocotp.
19698830350SClaudiu Beznea
1973683b761SEmmanuel Gil Peyrotconfig NVMEM_NINTENDO_OTP
1983683b761SEmmanuel Gil Peyrot	tristate "Nintendo Wii and Wii U OTP Support"
1997af526c7SGeert Uytterhoeven	depends on WII || COMPILE_TEST
2003683b761SEmmanuel Gil Peyrot	help
2013683b761SEmmanuel Gil Peyrot	  This is a driver exposing the OTP of a Nintendo Wii or Wii U console.
2023683b761SEmmanuel Gil Peyrot
2033683b761SEmmanuel Gil Peyrot	  This memory contains common and per-console keys, signatures and
2043683b761SEmmanuel Gil Peyrot	  related data required to access peripherals.
2053683b761SEmmanuel Gil Peyrot
2063683b761SEmmanuel Gil Peyrot	  This driver can also be built as a module. If so, the module
2073683b761SEmmanuel Gil Peyrot	  will be called nvmem-nintendo-otp.
2083683b761SEmmanuel Gil Peyrot
20928fc7c98SRafał Miłeckiconfig NVMEM_QCOM_QFPROM
2104ab11996SSrinivas Kandagatla	tristate "QCOM QFPROM Support"
2114ab11996SSrinivas Kandagatla	depends on ARCH_QCOM || COMPILE_TEST
2125685e244SRichard Weinberger	depends on HAS_IOMEM
2134ab11996SSrinivas Kandagatla	help
2144ab11996SSrinivas Kandagatla	  Say y here to enable QFPROM support. The QFPROM provides access
2154ab11996SSrinivas Kandagatla	  functions for QFPROM data to rest of the drivers via nvmem interface.
2164ab11996SSrinivas Kandagatla
2174ab11996SSrinivas Kandagatla	  This driver can also be built as a module. If so, the module
2184ab11996SSrinivas Kandagatla	  will be called nvmem_qfprom.
2194ab11996SSrinivas Kandagatla
220a06d9e5aSRafał Miłeckiconfig NVMEM_RAVE_SP_EEPROM
221a06d9e5aSRafał Miłecki	tristate "Rave SP EEPROM Support"
222a06d9e5aSRafał Miłecki	depends on RAVE_SP_CORE
22340ce9798SAnirudh Ghayal	help
224a06d9e5aSRafał Miłecki	  Say y here to enable Rave SP EEPROM support.
225a06d9e5aSRafał Miłecki
226a06d9e5aSRafał Miłeckiconfig NVMEM_RMEM
227a06d9e5aSRafał Miłecki	tristate "Reserved Memory Based Driver Support"
228a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
229a06d9e5aSRafał Miłecki	help
230a06d9e5aSRafał Miłecki	  This driver maps reserved memory into an nvmem device. It might be
231a06d9e5aSRafał Miłecki	  useful to expose information left by firmware in memory.
232a06d9e5aSRafał Miłecki
233a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
234a06d9e5aSRafał Miłecki	  will be called nvmem-rmem.
23540ce9798SAnirudh Ghayal
23628fc7c98SRafał Miłeckiconfig NVMEM_ROCKCHIP_EFUSE
23703a69568SZhengShunQian	tristate "Rockchip eFuse Support"
23803a69568SZhengShunQian	depends on ARCH_ROCKCHIP || COMPILE_TEST
2395685e244SRichard Weinberger	depends on HAS_IOMEM
24003a69568SZhengShunQian	help
24103a69568SZhengShunQian	  This is a simple drive to dump specified values of Rockchip SoC
24203a69568SZhengShunQian	  from eFuse, such as cpu-leakage.
24303a69568SZhengShunQian
24403a69568SZhengShunQian	  This driver can also be built as a module. If so, the module
24503a69568SZhengShunQian	  will be called nvmem_rockchip_efuse.
24603a69568SZhengShunQian
24728fc7c98SRafał Miłeckiconfig NVMEM_ROCKCHIP_OTP
248755864feSFinley Xiao	tristate "Rockchip OTP controller support"
249755864feSFinley Xiao	depends on ARCH_ROCKCHIP || COMPILE_TEST
250755864feSFinley Xiao	depends on HAS_IOMEM
251755864feSFinley Xiao	help
252755864feSFinley Xiao	  This is a simple drive to dump specified values of Rockchip SoC
253755864feSFinley Xiao	  from otp, such as cpu-leakage.
254755864feSFinley Xiao
255755864feSFinley Xiao	  This driver can also be built as a module. If so, the module
256755864feSFinley Xiao	  will be called nvmem_rockchip_otp.
257755864feSFinley Xiao
258a06d9e5aSRafał Miłeckiconfig NVMEM_SC27XX_EFUSE
259a06d9e5aSRafał Miłecki	tristate "Spreadtrum SC27XX eFuse Support"
260a06d9e5aSRafał Miłecki	depends on MFD_SC27XX_PMIC || COMPILE_TEST
2619d59c6e8SJonathan Richardson	depends on HAS_IOMEM
2629d59c6e8SJonathan Richardson	help
263a06d9e5aSRafał Miłecki	  This is a simple driver to dump specified values of Spreadtrum
264a06d9e5aSRafał Miłecki	  SC27XX PMICs from eFuse.
2659d59c6e8SJonathan Richardson
2669d59c6e8SJonathan Richardson	  This driver can also be built as a module. If so, the module
267a06d9e5aSRafał Miłecki	  will be called nvmem-sc27xx-efuse.
268a06d9e5aSRafał Miłecki
269a06d9e5aSRafał Miłeckiconfig NVMEM_SNVS_LPGPR
270a06d9e5aSRafał Miłecki	tristate "Support for Low Power General Purpose Register"
271a06d9e5aSRafał Miłecki	depends on ARCH_MXC || COMPILE_TEST
272a06d9e5aSRafał Miłecki	help
273a06d9e5aSRafał Miłecki	  This is a driver for Low Power General Purpose Register (LPGPR) available on
274a06d9e5aSRafał Miłecki	  i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
275a06d9e5aSRafał Miłecki
276a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
277a06d9e5aSRafał Miłecki	  will be called nvmem-snvs-lpgpr.
278a06d9e5aSRafał Miłecki
279a06d9e5aSRafał Miłeckiconfig NVMEM_SPMI_SDAM
280a06d9e5aSRafał Miłecki	tristate "SPMI SDAM Support"
281a06d9e5aSRafał Miłecki	depends on SPMI
282a06d9e5aSRafał Miłecki	help
283a06d9e5aSRafał Miłecki	  This driver supports the Shared Direct Access Memory Module on
284a06d9e5aSRafał Miłecki	  Qualcomm Technologies, Inc. PMICs. It provides the clients
285a06d9e5aSRafał Miłecki	  an interface to read/write to the SDAM module's shared memory.
286a06d9e5aSRafał Miłecki
287a06d9e5aSRafał Miłeckiconfig NVMEM_SPRD_EFUSE
288a06d9e5aSRafał Miłecki	tristate "Spreadtrum SoC eFuse Support"
289a06d9e5aSRafał Miłecki	depends on ARCH_SPRD || COMPILE_TEST
290a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
291a06d9e5aSRafał Miłecki	help
292a06d9e5aSRafał Miłecki	  This is a simple driver to dump specified values of Spreadtrum
293a06d9e5aSRafał Miłecki	  SoCs from eFuse.
294a06d9e5aSRafał Miłecki
295a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
296a06d9e5aSRafał Miłecki	  will be called nvmem-sprd-efuse.
2979d59c6e8SJonathan Richardson
2986a0bc352SPatrick Delaunayconfig NVMEM_STM32_BSEC_OPTEE_TA
2991dc7e37bSArnd Bergmann	def_bool NVMEM_STM32_ROMEM && OPTEE
3006a0bc352SPatrick Delaunay	help
3016a0bc352SPatrick Delaunay	  Say y here to enable the accesses to STM32MP SoC OTPs by the OP-TEE
3026a0bc352SPatrick Delaunay	  trusted application STM32MP BSEC.
3036a0bc352SPatrick Delaunay
3046a0bc352SPatrick Delaunay	  This library is a used by stm32-romem driver or included in the module
3056a0bc352SPatrick Delaunay	  called nvmem-stm32-romem.
3066a0bc352SPatrick Delaunay
307ded1b7fcSFabrice Gasnierconfig NVMEM_STM32_ROMEM
308ded1b7fcSFabrice Gasnier	tristate "STMicroelectronics STM32 factory-programmed memory support"
309ded1b7fcSFabrice Gasnier	depends on ARCH_STM32 || COMPILE_TEST
3101dc7e37bSArnd Bergmann	depends on OPTEE || !OPTEE
311ded1b7fcSFabrice Gasnier	help
312ded1b7fcSFabrice Gasnier	  Say y here to enable read-only access for STMicroelectronics STM32
313ded1b7fcSFabrice Gasnier	  factory-programmed memory area.
314ded1b7fcSFabrice Gasnier
315ded1b7fcSFabrice Gasnier	  This driver can also be built as a module. If so, the module
316ded1b7fcSFabrice Gasnier	  will be called nvmem-stm32-romem.
317ded1b7fcSFabrice Gasnier
318a06d9e5aSRafał Miłeckiconfig NVMEM_SUNPLUS_OCOTP
319a06d9e5aSRafał Miłecki	tristate "Sunplus SoC OTP support"
320a06d9e5aSRafał Miłecki	depends on SOC_SP7021 || COMPILE_TEST
321a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
322a06d9e5aSRafał Miłecki	help
323a06d9e5aSRafał Miłecki	  This is a driver for the On-chip OTP controller (OCOTP) available
324a06d9e5aSRafał Miłecki	  on Sunplus SoCs. It provides access to 128 bytes of one-time
325a06d9e5aSRafał Miłecki	  programmable eFuse.
326a06d9e5aSRafał Miłecki
327a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
328a06d9e5aSRafał Miłecki	  will be called nvmem-sunplus-ocotp.
329a06d9e5aSRafał Miłecki
3303d0b16a6SMaxime Ripardconfig NVMEM_SUNXI_SID
3313d0b16a6SMaxime Ripard	tristate "Allwinner SoCs SID support"
3323d0b16a6SMaxime Ripard	depends on ARCH_SUNXI
3333d0b16a6SMaxime Ripard	help
3343d0b16a6SMaxime Ripard	  This is a driver for the 'security ID' available on various Allwinner
3353d0b16a6SMaxime Ripard	  devices.
3363d0b16a6SMaxime Ripard
3373d0b16a6SMaxime Ripard	  This driver can also be built as a module. If so, the module
3383d0b16a6SMaxime Ripard	  will be called nvmem_sunxi_sid.
3393d0b16a6SMaxime Ripard
340a06d9e5aSRafał Miłeckiconfig NVMEM_U_BOOT_ENV
341a06d9e5aSRafał Miłecki	tristate "U-Boot environment variables support"
342a06d9e5aSRafał Miłecki	depends on OF && MTD
343a06d9e5aSRafał Miłecki	select CRC32
344c49f1a8aSRafał Miłecki	select GENERIC_NET_UTILS
345a06d9e5aSRafał Miłecki	help
346a06d9e5aSRafał Miłecki	  U-Boot stores its setup as environment variables. This driver adds
347a06d9e5aSRafał Miłecki	  support for verifying & exporting such data. It also exposes variables
348a06d9e5aSRafał Miłecki	  as NVMEM cells so they can be referenced by other drivers.
349a06d9e5aSRafał Miłecki
350a06d9e5aSRafał Miłecki	  Currently this drivers works only with env variables on top of MTD.
351a06d9e5aSRafał Miłecki
352a06d9e5aSRafał Miłecki	  If compiled as module it will be called nvmem_u-boot-env.
353a06d9e5aSRafał Miłecki
35428fc7c98SRafał Miłeckiconfig NVMEM_UNIPHIER_EFUSE
35571c5dd50SKeiji Hayashibara	tristate "UniPhier SoCs eFuse support"
35671c5dd50SKeiji Hayashibara	depends on ARCH_UNIPHIER || COMPILE_TEST
35771c5dd50SKeiji Hayashibara	depends on HAS_IOMEM
35871c5dd50SKeiji Hayashibara	help
35971c5dd50SKeiji Hayashibara	  This is a simple driver to dump specified values of UniPhier SoC
36071c5dd50SKeiji Hayashibara	  from eFuse.
36171c5dd50SKeiji Hayashibara
36271c5dd50SKeiji Hayashibara	  This driver can also be built as a module. If so, the module
36371c5dd50SKeiji Hayashibara	  will be called nvmem-uniphier-efuse.
36471c5dd50SKeiji Hayashibara
36522dbdb7cSSanchayan Maityconfig NVMEM_VF610_OCOTP
36622dbdb7cSSanchayan Maity	tristate "VF610 SoC OCOTP support"
36722dbdb7cSSanchayan Maity	depends on SOC_VF610 || COMPILE_TEST
3685685e244SRichard Weinberger	depends on HAS_IOMEM
36922dbdb7cSSanchayan Maity	help
37022dbdb7cSSanchayan Maity	  This is a driver for the 'OCOTP' peripheral available on Vybrid
37122dbdb7cSSanchayan Maity	  devices like VF5xx and VF6xx.
37222dbdb7cSSanchayan Maity
37322dbdb7cSSanchayan Maity	  This driver can also be build as a module. If so, the module will
37422dbdb7cSSanchayan Maity	  be called nvmem-vf610-ocotp.
37522dbdb7cSSanchayan Maity
3764640fa18SNava kishore Manneconfig NVMEM_ZYNQMP
377bcd1fe07SNick Alcock	tristate "Xilinx ZYNQMP SoC nvmem firmware support"
3784640fa18SNava kishore Manne	depends on ARCH_ZYNQMP
3794640fa18SNava kishore Manne	help
3804640fa18SNava kishore Manne	  This is a driver to access hardware related data like
3814640fa18SNava kishore Manne	  soc revision, IDCODE... etc by using the firmware
3824640fa18SNava kishore Manne	  interface.
3834640fa18SNava kishore Manne
3844640fa18SNava kishore Manne	  If sure, say yes. If unsure, say no.
3854640fa18SNava kishore Manne
3864ab11996SSrinivas Kandagatlaendif
387