# SPDX-License-Identifier: GPL-2.0-only menuconfig NVMEM bool "NVMEM Support" help Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES... This framework is designed to provide a generic interface to NVMEM 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 NVMEM config NVMEM_SYSFS bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)" depends on SYSFS default y help Say Y here to add a sysfs interface for NVMEM. This interface is mostly used by userspace applications to read/write directly into nvmem. config NVMEM_IMX_IIM tristate "i.MX IC Identification Module support" depends on ARCH_MXC || COMPILE_TEST 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 NVMEM_IMX_OCOTP tristate "i.MX 6/7/8 On-Chip OTP Controller support" depends on ARCH_MXC || COMPILE_TEST depends on HAS_IOMEM 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 NVMEM_IMX_OCOTP_SCU tristate "i.MX8 SCU On-Chip OTP Controller support" depends on IMX_SCU help This is a driver for the SCU On-Chip OTP Controller (OCOTP) available on i.MX8 SoCs. config NVMEM_LPC18XX_EEPROM tristate "NXP LPC18XX EEPROM Memory Support" depends on ARCH_LPC18XX || COMPILE_TEST depends on HAS_IOMEM 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 M here: the module will be called nvmem_lpc18xx_eeprom. config NVMEM_LPC18XX_OTP tristate "NXP LPC18XX OTP Memory Support" depends on ARCH_LPC18XX || COMPILE_TEST depends on HAS_IOMEM 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 M here: the module will be called nvmem_lpc18xx_otp. config NVMEM_MXS_OCOTP tristate "Freescale MXS On-Chip OTP Memory Support" depends on ARCH_MXS || COMPILE_TEST depends on HAS_IOMEM 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 MTK_EFUSE tristate "Mediatek SoCs EFUSE support" depends on ARCH_MEDIATEK || COMPILE_TEST depends on HAS_IOMEM help This is a driver to access hardware related data like sensor calibration, HDMI impedance etc. This driver can also be built as a module. If so, the module will be called efuse-mtk. config QCOM_QFPROM tristate "QCOM QFPROM Support" depends on ARCH_QCOM || COMPILE_TEST depends on HAS_IOMEM 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 ROCKCHIP_EFUSE tristate "Rockchip eFuse Support" depends on ARCH_ROCKCHIP || COMPILE_TEST depends on HAS_IOMEM 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 NVMEM_BCM_OCOTP tristate "Broadcom On-Chip OTP Controller support" depends on ARCH_BCM_IPROC || COMPILE_TEST depends on HAS_IOMEM default ARCH_BCM_IPROC 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 NVMEM_STM32_ROMEM tristate "STMicroelectronics STM32 factory-programmed memory support" depends on ARCH_STM32 || COMPILE_TEST 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 NVMEM_SUNXI_SID tristate "Allwinner SoCs SID support" depends on ARCH_SUNXI 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 UNIPHIER_EFUSE tristate "UniPhier SoCs eFuse support" depends on ARCH_UNIPHIER || COMPILE_TEST depends on HAS_IOMEM 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 NVMEM_VF610_OCOTP tristate "VF610 SoC OCOTP support" depends on SOC_VF610 || COMPILE_TEST depends on HAS_IOMEM 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 MESON_EFUSE tristate "Amlogic Meson GX eFuse Support" depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM 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 MESON_MX_EFUSE tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support" depends on ARCH_MESON || COMPILE_TEST 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 NVMEM_SNVS_LPGPR tristate "Support for Low Power General Purpose Register" depends on ARCH_MXC || COMPILE_TEST 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 RAVE_SP_EEPROM tristate "Rave SP EEPROM Support" depends on RAVE_SP_CORE help Say y here to enable Rave SP EEPROM support. config SC27XX_EFUSE tristate "Spreadtrum SC27XX eFuse Support" depends on MFD_SC27XX_PMIC || COMPILE_TEST depends on HAS_IOMEM 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 NVMEM_ZYNQMP bool "Xilinx ZYNQMP SoC nvmem firmware support" depends on ARCH_ZYNQMP 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