# SPDX-License-Identifier: GPL-2.0-only
menuconfig [31mCONFIG_NVMEM[0m
bool "NVMEM Support"
help
Support for [31mCONFIG_NVMEM[0m(Non Volatile Memory) devices like EEPROM, EFUSES...
This framework is designed to provide a generic interface to [31mCONFIG_NVMEM[0m
from both the Linux Kernel and the userspace.
This driver can also be built as a module. If so, the module
will be called nvmem_core.
If unsure, say no.
if [31mCONFIG_NVMEM[0m
config [31mCONFIG_NVMEM_SYSFS[0m
bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
depends on [31mCONFIG_SYSFS[0m
default y
help
Say Y here to add a sysfs interface for [31mCONFIG_NVMEM[0m.
This interface is mostly used by userspace applications to
read/write directly into nvmem.
config [31mCONFIG_NVMEM_IMX_IIM[0m
tristate "i.MX IC Identification Module support"
depends on [31mCONFIG_ARCH_MXC[0m || [31mCONFIG_COMPILE_TEST[0m
help
This is a driver for the IC Identification Module (IIM) available on
i.MX SoCs, providing access to 4 Kbits of programmable
eFuses.
This driver can also be built as a module. If so, the module
will be called nvmem-imx-iim.
config [31mCONFIG_NVMEM_IMX_OCOTP[0m
tristate "i.MX 6/7/8 On-Chip OTP Controller support"
depends on [31mCONFIG_ARCH_MXC[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
This is a driver for the On-Chip OTP Controller (OCOTP) available on
i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
eFuses.
This driver can also be built as a module. If so, the module
will be called nvmem-imx-ocotp.
config [31mCONFIG_NVMEM_IMX_OCOTP_SCU[0m
tristate "i.MX8 SCU On-Chip OTP Controller support"
depends on [31mCONFIG_IMX_SCU[0m
help
This is a driver for the SCU On-Chip OTP Controller (OCOTP)
available on i.MX8 SoCs.
config [31mCONFIG_NVMEM_LPC18XX_EEPROM[0m
tristate "NXP LPC18XX EEPROM Memory Support"
depends on [31mCONFIG_ARCH_LPC18XX[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
Say Y here to include support for NXP LPC18xx EEPROM memory found in
NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
To compile this driver as a module, choose [31mCONFIG_M[0m here: the module
will be called nvmem_lpc18xx_eeprom.
config [31mCONFIG_NVMEM_LPC18XX_OTP[0m
tristate "NXP LPC18XX OTP Memory Support"
depends on [31mCONFIG_ARCH_LPC18XX[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
Say Y here to include support for NXP LPC18xx OTP memory found on
all LPC18xx and LPC43xx devices.
To compile this driver as a module, choose [31mCONFIG_M[0m here: the module
will be called nvmem_lpc18xx_otp.
config [31mCONFIG_NVMEM_MXS_OCOTP[0m
tristate "Freescale MXS On-Chip OTP Memory Support"
depends on [31mCONFIG_ARCH_MXS[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
If you say Y here, you will get readonly access to the
One Time Programmable memory pages that are stored
on the Freescale i.MX23/i.MX28 processor.
This driver can also be built as a module. If so, the module
will be called nvmem-mxs-ocotp.
config [31mCONFIG_MTK_EFUSE[0m
tristate "Mediatek SoCs EFUSE support"
depends on [31mCONFIG_ARCH_MEDIATEK[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
This is a driver to access hardware related data like sensor
calibration, [31mCONFIG_HDMI[0m impedance etc.
This driver can also be built as a module. If so, the module
will be called efuse-mtk.
config [31mCONFIG_QCOM_QFPROM[0m
tristate "QCOM QFPROM Support"
depends on [31mCONFIG_ARCH_QCOM[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
Say y here to enable QFPROM support. The QFPROM provides access
functions for QFPROM data to rest of the drivers via nvmem interface.
This driver can also be built as a module. If so, the module
will be called nvmem_qfprom.
config [31mCONFIG_ROCKCHIP_EFUSE[0m
tristate "Rockchip eFuse Support"
depends on [31mCONFIG_ARCH_ROCKCHIP[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
This is a simple drive to dump specified values of Rockchip SoC
from eFuse, such as cpu-leakage.
This driver can also be built as a module. If so, the module
will be called nvmem_rockchip_efuse.
config [31mCONFIG_NVMEM_BCM_OCOTP[0m
tristate "Broadcom On-Chip OTP Controller support"
depends on [31mCONFIG_ARCH_BCM_IPROC[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
default [31mCONFIG_ARCH_BCM_IPROC[0m
help
Say y here to enable read/write access to the Broadcom OTP
controller.
This driver can also be built as a module. If so, the module
will be called nvmem-bcm-ocotp.
config [31mCONFIG_NVMEM_STM32_ROMEM[0m
tristate "STMicroelectronics STM32 factory-programmed memory support"
depends on [31mCONFIG_ARCH_STM32[0m || [31mCONFIG_COMPILE_TEST[0m
help
Say y here to enable read-only access for STMicroelectronics STM32
factory-programmed memory area.
This driver can also be built as a module. If so, the module
will be called nvmem-stm32-romem.
config [31mCONFIG_NVMEM_SUNXI_SID[0m
tristate "Allwinner SoCs SID support"
depends on [31mCONFIG_ARCH_SUNXI[0m
help
This is a driver for the 'security ID' available on various Allwinner
devices.
This driver can also be built as a module. If so, the module
will be called nvmem_sunxi_sid.
config [31mCONFIG_UNIPHIER_EFUSE[0m
tristate "UniPhier SoCs eFuse support"
depends on [31mCONFIG_ARCH_UNIPHIER[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
This is a simple driver to dump specified values of UniPhier SoC
from eFuse.
This driver can also be built as a module. If so, the module
will be called nvmem-uniphier-efuse.
config [31mCONFIG_NVMEM_VF610_OCOTP[0m
tristate "VF610 SoC OCOTP support"
depends on [31mCONFIG_SOC_VF610[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
This is a driver for the 'OCOTP' peripheral available on Vybrid
devices like VF5xx and VF6xx.
This driver can also be build as a module. If so, the module will
be called nvmem-vf610-ocotp.
config [31mCONFIG_MESON_EFUSE[0m
tristate "Amlogic Meson GX eFuse Support"
depends on ([31mCONFIG_ARCH_MESON[0m || [31mCONFIG_COMPILE_TEST[0m) && [31mCONFIG_MESON_SM[0m
help
This is a driver to retrieve specific values from the eFuse found on
the Amlogic Meson GX SoCs.
This driver can also be built as a module. If so, the module
will be called nvmem_meson_efuse.
config [31mCONFIG_MESON_MX_EFUSE[0m
tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
depends on [31mCONFIG_ARCH_MESON[0m || [31mCONFIG_COMPILE_TEST[0m
help
This is a driver to retrieve specific values from the eFuse found on
the Amlogic Meson6, Meson8 and Meson8b SoCs.
This driver can also be built as a module. If so, the module
will be called nvmem_meson_mx_efuse.
config [31mCONFIG_NVMEM_SNVS_LPGPR[0m
tristate "Support for Low Power General Purpose Register"
depends on [31mCONFIG_ARCH_MXC[0m || [31mCONFIG_COMPILE_TEST[0m
help
This is a driver for Low Power General Purpose Register (LPGPR) available on
i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
This driver can also be built as a module. If so, the module
will be called nvmem-snvs-lpgpr.
config [31mCONFIG_RAVE_SP_EEPROM[0m
tristate "Rave SP EEPROM Support"
depends on [31mCONFIG_RAVE_SP_CORE[0m
help
Say y here to enable Rave SP EEPROM support.
config [31mCONFIG_SC27XX_EFUSE[0m
tristate "Spreadtrum SC27XX eFuse Support"
depends on [31mCONFIG_MFD_SC27XX_PMIC[0m || [31mCONFIG_COMPILE_TEST[0m
depends on [31mCONFIG_HAS_IOMEM[0m
help
This is a simple driver to dump specified values of Spreadtrum
SC27XX PMICs from eFuse.
This driver can also be built as a module. If so, the module
will be called nvmem-sc27xx-efuse.
config [31mCONFIG_NVMEM_ZYNQMP[0m
bool "Xilinx ZYNQMP SoC nvmem firmware support"
depends on [31mCONFIG_ARCH_ZYNQMP[0m
help
This is a driver to access hardware related data like
soc revision, IDCODE... etc by using the firmware
interface.
If sure, say yes. If unsure, say no.
endif