blob: 6b2c4254c2fb027d1b558565bff37032b309a934 [file] [log] [blame]
Srinivas Kandagatlaeace75c2015-07-27 12:13:19 +01001menuconfig NVMEM
Arnd Bergmann2a37ce22018-04-04 12:38:40 +02002 bool "NVMEM Support"
Srinivas Kandagatlaeace75c2015-07-27 12:13:19 +01003 help
4 Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
5
6 This framework is designed to provide a generic interface to NVMEM
7 from both the Linux Kernel and the userspace.
8
9 This driver can also be built as a module. If so, the module
10 will be called nvmem_core.
11
12 If unsure, say no.
Srinivas Kandagatla4ab11992015-07-27 12:15:00 +010013
14if NVMEM
15
Srinivas Kandagatlaae0c2d72019-04-16 10:59:24 +010016config NVMEM_SYSFS
17 bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
18 depends on SYSFS
19 default y
20 help
21 Say Y here to add a sysfs interface for NVMEM.
22
23 This interface is mostly used by userspace applications to
24 read/write directly into nvmem.
25
Michael Grzeschikc066c1c2017-03-31 13:44:50 +010026config NVMEM_IMX_IIM
27 tristate "i.MX IC Identification Module support"
28 depends on ARCH_MXC || COMPILE_TEST
29 help
30 This is a driver for the IC Identification Module (IIM) available on
31 i.MX SoCs, providing access to 4 Kbits of programmable
32 eFuses.
33
34 This driver can also be built as a module. If so, the module
35 will be called nvmem-imx-iim.
36
Philipp Zabel3edba6b2015-09-30 13:55:47 +010037config NVMEM_IMX_OCOTP
Lucas Stachdd4c1042019-04-13 11:32:48 +010038 tristate "i.MX 6/7/8 On-Chip OTP Controller support"
39 depends on ARCH_MXC || COMPILE_TEST
Srinivas Kandagatla63c0c072016-06-02 12:19:43 +010040 depends on HAS_IOMEM
Philipp Zabel3edba6b2015-09-30 13:55:47 +010041 help
42 This is a driver for the On-Chip OTP Controller (OCOTP) available on
43 i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
44 eFuses.
45
46 This driver can also be built as a module. If so, the module
47 will be called nvmem-imx-ocotp.
48
Ariel D'Alessandrof02f8ae2015-12-07 10:57:39 +000049config NVMEM_LPC18XX_EEPROM
50 tristate "NXP LPC18XX EEPROM Memory Support"
51 depends on ARCH_LPC18XX || COMPILE_TEST
Krzysztof Kozlowski2ce7aed2016-03-31 11:07:03 +010052 depends on HAS_IOMEM
Ariel D'Alessandrof02f8ae2015-12-07 10:57:39 +000053 help
54 Say Y here to include support for NXP LPC18xx EEPROM memory found in
55 NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
56 To compile this driver as a module, choose M here: the module
57 will be called nvmem_lpc18xx_eeprom.
58
Joachim Eastwood88806daf2016-10-31 14:45:16 +000059config NVMEM_LPC18XX_OTP
60 tristate "NXP LPC18XX OTP Memory Support"
61 depends on ARCH_LPC18XX || COMPILE_TEST
62 depends on HAS_IOMEM
63 help
64 Say Y here to include support for NXP LPC18xx OTP memory found on
65 all LPC18xx and LPC43xx devices.
66 To compile this driver as a module, choose M here: the module
67 will be called nvmem_lpc18xx_otp.
68
Stefan Wahrenc01e9a12015-09-30 13:56:27 +010069config NVMEM_MXS_OCOTP
70 tristate "Freescale MXS On-Chip OTP Memory Support"
71 depends on ARCH_MXS || COMPILE_TEST
Richard Weinberger5685e242016-02-22 11:23:44 +000072 depends on HAS_IOMEM
Stefan Wahrenc01e9a12015-09-30 13:56:27 +010073 help
74 If you say Y here, you will get readonly access to the
75 One Time Programmable memory pages that are stored
76 on the Freescale i.MX23/i.MX28 processor.
77
78 This driver can also be built as a module. If so, the module
79 will be called nvmem-mxs-ocotp.
80
Andrew-CT Chen4c7e4fe2015-12-07 10:58:11 +000081config MTK_EFUSE
82 tristate "Mediatek SoCs EFUSE support"
83 depends on ARCH_MEDIATEK || COMPILE_TEST
Krzysztof Kozlowski2ce7aed2016-03-31 11:07:03 +010084 depends on HAS_IOMEM
Andrew-CT Chen4c7e4fe2015-12-07 10:58:11 +000085 help
86 This is a driver to access hardware related data like sensor
87 calibration, HDMI impedance etc.
88
89 This driver can also be built as a module. If so, the module
90 will be called efuse-mtk.
91
Srinivas Kandagatla4ab11992015-07-27 12:15:00 +010092config QCOM_QFPROM
93 tristate "QCOM QFPROM Support"
94 depends on ARCH_QCOM || COMPILE_TEST
Richard Weinberger5685e242016-02-22 11:23:44 +000095 depends on HAS_IOMEM
Srinivas Kandagatla4ab11992015-07-27 12:15:00 +010096 help
97 Say y here to enable QFPROM support. The QFPROM provides access
98 functions for QFPROM data to rest of the drivers via nvmem interface.
99
100 This driver can also be built as a module. If so, the module
101 will be called nvmem_qfprom.
102
ZhengShunQian03a69562015-09-30 13:56:44 +0100103config ROCKCHIP_EFUSE
104 tristate "Rockchip eFuse Support"
105 depends on ARCH_ROCKCHIP || COMPILE_TEST
Richard Weinberger5685e242016-02-22 11:23:44 +0000106 depends on HAS_IOMEM
ZhengShunQian03a69562015-09-30 13:56:44 +0100107 help
108 This is a simple drive to dump specified values of Rockchip SoC
109 from eFuse, such as cpu-leakage.
110
111 This driver can also be built as a module. If so, the module
112 will be called nvmem_rockchip_efuse.
113
Jonathan Richardson9d59c6e2016-10-31 14:45:19 +0000114config NVMEM_BCM_OCOTP
115 tristate "Broadcom On-Chip OTP Controller support"
116 depends on ARCH_BCM_IPROC || COMPILE_TEST
117 depends on HAS_IOMEM
118 default ARCH_BCM_IPROC
119 help
120 Say y here to enable read/write access to the Broadcom OTP
121 controller.
122
123 This driver can also be built as a module. If so, the module
124 will be called nvmem-bcm-ocotp.
125
Fabrice Gasnierded1b7f2019-04-13 11:32:55 +0100126config NVMEM_STM32_ROMEM
127 tristate "STMicroelectronics STM32 factory-programmed memory support"
128 depends on ARCH_STM32 || COMPILE_TEST
129 help
130 Say y here to enable read-only access for STMicroelectronics STM32
131 factory-programmed memory area.
132
133 This driver can also be built as a module. If so, the module
134 will be called nvmem-stm32-romem.
135
Maxime Ripard3d0b16a2015-07-27 12:17:09 +0100136config NVMEM_SUNXI_SID
137 tristate "Allwinner SoCs SID support"
138 depends on ARCH_SUNXI
Maxime Ripard3d0b16a2015-07-27 12:17:09 +0100139 help
140 This is a driver for the 'security ID' available on various Allwinner
141 devices.
142
143 This driver can also be built as a module. If so, the module
144 will be called nvmem_sunxi_sid.
145
Keiji Hayashibara71c5dd52017-10-24 10:54:26 +0100146config UNIPHIER_EFUSE
147 tristate "UniPhier SoCs eFuse support"
148 depends on ARCH_UNIPHIER || COMPILE_TEST
149 depends on HAS_IOMEM
150 help
151 This is a simple driver to dump specified values of UniPhier SoC
152 from eFuse.
153
154 This driver can also be built as a module. If so, the module
155 will be called nvmem-uniphier-efuse.
156
Sanchayan Maity22dbdb72015-09-30 13:54:59 +0100157config NVMEM_VF610_OCOTP
158 tristate "VF610 SoC OCOTP support"
159 depends on SOC_VF610 || COMPILE_TEST
Richard Weinberger5685e242016-02-22 11:23:44 +0000160 depends on HAS_IOMEM
Sanchayan Maity22dbdb72015-09-30 13:54:59 +0100161 help
162 This is a driver for the 'OCOTP' peripheral available on Vybrid
163 devices like VF5xx and VF6xx.
164
165 This driver can also be build as a module. If so, the module will
166 be called nvmem-vf610-ocotp.
167
Carlo Caionead855ea2016-08-27 15:43:46 +0200168config MESON_EFUSE
Martin Blumenstingl9593ad32017-10-09 15:26:40 +0200169 tristate "Amlogic Meson GX eFuse Support"
Carlo Caionead855ea2016-08-27 15:43:46 +0200170 depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
171 help
172 This is a driver to retrieve specific values from the eFuse found on
Martin Blumenstingl9593ad32017-10-09 15:26:40 +0200173 the Amlogic Meson GX SoCs.
Carlo Caionead855ea2016-08-27 15:43:46 +0200174
175 This driver can also be built as a module. If so, the module
176 will be called nvmem_meson_efuse.
177
Martin Blumenstingl8caef1f2017-10-09 15:26:41 +0200178config MESON_MX_EFUSE
179 tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
180 depends on ARCH_MESON || COMPILE_TEST
181 help
182 This is a driver to retrieve specific values from the eFuse found on
183 the Amlogic Meson6, Meson8 and Meson8b SoCs.
184
185 This driver can also be built as a module. If so, the module
186 will be called nvmem_meson_mx_efuse.
187
Oleksij Rempel988437a2017-09-17 12:33:43 +0200188config NVMEM_SNVS_LPGPR
189 tristate "Support for Low Power General Purpose Register"
Andrey Yurovsky80b820c2018-03-09 14:47:16 +0000190 depends on SOC_IMX6 || SOC_IMX7D || COMPILE_TEST
Oleksij Rempel988437a2017-09-17 12:33:43 +0200191 help
192 This is a driver for Low Power General Purpose Register (LPGPR) available on
Andrey Yurovsky80b820c2018-03-09 14:47:16 +0000193 i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
Oleksij Rempel988437a2017-09-17 12:33:43 +0200194
195 This driver can also be built as a module. If so, the module
196 will be called nvmem-snvs-lpgpr.
197
Andrey Smirnov3b51f472018-05-11 12:06:58 +0100198config RAVE_SP_EEPROM
199 tristate "Rave SP EEPROM Support"
200 depends on RAVE_SP_CORE
201 help
202 Say y here to enable Rave SP EEPROM support.
203
Freeman Liu19c54462018-07-11 11:20:41 +0100204config SC27XX_EFUSE
205 tristate "Spreadtrum SC27XX eFuse Support"
206 depends on MFD_SC27XX_PMIC || COMPILE_TEST
207 depends on HAS_IOMEM
208 help
209 This is a simple driver to dump specified values of Spreadtrum
210 SC27XX PMICs from eFuse.
211
212 This driver can also be built as a module. If so, the module
213 will be called nvmem-sc27xx-efuse.
214
Nava kishore Manne4640fa12019-02-06 16:37:21 +0530215config NVMEM_ZYNQMP
216 bool "Xilinx ZYNQMP SoC nvmem firmware support"
217 depends on ARCH_ZYNQMP
218 help
219 This is a driver to access hardware related data like
220 soc revision, IDCODE... etc by using the firmware
221 interface.
222
223 If sure, say yes. If unsure, say no.
224
Srinivas Kandagatla4ab11992015-07-27 12:15:00 +0100225endif