586 lines · 18.4 KB · Text
RawDownload
# SPDX-License-Identifier: GPL-2.0-onlymenuconfig NVMEM	bool "NVMEM Support"	imply NVMEM_LAYOUTS	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. 	  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. # Layouts source "drivers/nvmem/layouts/Kconfig" # Devices if NVMEM_SYSFS config EEPROM_AT24	tristate "I2C EEPROMs / RAMs / ROMs from most vendors"	depends on I2C && SYSFS	select REGMAP	select REGMAP_I2C	help	  Enable this driver to get read/write support to most I2C EEPROMs	  and compatible devices like FRAMs, SRAMs, ROMs etc. After you	  configure the driver to know about each chip on your target	  board.  Use these generic chip names, instead of vendor-specific	  ones like at24c64, 24lc02 or fm24c04: 	     24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08,	     24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024, 24c2048 	  Unless you like data loss puzzles, always be sure that any chip	  you configure as a 24c32 (32 kbit) or larger is NOT really a	  24c16 (16 kbit) or smaller, and vice versa. Marking the chip	  as read-only won't help recover from this. Also, if your chip	  has any software write-protect mechanism you may want to review the	  code to make sure this driver won't turn it on by accident. 	  If you use this with an SMBus adapter instead of an I2C adapter,	  full functionality is not available.  Only smaller devices are	  supported (24c16 and below, max 4 kByte). 	  This driver can also be built as a module.  If so, the module	  will be called at24. config EEPROM_AT25	tristate "SPI EEPROMs (FRAMs) from most vendors"	depends on SPI && SYSFS	select SPI_MEM	help	  Enable this driver to get read/write support to most SPI EEPROMs	  and Cypress FRAMs,	  after you configure the board init code to know about each eeprom	  on your target board. 	  This driver can also be built as a module.  If so, the module	  will be called at25. config EEPROM_93XX46	tristate "Microwire EEPROM 93XX46 support"	depends on SPI && SYSFS	select REGMAP	help	  Driver for the microwire EEPROM chipsets 93xx46x. The driver	  supports both read and write commands and also the command to	  erase the whole EEPROM. 	  This driver can also be built as a module.  If so, the module	  will be called eeprom_93xx46. 	  If unsure, say N. config EEPROM_EE1004	tristate "SPD EEPROMs on DDR4 memory modules"	depends on I2C && SYSFS	help	  Enable this driver to get read support to SPD EEPROMs following	  the JEDEC EE1004 standard. These are typically found on DDR4	  SDRAM memory modules. 	  This driver can also be built as a module.  If so, the module	  will be called ee1004. config EEPROM_M24LR	tristate "STMicroelectronics M24LR RFID/NFC EEPROM support"	depends on I2C && SYSFS	select REGMAP_I2C	help	  This enables support for STMicroelectronics M24LR RFID/NFC EEPROM	  chips. These dual-interface devices expose two I2C addresses:	  one for EEPROM memory access and another for control and system	  configuration (e.g. UID, password handling). 	  This driver provides a sysfs interface for control functions and	  integrates with the nvmem subsystem for EEPROM access. 	  To compile this driver as a module, choose M here: the	  module will be called m24lr. endif # NVMEM_SYSFS config NVMEM_AIROHA_SMC_EFUSES	tristate "Airoha SMC eFuse support"	depends on ARM64	depends on ARCH_AIROHA || COMPILE_TEST	depends on HAVE_ARM_SMCCC	default ARCH_AIROHA	help	  Say y here to enable support for reading eFuses on Airoha AN7581	  SoCs. These are e.g. used to store factory programmed	  calibration data required for the PCIe or the USB-C PHY or Thermal. 	  This driver can also be built as a module. If so, the module will	  be called nvmem-airoha-smc-efuses. config NVMEM_AN8855_EFUSE	tristate "Airoha AN8855 eFuse support"	depends on COMPILE_TEST	help	  Say y here to enable support for reading eFuses on Airoha AN8855	  Switch. These are e.g. used to store factory programmed	  calibration data required for the PHY. 	  This driver can also be built as a module. If so, the module will	  be called nvmem-an8855-efuse. config NVMEM_APPLE_EFUSES	tristate "Apple eFuse support"	depends on ARCH_APPLE || COMPILE_TEST	help	  Say y here to enable support for reading eFuses on Apple SoCs	  such as the M1. These are e.g. used to store factory programmed	  calibration data required for the PCIe or the USB-C PHY. 	  This driver can also be built as a module. If so, the module will	  be called nvmem-apple-efuses. config NVMEM_APPLE_SPMI	tristate "Apple SPMI NVMEM"	depends on ARCH_APPLE || COMPILE_TEST	depends on SPMI	select REGMAP_SPMI	help	  Say y here to build a driver to expose NVMEM cells for a set of power	  and RTC-related settings on a SPMI-attached PMIC present on Apple	  devices, such as Apple Silicon Macs. 	  This driver can also be built as a module. If so, the module	  will be called apple-nvmem-spmi. 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_BRCM_NVRAM	tristate "Broadcom's NVRAM support"	depends on ARCH_BCM_5301X || COMPILE_TEST	depends on HAS_IOMEM	select GENERIC_NET_UTILS	help	  This driver provides support for Broadcom's NVRAM that can be accessed	  using I/O mapping. 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_ELE	tristate "i.MX On-Chip OTP Controller support"	depends on ARCH_MXC || COMPILE_TEST	depends on HAS_IOMEM	depends on OF	help	  This is a driver for the On-Chip OTP Controller (OCOTP)	  available on i.MX SoCs which has ELE. config NVMEM_IMX_OCOTP_SCU	tristate "i.MX8 SCU On-Chip OTP Controller support"	depends on IMX_SCU	depends on HAVE_ARM_SMCCC	help	  This is a driver for the SCU On-Chip OTP Controller (OCOTP)	  available on i.MX8 SoCs. config NVMEM_JZ4780_EFUSE	tristate "JZ4780 EFUSE Memory Support"	depends on MACH_INGENIC || COMPILE_TEST	depends on HAS_IOMEM	depends on OF	select REGMAP_MMIO	help	  Say Y here to include support for JZ4780 efuse memory found on	  all JZ4780 SoC based devices.	  To compile this driver as a module, choose M here: the module	  will be called nvmem_jz4780_efuse. config NVMEM_LAN9662_OTPC	tristate "Microchip LAN9662 OTP controller support"	depends on SOC_LAN966 || ARCH_LAN969X || COMPILE_TEST	depends on HAS_IOMEM	help	  This driver enables the OTP controller available on Microchip LAN9662	  SoCs. It controls the access to the OTP memory connected to it. config NVMEM_LAYERSCAPE_SFP	tristate "Layerscape SFP (Security Fuse Processor) support"	depends on ARCH_LAYERSCAPE || COMPILE_TEST	depends on HAS_IOMEM	select REGMAP_MMIO	help	  This driver provides support to read the eFuses on Freescale	  Layerscape SoC's. For example, the vendor provides a per part	  unique ID there. 	  This driver can also be built as a module. If so, the module	  will be called layerscape-sfp. 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_MAX77759	tristate "Maxim Integrated MAX77759 NVMEM Support"	depends on MFD_MAX77759	default MFD_MAX77759	help	  Say Y here to include support for the user-accessible storage found	  in Maxim Integrated MAX77759 PMICs. This IC provides space for 30	  bytes of storage. 	  This driver can also be built as a module. If so, the module	  will be called nvmem-max77759. config NVMEM_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 NVMEM_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_MICROCHIP_OTPC	tristate "Microchip OTPC support"	depends on ARCH_AT91 || COMPILE_TEST	help	  This driver enable the OTP controller available on Microchip SAMA7G5	  SoCs. It controls the access to the OTP memory connected to it. config NVMEM_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 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 NVMEM_NINTENDO_OTP	tristate "Nintendo Wii and Wii U OTP Support"	depends on WII || COMPILE_TEST	help	  This is a driver exposing the OTP of a Nintendo Wii or Wii U console. 	  This memory contains common and per-console keys, signatures and	  related data required to access peripherals. 	  This driver can also be built as a module. If so, the module	  will be called nvmem-nintendo-otp. config NVMEM_S32G_OCOTP	tristate "S32G SoC OCOTP support"	depends on ARCH_S32	help	  This is a driver for the 'OCOTP' peripheral available on S32G	  platforms. 	  If you say Y here, you will get support for the One Time	  Programmable memory pages. config NVMEM_QCOM_QFPROM	tristate "Qualcomm 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 NVMEM_QCOM_SEC_QFPROM        tristate "Qualcomm SECURE QFPROM Support"        depends on ARCH_QCOM || COMPILE_TEST        depends on HAS_IOMEM        depends on OF        select QCOM_SCM        help          Say y here to enable secure QFPROM support. The secure 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_sec_qfprom. config NVMEM_QNAP_MCU_EEPROM	tristate "QNAP MCU EEPROM Support"	depends on MFD_QNAP_MCU	help	  Say y here to enable support for accessing the EEPROM attached to	  QNAP MCU devices. This EEPROM contains additional runtime device	  information, like MAC addresses for ethernet devices that do not	  contain their own mac storage. config NVMEM_RAVE_SP_EEPROM	tristate "Rave SP EEPROM Support"	depends on RAVE_SP_CORE	help	  Say y here to enable Rave SP EEPROM support. config NVMEM_RCAR_EFUSE	tristate "Renesas R-Car Gen4 E-FUSE support"	depends on (ARCH_RENESAS && ARM64) || COMPILE_TEST	help	  Enable support for reading the fuses in the E-FUSE or OTP	  non-volatile memory block on Renesas R-Car Gen4 SoCs. 	  This driver can also be built as a module. If so, the module	  will be called nvmem-rcar-efuse. config NVMEM_RMEM	tristate "Reserved Memory Based Driver Support"	depends on HAS_IOMEM	select CRC32	help	  This driver maps reserved memory into an nvmem device. It might be	  useful to expose information left by firmware in memory. 	  This driver can also be built as a module. If so, the module	  will be called nvmem-rmem. config NVMEM_ROCKCHIP_EFUSE	tristate "Rockchip eFuse Support"	depends on ARCH_ROCKCHIP || COMPILE_TEST	depends on HAS_IOMEM	help	  This is a simple driver 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_ROCKCHIP_OTP	tristate "Rockchip OTP controller support"	depends on ARCH_ROCKCHIP || COMPILE_TEST	depends on HAS_IOMEM	help	  This is a simple driver to dump specified values of Rockchip SoC	  from OTP, such as cpu-leakage. 	  This driver can also be built as a module. If so, the module	  will be called nvmem_rockchip_otp. config NVMEM_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_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 NVMEM_SPMI_SDAM	tristate "SPMI SDAM Support"	depends on SPMI	help	  This driver supports the Shared Direct Access Memory Module on	  Qualcomm Technologies, Inc. PMICs. It provides the clients	  an interface to read/write to the SDAM module's shared memory. config NVMEM_SPRD_EFUSE	tristate "Spreadtrum SoC eFuse Support"	depends on ARCH_SPRD || COMPILE_TEST	depends on HAS_IOMEM	help	  This is a simple driver to dump specified values of Spreadtrum	  SoCs from eFuse. 	  This driver can also be built as a module. If so, the module	  will be called nvmem-sprd-efuse. config NVMEM_STM32_BSEC_OPTEE_TA	def_bool NVMEM_STM32_ROMEM && OPTEE	help	  Say y here to enable the accesses to STM32MP SoC OTPs by the OP-TEE	  trusted application STM32MP BSEC. 	  This library is a used by stm32-romem driver or included in the module	  called nvmem-stm32-romem. config NVMEM_STM32_ROMEM	tristate "STMicroelectronics STM32 factory-programmed memory support"	depends on ARCH_STM32 || COMPILE_TEST	depends on OPTEE || !OPTEE	help

Lines 1–500 of 586.