xref: /linux/drivers/nvmem/Kconfig (revision 266570f496b90dea8fda893c2cf7c28d63ae2bd9)
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
24*266570f4SMichael Walle# Layouts
25*266570f4SMichael Walle
26*266570f4SMichael Wallesource "drivers/nvmem/layouts/Kconfig"
27*266570f4SMichael 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
58a06d9e5aSRafał Miłecki	help
59a06d9e5aSRafał Miłecki	  This driver provides support for Broadcom's NVRAM that can be accessed
60a06d9e5aSRafał Miłecki	  using I/O mapping.
61a06d9e5aSRafał Miłecki
62c066c1c0SMichael Grzeschikconfig NVMEM_IMX_IIM
63c066c1c0SMichael Grzeschik	tristate "i.MX IC Identification Module support"
64c066c1c0SMichael Grzeschik	depends on ARCH_MXC || COMPILE_TEST
65c066c1c0SMichael Grzeschik	help
66c066c1c0SMichael Grzeschik	  This is a driver for the IC Identification Module (IIM) available on
67c066c1c0SMichael Grzeschik	  i.MX SoCs, providing access to 4 Kbits of programmable
68c066c1c0SMichael Grzeschik	  eFuses.
69c066c1c0SMichael Grzeschik
70c066c1c0SMichael Grzeschik	  This driver can also be built as a module. If so, the module
71c066c1c0SMichael Grzeschik	  will be called nvmem-imx-iim.
72c066c1c0SMichael Grzeschik
733edba6b4SPhilipp Zabelconfig NVMEM_IMX_OCOTP
74dd4c1047SLucas Stach	tristate "i.MX 6/7/8 On-Chip OTP Controller support"
75dd4c1047SLucas Stach	depends on ARCH_MXC || COMPILE_TEST
7663c0c076SSrinivas Kandagatla	depends on HAS_IOMEM
773edba6b4SPhilipp Zabel	help
783edba6b4SPhilipp Zabel	  This is a driver for the On-Chip OTP Controller (OCOTP) available on
793edba6b4SPhilipp Zabel	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
803edba6b4SPhilipp Zabel	  eFuses.
813edba6b4SPhilipp Zabel
823edba6b4SPhilipp Zabel	  This driver can also be built as a module. If so, the module
833edba6b4SPhilipp Zabel	  will be called nvmem-imx-ocotp.
843edba6b4SPhilipp Zabel
8567ff708bSPeng Fanconfig NVMEM_IMX_OCOTP_SCU
8667ff708bSPeng Fan	tristate "i.MX8 SCU On-Chip OTP Controller support"
8767ff708bSPeng Fan	depends on IMX_SCU
88b210fac7SSrinivas Kandagatla	depends on HAVE_ARM_SMCCC
8967ff708bSPeng Fan	help
9067ff708bSPeng Fan	  This is a driver for the SCU On-Chip OTP Controller (OCOTP)
9167ff708bSPeng Fan	  available on i.MX8 SoCs.
9267ff708bSPeng Fan
9328fc7c98SRafał Miłeckiconfig NVMEM_JZ4780_EFUSE
944a2addc2SPrasannaKumar Muralidharan	tristate "JZ4780 EFUSE Memory Support"
954a2addc2SPrasannaKumar Muralidharan	depends on MACH_INGENIC || COMPILE_TEST
964a2addc2SPrasannaKumar Muralidharan	depends on HAS_IOMEM
974a2addc2SPrasannaKumar Muralidharan	depends on OF
984a2addc2SPrasannaKumar Muralidharan	select REGMAP_MMIO
994a2addc2SPrasannaKumar Muralidharan	help
1004a2addc2SPrasannaKumar Muralidharan	  Say Y here to include support for JZ4780 efuse memory found on
1014a2addc2SPrasannaKumar Muralidharan	  all JZ4780 SoC based devices.
1024a2addc2SPrasannaKumar Muralidharan	  To compile this driver as a module, choose M here: the module
1034a2addc2SPrasannaKumar Muralidharan	  will be called nvmem_jz4780_efuse.
1044a2addc2SPrasannaKumar Muralidharan
1059e8f208aSHoratiu Vulturconfig NVMEM_LAN9662_OTPC
1069e8f208aSHoratiu Vultur	tristate "Microchip LAN9662 OTP controller support"
1079e8f208aSHoratiu Vultur	depends on SOC_LAN966 || COMPILE_TEST
1089e8f208aSHoratiu Vultur	depends on HAS_IOMEM
1099e8f208aSHoratiu Vultur	help
1109e8f208aSHoratiu Vultur	  This driver enables the OTP controller available on Microchip LAN9662
1119e8f208aSHoratiu Vultur	  SoCs. It controls the access to the OTP memory connected to it.
1129e8f208aSHoratiu Vultur
113a06d9e5aSRafał Miłeckiconfig NVMEM_LAYERSCAPE_SFP
114a06d9e5aSRafał Miłecki	tristate "Layerscape SFP (Security Fuse Processor) support"
115a06d9e5aSRafał Miłecki	depends on ARCH_LAYERSCAPE || COMPILE_TEST
116a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
117a06d9e5aSRafał Miłecki	select REGMAP_MMIO
118a06d9e5aSRafał Miłecki	help
119a06d9e5aSRafał Miłecki	  This driver provides support to read the eFuses on Freescale
120a06d9e5aSRafał Miłecki	  Layerscape SoC's. For example, the vendor provides a per part
121a06d9e5aSRafał Miłecki	  unique ID there.
122a06d9e5aSRafał Miłecki
123a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
124a06d9e5aSRafał Miłecki	  will be called layerscape-sfp.
125a06d9e5aSRafał Miłecki
126f02f8aeeSAriel D'Alessandroconfig NVMEM_LPC18XX_EEPROM
127f02f8aeeSAriel D'Alessandro	tristate "NXP LPC18XX EEPROM Memory Support"
128f02f8aeeSAriel D'Alessandro	depends on ARCH_LPC18XX || COMPILE_TEST
1292ce7aed6SKrzysztof Kozlowski	depends on HAS_IOMEM
130f02f8aeeSAriel D'Alessandro	help
131f02f8aeeSAriel D'Alessandro	  Say Y here to include support for NXP LPC18xx EEPROM memory found in
132f02f8aeeSAriel D'Alessandro	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
133f02f8aeeSAriel D'Alessandro	  To compile this driver as a module, choose M here: the module
134f02f8aeeSAriel D'Alessandro	  will be called nvmem_lpc18xx_eeprom.
135f02f8aeeSAriel D'Alessandro
13688806dafSJoachim Eastwoodconfig NVMEM_LPC18XX_OTP
13788806dafSJoachim Eastwood	tristate "NXP LPC18XX OTP Memory Support"
13888806dafSJoachim Eastwood	depends on ARCH_LPC18XX || COMPILE_TEST
13988806dafSJoachim Eastwood	depends on HAS_IOMEM
14088806dafSJoachim Eastwood	help
14188806dafSJoachim Eastwood	  Say Y here to include support for NXP LPC18xx OTP memory found on
14288806dafSJoachim Eastwood	  all LPC18xx and LPC43xx devices.
14388806dafSJoachim Eastwood	  To compile this driver as a module, choose M here: the module
14488806dafSJoachim Eastwood	  will be called nvmem_lpc18xx_otp.
14588806dafSJoachim Eastwood
146a06d9e5aSRafał Miłeckiconfig NVMEM_MESON_EFUSE
147a06d9e5aSRafał Miłecki	tristate "Amlogic Meson GX eFuse Support"
148a06d9e5aSRafał Miłecki	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
149c01e9a11SStefan Wahren	help
150a06d9e5aSRafał Miłecki	  This is a driver to retrieve specific values from the eFuse found on
151a06d9e5aSRafał Miłecki	  the Amlogic Meson GX SoCs.
152c01e9a11SStefan Wahren
153c01e9a11SStefan Wahren	  This driver can also be built as a module. If so, the module
154a06d9e5aSRafał Miłecki	  will be called nvmem_meson_efuse.
155a06d9e5aSRafał Miłecki
156a06d9e5aSRafał Miłeckiconfig NVMEM_MESON_MX_EFUSE
157a06d9e5aSRafał Miłecki	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
158a06d9e5aSRafał Miłecki	depends on ARCH_MESON || COMPILE_TEST
159a06d9e5aSRafał Miłecki	help
160a06d9e5aSRafał Miłecki	  This is a driver to retrieve specific values from the eFuse found on
161a06d9e5aSRafał Miłecki	  the Amlogic Meson6, Meson8 and Meson8b SoCs.
162a06d9e5aSRafał Miłecki
163a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
164a06d9e5aSRafał Miłecki	  will be called nvmem_meson_mx_efuse.
165a06d9e5aSRafał Miłecki
166a06d9e5aSRafał Miłeckiconfig NVMEM_MICROCHIP_OTPC
167a06d9e5aSRafał Miłecki	tristate "Microchip OTPC support"
168a06d9e5aSRafał Miłecki	depends on ARCH_AT91 || COMPILE_TEST
169a06d9e5aSRafał Miłecki	help
170a06d9e5aSRafał Miłecki	  This driver enable the OTP controller available on Microchip SAMA7G5
171fb817c4eSColin Ian King	  SoCs. It controls the access to the OTP memory connected to it.
172c01e9a11SStefan Wahren
17328fc7c98SRafał Miłeckiconfig NVMEM_MTK_EFUSE
1744c7e4fe3SAndrew-CT Chen	tristate "Mediatek SoCs EFUSE support"
1754c7e4fe3SAndrew-CT Chen	depends on ARCH_MEDIATEK || COMPILE_TEST
1762ce7aed6SKrzysztof Kozlowski	depends on HAS_IOMEM
1774c7e4fe3SAndrew-CT Chen	help
1784c7e4fe3SAndrew-CT Chen	  This is a driver to access hardware related data like sensor
1794c7e4fe3SAndrew-CT Chen	  calibration, HDMI impedance etc.
1804c7e4fe3SAndrew-CT Chen
1814c7e4fe3SAndrew-CT Chen	  This driver can also be built as a module. If so, the module
1824c7e4fe3SAndrew-CT Chen	  will be called efuse-mtk.
1834c7e4fe3SAndrew-CT Chen
184a06d9e5aSRafał Miłeckiconfig NVMEM_MXS_OCOTP
185a06d9e5aSRafał Miłecki	tristate "Freescale MXS On-Chip OTP Memory Support"
186a06d9e5aSRafał Miłecki	depends on ARCH_MXS || COMPILE_TEST
187a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
18898830350SClaudiu Beznea	help
189a06d9e5aSRafał Miłecki	  If you say Y here, you will get readonly access to the
190a06d9e5aSRafał Miłecki	  One Time Programmable memory pages that are stored
191a06d9e5aSRafał Miłecki	  on the Freescale i.MX23/i.MX28 processor.
192a06d9e5aSRafał Miłecki
193a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
194a06d9e5aSRafał Miłecki	  will be called nvmem-mxs-ocotp.
19598830350SClaudiu Beznea
1963683b761SEmmanuel Gil Peyrotconfig NVMEM_NINTENDO_OTP
1973683b761SEmmanuel Gil Peyrot	tristate "Nintendo Wii and Wii U OTP Support"
1987af526c7SGeert Uytterhoeven	depends on WII || COMPILE_TEST
1993683b761SEmmanuel Gil Peyrot	help
2003683b761SEmmanuel Gil Peyrot	  This is a driver exposing the OTP of a Nintendo Wii or Wii U console.
2013683b761SEmmanuel Gil Peyrot
2023683b761SEmmanuel Gil Peyrot	  This memory contains common and per-console keys, signatures and
2033683b761SEmmanuel Gil Peyrot	  related data required to access peripherals.
2043683b761SEmmanuel Gil Peyrot
2053683b761SEmmanuel Gil Peyrot	  This driver can also be built as a module. If so, the module
2063683b761SEmmanuel Gil Peyrot	  will be called nvmem-nintendo-otp.
2073683b761SEmmanuel Gil Peyrot
20828fc7c98SRafał Miłeckiconfig NVMEM_QCOM_QFPROM
2094ab11996SSrinivas Kandagatla	tristate "QCOM QFPROM Support"
2104ab11996SSrinivas Kandagatla	depends on ARCH_QCOM || COMPILE_TEST
2115685e244SRichard Weinberger	depends on HAS_IOMEM
2124ab11996SSrinivas Kandagatla	help
2134ab11996SSrinivas Kandagatla	  Say y here to enable QFPROM support. The QFPROM provides access
2144ab11996SSrinivas Kandagatla	  functions for QFPROM data to rest of the drivers via nvmem interface.
2154ab11996SSrinivas Kandagatla
2164ab11996SSrinivas Kandagatla	  This driver can also be built as a module. If so, the module
2174ab11996SSrinivas Kandagatla	  will be called nvmem_qfprom.
2184ab11996SSrinivas Kandagatla
219a06d9e5aSRafał Miłeckiconfig NVMEM_RAVE_SP_EEPROM
220a06d9e5aSRafał Miłecki	tristate "Rave SP EEPROM Support"
221a06d9e5aSRafał Miłecki	depends on RAVE_SP_CORE
22240ce9798SAnirudh Ghayal	help
223a06d9e5aSRafał Miłecki	  Say y here to enable Rave SP EEPROM support.
224a06d9e5aSRafał Miłecki
225a06d9e5aSRafał Miłeckiconfig NVMEM_RMEM
226a06d9e5aSRafał Miłecki	tristate "Reserved Memory Based Driver Support"
227a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
228a06d9e5aSRafał Miłecki	help
229a06d9e5aSRafał Miłecki	  This driver maps reserved memory into an nvmem device. It might be
230a06d9e5aSRafał Miłecki	  useful to expose information left by firmware in memory.
231a06d9e5aSRafał Miłecki
232a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
233a06d9e5aSRafał Miłecki	  will be called nvmem-rmem.
23440ce9798SAnirudh Ghayal
23528fc7c98SRafał Miłeckiconfig NVMEM_ROCKCHIP_EFUSE
23603a69568SZhengShunQian	tristate "Rockchip eFuse Support"
23703a69568SZhengShunQian	depends on ARCH_ROCKCHIP || COMPILE_TEST
2385685e244SRichard Weinberger	depends on HAS_IOMEM
23903a69568SZhengShunQian	help
24003a69568SZhengShunQian	  This is a simple drive to dump specified values of Rockchip SoC
24103a69568SZhengShunQian	  from eFuse, such as cpu-leakage.
24203a69568SZhengShunQian
24303a69568SZhengShunQian	  This driver can also be built as a module. If so, the module
24403a69568SZhengShunQian	  will be called nvmem_rockchip_efuse.
24503a69568SZhengShunQian
24628fc7c98SRafał Miłeckiconfig NVMEM_ROCKCHIP_OTP
247755864feSFinley Xiao	tristate "Rockchip OTP controller support"
248755864feSFinley Xiao	depends on ARCH_ROCKCHIP || COMPILE_TEST
249755864feSFinley Xiao	depends on HAS_IOMEM
250755864feSFinley Xiao	help
251755864feSFinley Xiao	  This is a simple drive to dump specified values of Rockchip SoC
252755864feSFinley Xiao	  from otp, such as cpu-leakage.
253755864feSFinley Xiao
254755864feSFinley Xiao	  This driver can also be built as a module. If so, the module
255755864feSFinley Xiao	  will be called nvmem_rockchip_otp.
256755864feSFinley Xiao
257a06d9e5aSRafał Miłeckiconfig NVMEM_SC27XX_EFUSE
258a06d9e5aSRafał Miłecki	tristate "Spreadtrum SC27XX eFuse Support"
259a06d9e5aSRafał Miłecki	depends on MFD_SC27XX_PMIC || COMPILE_TEST
2609d59c6e8SJonathan Richardson	depends on HAS_IOMEM
2619d59c6e8SJonathan Richardson	help
262a06d9e5aSRafał Miłecki	  This is a simple driver to dump specified values of Spreadtrum
263a06d9e5aSRafał Miłecki	  SC27XX PMICs from eFuse.
2649d59c6e8SJonathan Richardson
2659d59c6e8SJonathan Richardson	  This driver can also be built as a module. If so, the module
266a06d9e5aSRafał Miłecki	  will be called nvmem-sc27xx-efuse.
267a06d9e5aSRafał Miłecki
268a06d9e5aSRafał Miłeckiconfig NVMEM_SNVS_LPGPR
269a06d9e5aSRafał Miłecki	tristate "Support for Low Power General Purpose Register"
270a06d9e5aSRafał Miłecki	depends on ARCH_MXC || COMPILE_TEST
271a06d9e5aSRafał Miłecki	help
272a06d9e5aSRafał Miłecki	  This is a driver for Low Power General Purpose Register (LPGPR) available on
273a06d9e5aSRafał Miłecki	  i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
274a06d9e5aSRafał Miłecki
275a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
276a06d9e5aSRafał Miłecki	  will be called nvmem-snvs-lpgpr.
277a06d9e5aSRafał Miłecki
278a06d9e5aSRafał Miłeckiconfig NVMEM_SPMI_SDAM
279a06d9e5aSRafał Miłecki	tristate "SPMI SDAM Support"
280a06d9e5aSRafał Miłecki	depends on SPMI
281a06d9e5aSRafał Miłecki	help
282a06d9e5aSRafał Miłecki	  This driver supports the Shared Direct Access Memory Module on
283a06d9e5aSRafał Miłecki	  Qualcomm Technologies, Inc. PMICs. It provides the clients
284a06d9e5aSRafał Miłecki	  an interface to read/write to the SDAM module's shared memory.
285a06d9e5aSRafał Miłecki
286a06d9e5aSRafał Miłeckiconfig NVMEM_SPRD_EFUSE
287a06d9e5aSRafał Miłecki	tristate "Spreadtrum SoC eFuse Support"
288a06d9e5aSRafał Miłecki	depends on ARCH_SPRD || COMPILE_TEST
289a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
290a06d9e5aSRafał Miłecki	help
291a06d9e5aSRafał Miłecki	  This is a simple driver to dump specified values of Spreadtrum
292a06d9e5aSRafał Miłecki	  SoCs from eFuse.
293a06d9e5aSRafał Miłecki
294a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
295a06d9e5aSRafał Miłecki	  will be called nvmem-sprd-efuse.
2969d59c6e8SJonathan Richardson
2976a0bc352SPatrick Delaunayconfig NVMEM_STM32_BSEC_OPTEE_TA
2981dc7e37bSArnd Bergmann	def_bool NVMEM_STM32_ROMEM && OPTEE
2996a0bc352SPatrick Delaunay	help
3006a0bc352SPatrick Delaunay	  Say y here to enable the accesses to STM32MP SoC OTPs by the OP-TEE
3016a0bc352SPatrick Delaunay	  trusted application STM32MP BSEC.
3026a0bc352SPatrick Delaunay
3036a0bc352SPatrick Delaunay	  This library is a used by stm32-romem driver or included in the module
3046a0bc352SPatrick Delaunay	  called nvmem-stm32-romem.
3056a0bc352SPatrick Delaunay
306ded1b7fcSFabrice Gasnierconfig NVMEM_STM32_ROMEM
307ded1b7fcSFabrice Gasnier	tristate "STMicroelectronics STM32 factory-programmed memory support"
308ded1b7fcSFabrice Gasnier	depends on ARCH_STM32 || COMPILE_TEST
3091dc7e37bSArnd Bergmann	depends on OPTEE || !OPTEE
310ded1b7fcSFabrice Gasnier	help
311ded1b7fcSFabrice Gasnier	  Say y here to enable read-only access for STMicroelectronics STM32
312ded1b7fcSFabrice Gasnier	  factory-programmed memory area.
313ded1b7fcSFabrice Gasnier
314ded1b7fcSFabrice Gasnier	  This driver can also be built as a module. If so, the module
315ded1b7fcSFabrice Gasnier	  will be called nvmem-stm32-romem.
316ded1b7fcSFabrice Gasnier
317a06d9e5aSRafał Miłeckiconfig NVMEM_SUNPLUS_OCOTP
318a06d9e5aSRafał Miłecki	tristate "Sunplus SoC OTP support"
319a06d9e5aSRafał Miłecki	depends on SOC_SP7021 || COMPILE_TEST
320a06d9e5aSRafał Miłecki	depends on HAS_IOMEM
321a06d9e5aSRafał Miłecki	help
322a06d9e5aSRafał Miłecki	  This is a driver for the On-chip OTP controller (OCOTP) available
323a06d9e5aSRafał Miłecki	  on Sunplus SoCs. It provides access to 128 bytes of one-time
324a06d9e5aSRafał Miłecki	  programmable eFuse.
325a06d9e5aSRafał Miłecki
326a06d9e5aSRafał Miłecki	  This driver can also be built as a module. If so, the module
327a06d9e5aSRafał Miłecki	  will be called nvmem-sunplus-ocotp.
328a06d9e5aSRafał Miłecki
3293d0b16a6SMaxime Ripardconfig NVMEM_SUNXI_SID
3303d0b16a6SMaxime Ripard	tristate "Allwinner SoCs SID support"
3313d0b16a6SMaxime Ripard	depends on ARCH_SUNXI
3323d0b16a6SMaxime Ripard	help
3333d0b16a6SMaxime Ripard	  This is a driver for the 'security ID' available on various Allwinner
3343d0b16a6SMaxime Ripard	  devices.
3353d0b16a6SMaxime Ripard
3363d0b16a6SMaxime Ripard	  This driver can also be built as a module. If so, the module
3373d0b16a6SMaxime Ripard	  will be called nvmem_sunxi_sid.
3383d0b16a6SMaxime Ripard
339a06d9e5aSRafał Miłeckiconfig NVMEM_U_BOOT_ENV
340a06d9e5aSRafał Miłecki	tristate "U-Boot environment variables support"
341a06d9e5aSRafał Miłecki	depends on OF && MTD
342a06d9e5aSRafał Miłecki	select CRC32
343a06d9e5aSRafał Miłecki	help
344a06d9e5aSRafał Miłecki	  U-Boot stores its setup as environment variables. This driver adds
345a06d9e5aSRafał Miłecki	  support for verifying & exporting such data. It also exposes variables
346a06d9e5aSRafał Miłecki	  as NVMEM cells so they can be referenced by other drivers.
347a06d9e5aSRafał Miłecki
348a06d9e5aSRafał Miłecki	  Currently this drivers works only with env variables on top of MTD.
349a06d9e5aSRafał Miłecki
350a06d9e5aSRafał Miłecki	  If compiled as module it will be called nvmem_u-boot-env.
351a06d9e5aSRafał Miłecki
35228fc7c98SRafał Miłeckiconfig NVMEM_UNIPHIER_EFUSE
35371c5dd50SKeiji Hayashibara	tristate "UniPhier SoCs eFuse support"
35471c5dd50SKeiji Hayashibara	depends on ARCH_UNIPHIER || COMPILE_TEST
35571c5dd50SKeiji Hayashibara	depends on HAS_IOMEM
35671c5dd50SKeiji Hayashibara	help
35771c5dd50SKeiji Hayashibara	  This is a simple driver to dump specified values of UniPhier SoC
35871c5dd50SKeiji Hayashibara	  from eFuse.
35971c5dd50SKeiji Hayashibara
36071c5dd50SKeiji Hayashibara	  This driver can also be built as a module. If so, the module
36171c5dd50SKeiji Hayashibara	  will be called nvmem-uniphier-efuse.
36271c5dd50SKeiji Hayashibara
36322dbdb7cSSanchayan Maityconfig NVMEM_VF610_OCOTP
36422dbdb7cSSanchayan Maity	tristate "VF610 SoC OCOTP support"
36522dbdb7cSSanchayan Maity	depends on SOC_VF610 || COMPILE_TEST
3665685e244SRichard Weinberger	depends on HAS_IOMEM
36722dbdb7cSSanchayan Maity	help
36822dbdb7cSSanchayan Maity	  This is a driver for the 'OCOTP' peripheral available on Vybrid
36922dbdb7cSSanchayan Maity	  devices like VF5xx and VF6xx.
37022dbdb7cSSanchayan Maity
37122dbdb7cSSanchayan Maity	  This driver can also be build as a module. If so, the module will
37222dbdb7cSSanchayan Maity	  be called nvmem-vf610-ocotp.
37322dbdb7cSSanchayan Maity
3744640fa18SNava kishore Manneconfig NVMEM_ZYNQMP
375bcd1fe07SNick Alcock	tristate "Xilinx ZYNQMP SoC nvmem firmware support"
3764640fa18SNava kishore Manne	depends on ARCH_ZYNQMP
3774640fa18SNava kishore Manne	help
3784640fa18SNava kishore Manne	  This is a driver to access hardware related data like
3794640fa18SNava kishore Manne	  soc revision, IDCODE... etc by using the firmware
3804640fa18SNava kishore Manne	  interface.
3814640fa18SNava kishore Manne
3824640fa18SNava kishore Manne	  If sure, say yes. If unsure, say no.
3834640fa18SNava kishore Manne
3844ab11996SSrinivas Kandagatlaendif
385