gpio: of: Break out OF-only code
[linux/fpc-iii.git] / drivers / nvmem / Kconfig
blobc2ec750cae6e8429ab79ef5d6cf1a7e3195c5abe
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...
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.
13           If unsure, say no.
15 if NVMEM
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.
24          This interface is mostly used by userspace applications to
25          read/write directly into nvmem.
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.
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
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.
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"
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.
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.
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.
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.
86           This driver can also be built as a module. If so, the module
87           will be called nvmem-mxs-ocotp.
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.
97           This driver can also be built as a module. If so, the module
98           will be called efuse-mtk.
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.
108           This driver can also be built as a module. If so, the module
109           will be called nvmem_qfprom.
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.
119           This driver can also be built as a module. If so, the module
120           will be called nvmem_rockchip_efuse.
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.
131           This driver can also be built as a module. If so, the module
132           will be called nvmem-bcm-ocotp.
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.
141           This driver can also be built as a module. If so, the module
142           will be called nvmem-stm32-romem.
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.
151           This driver can also be built as a module. If so, the module
152           will be called nvmem_sunxi_sid.
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.
162           This driver can also be built as a module. If so, the module
163           will be called nvmem-uniphier-efuse.
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.
173           This driver can also be build as a module. If so, the module will
174           be called nvmem-vf610-ocotp.
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.
183           This driver can also be built as a module. If so, the module
184           will be called nvmem_meson_efuse.
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.
193           This driver can also be built as a module. If so, the module
194           will be called nvmem_meson_mx_efuse.
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.
203           This driver can also be built as a module. If so, the module
204           will be called nvmem-snvs-lpgpr.
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.
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.
220           This driver can also be built as a module. If so, the module
221           will be called nvmem-sc27xx-efuse.
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.
231           If sure, say yes. If unsure, say no.
233 endif