1# SPDX-License-Identifier: GPL-2.0-only 2menuconfig 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 15if NVMEM 16 17config 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 27config 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 38config 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 50config 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 57config 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 67config 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 77config 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 89config 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 100config 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 111config 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 122config 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 134config 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 144config 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 154config 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 165config 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 176config 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 186config 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 196config 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 206config 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 212config 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 223config 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 233endif 234