]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blob - drivers/nvmem/Kconfig
Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[mirror_ubuntu-focal-kernel.git] / drivers / nvmem / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menuconfig NVMEM
3 bool "NVMEM Support"
4 help
5 Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
6
7 This framework is designed to provide a generic interface to NVMEM
8 from both the Linux Kernel and the userspace.
9
10 This driver can also be built as a module. If so, the module
11 will be called nvmem_core.
12
13 If unsure, say no.
14
15 if NVMEM
16
17 config NVMEM_SYSFS
18 bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
19 depends on SYSFS
20 default y
21 help
22 Say Y here to add a sysfs interface for NVMEM.
23
24 This interface is mostly used by userspace applications to
25 read/write directly into nvmem.
26
27 config NVMEM_IMX_IIM
28 tristate "i.MX IC Identification Module support"
29 depends on ARCH_MXC || COMPILE_TEST
30 help
31 This is a driver for the IC Identification Module (IIM) available on
32 i.MX SoCs, providing access to 4 Kbits of programmable
33 eFuses.
34
35 This driver can also be built as a module. If so, the module
36 will be called nvmem-imx-iim.
37
38 config NVMEM_IMX_OCOTP
39 tristate "i.MX 6/7/8 On-Chip OTP Controller support"
40 depends on ARCH_MXC || COMPILE_TEST
41 depends on HAS_IOMEM
42 help
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
45 eFuses.
46
47 This driver can also be built as a module. If so, the module
48 will be called nvmem-imx-ocotp.
49
50 config NVMEM_IMX_OCOTP_SCU
51 tristate "i.MX8 SCU On-Chip OTP Controller support"
52 depends on IMX_SCU
53 help
54 This is a driver for the SCU On-Chip OTP Controller (OCOTP)
55 available on i.MX8 SoCs.
56
57 config NVMEM_LPC18XX_EEPROM
58 tristate "NXP LPC18XX EEPROM Memory Support"
59 depends on ARCH_LPC18XX || COMPILE_TEST
60 depends on HAS_IOMEM
61 help
62 Say Y here to include support for NXP LPC18xx EEPROM memory found in
63 NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
64 To compile this driver as a module, choose M here: the module
65 will be called nvmem_lpc18xx_eeprom.
66
67 config NVMEM_LPC18XX_OTP
68 tristate "NXP LPC18XX OTP Memory Support"
69 depends on ARCH_LPC18XX || COMPILE_TEST
70 depends on HAS_IOMEM
71 help
72 Say Y here to include support for NXP LPC18xx OTP memory found on
73 all LPC18xx and LPC43xx devices.
74 To compile this driver as a module, choose M here: the module
75 will be called nvmem_lpc18xx_otp.
76
77 config NVMEM_MXS_OCOTP
78 tristate "Freescale MXS On-Chip OTP Memory Support"
79 depends on ARCH_MXS || COMPILE_TEST
80 depends on HAS_IOMEM
81 help
82 If you say Y here, you will get readonly access to the
83 One Time Programmable memory pages that are stored
84 on the Freescale i.MX23/i.MX28 processor.
85
86 This driver can also be built as a module. If so, the module
87 will be called nvmem-mxs-ocotp.
88
89 config MTK_EFUSE
90 tristate "Mediatek SoCs EFUSE support"
91 depends on ARCH_MEDIATEK || COMPILE_TEST
92 depends on HAS_IOMEM
93 help
94 This is a driver to access hardware related data like sensor
95 calibration, HDMI impedance etc.
96
97 This driver can also be built as a module. If so, the module
98 will be called efuse-mtk.
99
100 config QCOM_QFPROM
101 tristate "QCOM QFPROM Support"
102 depends on ARCH_QCOM || COMPILE_TEST
103 depends on HAS_IOMEM
104 help
105 Say y here to enable QFPROM support. The QFPROM provides access
106 functions for QFPROM data to rest of the drivers via nvmem interface.
107
108 This driver can also be built as a module. If so, the module
109 will be called nvmem_qfprom.
110
111 config ROCKCHIP_EFUSE
112 tristate "Rockchip eFuse Support"
113 depends on ARCH_ROCKCHIP || COMPILE_TEST
114 depends on HAS_IOMEM
115 help
116 This is a simple drive to dump specified values of Rockchip SoC
117 from eFuse, such as cpu-leakage.
118
119 This driver can also be built as a module. If so, the module
120 will be called nvmem_rockchip_efuse.
121
122 config NVMEM_BCM_OCOTP
123 tristate "Broadcom On-Chip OTP Controller support"
124 depends on ARCH_BCM_IPROC || COMPILE_TEST
125 depends on HAS_IOMEM
126 default ARCH_BCM_IPROC
127 help
128 Say y here to enable read/write access to the Broadcom OTP
129 controller.
130
131 This driver can also be built as a module. If so, the module
132 will be called nvmem-bcm-ocotp.
133
134 config NVMEM_STM32_ROMEM
135 tristate "STMicroelectronics STM32 factory-programmed memory support"
136 depends on ARCH_STM32 || COMPILE_TEST
137 help
138 Say y here to enable read-only access for STMicroelectronics STM32
139 factory-programmed memory area.
140
141 This driver can also be built as a module. If so, the module
142 will be called nvmem-stm32-romem.
143
144 config NVMEM_SUNXI_SID
145 tristate "Allwinner SoCs SID support"
146 depends on ARCH_SUNXI
147 help
148 This is a driver for the 'security ID' available on various Allwinner
149 devices.
150
151 This driver can also be built as a module. If so, the module
152 will be called nvmem_sunxi_sid.
153
154 config UNIPHIER_EFUSE
155 tristate "UniPhier SoCs eFuse support"
156 depends on ARCH_UNIPHIER || COMPILE_TEST
157 depends on HAS_IOMEM
158 help
159 This is a simple driver to dump specified values of UniPhier SoC
160 from eFuse.
161
162 This driver can also be built as a module. If so, the module
163 will be called nvmem-uniphier-efuse.
164
165 config NVMEM_VF610_OCOTP
166 tristate "VF610 SoC OCOTP support"
167 depends on SOC_VF610 || COMPILE_TEST
168 depends on HAS_IOMEM
169 help
170 This is a driver for the 'OCOTP' peripheral available on Vybrid
171 devices like VF5xx and VF6xx.
172
173 This driver can also be build as a module. If so, the module will
174 be called nvmem-vf610-ocotp.
175
176 config MESON_EFUSE
177 tristate "Amlogic Meson GX eFuse Support"
178 depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
179 help
180 This is a driver to retrieve specific values from the eFuse found on
181 the Amlogic Meson GX SoCs.
182
183 This driver can also be built as a module. If so, the module
184 will be called nvmem_meson_efuse.
185
186 config MESON_MX_EFUSE
187 tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
188 depends on ARCH_MESON || COMPILE_TEST
189 help
190 This is a driver to retrieve specific values from the eFuse found on
191 the Amlogic Meson6, Meson8 and Meson8b SoCs.
192
193 This driver can also be built as a module. If so, the module
194 will be called nvmem_meson_mx_efuse.
195
196 config NVMEM_SNVS_LPGPR
197 tristate "Support for Low Power General Purpose Register"
198 depends on ARCH_MXC || COMPILE_TEST
199 help
200 This is a driver for Low Power General Purpose Register (LPGPR) available on
201 i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
202
203 This driver can also be built as a module. If so, the module
204 will be called nvmem-snvs-lpgpr.
205
206 config RAVE_SP_EEPROM
207 tristate "Rave SP EEPROM Support"
208 depends on RAVE_SP_CORE
209 help
210 Say y here to enable Rave SP EEPROM support.
211
212 config SC27XX_EFUSE
213 tristate "Spreadtrum SC27XX eFuse Support"
214 depends on MFD_SC27XX_PMIC || COMPILE_TEST
215 depends on HAS_IOMEM
216 help
217 This is a simple driver to dump specified values of Spreadtrum
218 SC27XX PMICs from eFuse.
219
220 This driver can also be built as a module. If so, the module
221 will be called nvmem-sc27xx-efuse.
222
223 config NVMEM_ZYNQMP
224 bool "Xilinx ZYNQMP SoC nvmem firmware support"
225 depends on ARCH_ZYNQMP
226 help
227 This is a driver to access hardware related data like
228 soc revision, IDCODE... etc by using the firmware
229 interface.
230
231 If sure, say yes. If unsure, say no.
232
233 endif