1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2eace75cfSSrinivas Kandagatlamenuconfig NVMEM 32a37ce25SArnd Bergmann bool "NVMEM Support" 4fc29fd82SMiquel Raynal imply NVMEM_LAYOUTS 5eace75cfSSrinivas Kandagatla help 6eace75cfSSrinivas Kandagatla Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES... 7eace75cfSSrinivas Kandagatla 8eace75cfSSrinivas Kandagatla This framework is designed to provide a generic interface to NVMEM 9eace75cfSSrinivas Kandagatla from both the Linux Kernel and the userspace. 10eace75cfSSrinivas Kandagatla 11eace75cfSSrinivas Kandagatla If unsure, say no. 124ab11996SSrinivas Kandagatla 134ab11996SSrinivas Kandagatlaif NVMEM 144ab11996SSrinivas Kandagatla 15ae0c2d72SSrinivas Kandagatlaconfig NVMEM_SYSFS 16ae0c2d72SSrinivas Kandagatla bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)" 17ae0c2d72SSrinivas Kandagatla depends on SYSFS 18ae0c2d72SSrinivas Kandagatla default y 19ae0c2d72SSrinivas Kandagatla help 20ae0c2d72SSrinivas Kandagatla Say Y here to add a sysfs interface for NVMEM. 21ae0c2d72SSrinivas Kandagatla 22ae0c2d72SSrinivas Kandagatla This interface is mostly used by userspace applications to 23ae0c2d72SSrinivas Kandagatla read/write directly into nvmem. 24ae0c2d72SSrinivas Kandagatla 25266570f4SMichael Walle# Layouts 26266570f4SMichael Walle 27266570f4SMichael Wallesource "drivers/nvmem/layouts/Kconfig" 28266570f4SMichael Walle 29a06d9e5aSRafał Miłecki# Devices 30a06d9e5aSRafał Miłecki 31e2258cfdSChristian Marangiconfig NVMEM_AN8855_EFUSE 32e2258cfdSChristian Marangi tristate "Airoha AN8855 eFuse support" 33*4796eaafSRandy Dunlap depends on COMPILE_TEST 34e2258cfdSChristian Marangi help 35e2258cfdSChristian Marangi Say y here to enable support for reading eFuses on Airoha AN8855 36e2258cfdSChristian Marangi Switch. These are e.g. used to store factory programmed 37e2258cfdSChristian Marangi calibration data required for the PHY. 38e2258cfdSChristian Marangi 39e2258cfdSChristian Marangi This driver can also be built as a module. If so, the module will 40e2258cfdSChristian Marangi be called nvmem-an8855-efuse. 41e2258cfdSChristian Marangi 42a06d9e5aSRafał Miłeckiconfig NVMEM_APPLE_EFUSES 43a06d9e5aSRafał Miłecki tristate "Apple eFuse support" 44a06d9e5aSRafał Miłecki depends on ARCH_APPLE || COMPILE_TEST 45a06d9e5aSRafał Miłecki help 46a06d9e5aSRafał Miłecki Say y here to enable support for reading eFuses on Apple SoCs 47a06d9e5aSRafał Miłecki such as the M1. These are e.g. used to store factory programmed 48a06d9e5aSRafał Miłecki calibration data required for the PCIe or the USB-C PHY. 49a06d9e5aSRafał Miłecki 50a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module will 51a06d9e5aSRafał Miłecki be called nvmem-apple-efuses. 52a06d9e5aSRafał Miłecki 53fe91c24aSHector Martinconfig NVMEM_APPLE_SPMI 54fe91c24aSHector Martin tristate "Apple SPMI NVMEM" 55fe91c24aSHector Martin depends on ARCH_APPLE || COMPILE_TEST 56fe91c24aSHector Martin depends on SPMI 57fe91c24aSHector Martin select REGMAP_SPMI 58fe91c24aSHector Martin help 59fe91c24aSHector Martin Say y here to build a driver to expose NVMEM cells for a set of power 60fe91c24aSHector Martin and RTC-related settings on a SPMI-attached PMIC present on Apple 61fe91c24aSHector Martin devices, such as Apple Silicon Macs. 62fe91c24aSHector Martin 63fe91c24aSHector Martin This driver can also be built as a module. If so, the module 64fe91c24aSHector Martin will be called apple-nvmem-spmi. 65fe91c24aSHector Martin 66a06d9e5aSRafał Miłeckiconfig NVMEM_BCM_OCOTP 67a06d9e5aSRafał Miłecki tristate "Broadcom On-Chip OTP Controller support" 68a06d9e5aSRafał Miłecki depends on ARCH_BCM_IPROC || COMPILE_TEST 69a06d9e5aSRafał Miłecki depends on HAS_IOMEM 70a06d9e5aSRafał Miłecki default ARCH_BCM_IPROC 71a06d9e5aSRafał Miłecki help 72a06d9e5aSRafał Miłecki Say y here to enable read/write access to the Broadcom OTP 73a06d9e5aSRafał Miłecki controller. 74a06d9e5aSRafał Miłecki 75a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 76a06d9e5aSRafał Miłecki will be called nvmem-bcm-ocotp. 77a06d9e5aSRafał Miłecki 78a06d9e5aSRafał Miłeckiconfig NVMEM_BRCM_NVRAM 79a06d9e5aSRafał Miłecki tristate "Broadcom's NVRAM support" 80a06d9e5aSRafał Miłecki depends on ARCH_BCM_5301X || COMPILE_TEST 81a06d9e5aSRafał Miłecki depends on HAS_IOMEM 8273bcd133SRafał Miłecki select GENERIC_NET_UTILS 83a06d9e5aSRafał Miłecki help 84a06d9e5aSRafał Miłecki This driver provides support for Broadcom's NVRAM that can be accessed 85a06d9e5aSRafał Miłecki using I/O mapping. 86a06d9e5aSRafał Miłecki 87c066c1c0SMichael Grzeschikconfig NVMEM_IMX_IIM 88c066c1c0SMichael Grzeschik tristate "i.MX IC Identification Module support" 89c066c1c0SMichael Grzeschik depends on ARCH_MXC || COMPILE_TEST 90c066c1c0SMichael Grzeschik help 91c066c1c0SMichael Grzeschik This is a driver for the IC Identification Module (IIM) available on 92c066c1c0SMichael Grzeschik i.MX SoCs, providing access to 4 Kbits of programmable 93c066c1c0SMichael Grzeschik eFuses. 94c066c1c0SMichael Grzeschik 95c066c1c0SMichael Grzeschik This driver can also be built as a module. If so, the module 96c066c1c0SMichael Grzeschik will be called nvmem-imx-iim. 97c066c1c0SMichael Grzeschik 983edba6b4SPhilipp Zabelconfig NVMEM_IMX_OCOTP 99dd4c1047SLucas Stach tristate "i.MX 6/7/8 On-Chip OTP Controller support" 100dd4c1047SLucas Stach depends on ARCH_MXC || COMPILE_TEST 10163c0c076SSrinivas Kandagatla depends on HAS_IOMEM 1023edba6b4SPhilipp Zabel help 1033edba6b4SPhilipp Zabel This is a driver for the On-Chip OTP Controller (OCOTP) available on 1043edba6b4SPhilipp Zabel i.MX6 SoCs, providing access to 4 Kbits of one-time programmable 1053edba6b4SPhilipp Zabel eFuses. 1063edba6b4SPhilipp Zabel 1073edba6b4SPhilipp Zabel This driver can also be built as a module. If so, the module 1083edba6b4SPhilipp Zabel will be called nvmem-imx-ocotp. 1093edba6b4SPhilipp Zabel 11022e9e6fcSPeng Fanconfig NVMEM_IMX_OCOTP_ELE 11122e9e6fcSPeng Fan tristate "i.MX On-Chip OTP Controller support" 11222e9e6fcSPeng Fan depends on ARCH_MXC || COMPILE_TEST 11322e9e6fcSPeng Fan depends on HAS_IOMEM 11422e9e6fcSPeng Fan depends on OF 11522e9e6fcSPeng Fan help 11622e9e6fcSPeng Fan This is a driver for the On-Chip OTP Controller (OCOTP) 11722e9e6fcSPeng Fan available on i.MX SoCs which has ELE. 11822e9e6fcSPeng Fan 11967ff708bSPeng Fanconfig NVMEM_IMX_OCOTP_SCU 12067ff708bSPeng Fan tristate "i.MX8 SCU On-Chip OTP Controller support" 12167ff708bSPeng Fan depends on IMX_SCU 122b210fac7SSrinivas Kandagatla depends on HAVE_ARM_SMCCC 12367ff708bSPeng Fan help 12467ff708bSPeng Fan This is a driver for the SCU On-Chip OTP Controller (OCOTP) 12567ff708bSPeng Fan available on i.MX8 SoCs. 12667ff708bSPeng Fan 12728fc7c98SRafał Miłeckiconfig NVMEM_JZ4780_EFUSE 1284a2addc2SPrasannaKumar Muralidharan tristate "JZ4780 EFUSE Memory Support" 1294a2addc2SPrasannaKumar Muralidharan depends on MACH_INGENIC || COMPILE_TEST 1304a2addc2SPrasannaKumar Muralidharan depends on HAS_IOMEM 1314a2addc2SPrasannaKumar Muralidharan depends on OF 1324a2addc2SPrasannaKumar Muralidharan select REGMAP_MMIO 1334a2addc2SPrasannaKumar Muralidharan help 1344a2addc2SPrasannaKumar Muralidharan Say Y here to include support for JZ4780 efuse memory found on 1354a2addc2SPrasannaKumar Muralidharan all JZ4780 SoC based devices. 1364a2addc2SPrasannaKumar Muralidharan To compile this driver as a module, choose M here: the module 1374a2addc2SPrasannaKumar Muralidharan will be called nvmem_jz4780_efuse. 1384a2addc2SPrasannaKumar Muralidharan 1399e8f208aSHoratiu Vulturconfig NVMEM_LAN9662_OTPC 1409e8f208aSHoratiu Vultur tristate "Microchip LAN9662 OTP controller support" 1419e8f208aSHoratiu Vultur depends on SOC_LAN966 || COMPILE_TEST 1429e8f208aSHoratiu Vultur depends on HAS_IOMEM 1439e8f208aSHoratiu Vultur help 1449e8f208aSHoratiu Vultur This driver enables the OTP controller available on Microchip LAN9662 1459e8f208aSHoratiu Vultur SoCs. It controls the access to the OTP memory connected to it. 1469e8f208aSHoratiu Vultur 147a06d9e5aSRafał Miłeckiconfig NVMEM_LAYERSCAPE_SFP 148a06d9e5aSRafał Miłecki tristate "Layerscape SFP (Security Fuse Processor) support" 149a06d9e5aSRafał Miłecki depends on ARCH_LAYERSCAPE || COMPILE_TEST 150a06d9e5aSRafał Miłecki depends on HAS_IOMEM 151a06d9e5aSRafał Miłecki select REGMAP_MMIO 152a06d9e5aSRafał Miłecki help 153a06d9e5aSRafał Miłecki This driver provides support to read the eFuses on Freescale 154a06d9e5aSRafał Miłecki Layerscape SoC's. For example, the vendor provides a per part 155a06d9e5aSRafał Miłecki unique ID there. 156a06d9e5aSRafał Miłecki 157a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 158a06d9e5aSRafał Miłecki will be called layerscape-sfp. 159a06d9e5aSRafał Miłecki 160f02f8aeeSAriel D'Alessandroconfig NVMEM_LPC18XX_EEPROM 161f02f8aeeSAriel D'Alessandro tristate "NXP LPC18XX EEPROM Memory Support" 162f02f8aeeSAriel D'Alessandro depends on ARCH_LPC18XX || COMPILE_TEST 1632ce7aed6SKrzysztof Kozlowski depends on HAS_IOMEM 164f02f8aeeSAriel D'Alessandro help 165f02f8aeeSAriel D'Alessandro Say Y here to include support for NXP LPC18xx EEPROM memory found in 166f02f8aeeSAriel D'Alessandro NXP LPC185x/3x and LPC435x/3x/2x/1x devices. 167f02f8aeeSAriel D'Alessandro To compile this driver as a module, choose M here: the module 168f02f8aeeSAriel D'Alessandro will be called nvmem_lpc18xx_eeprom. 169f02f8aeeSAriel D'Alessandro 17088806dafSJoachim Eastwoodconfig NVMEM_LPC18XX_OTP 17188806dafSJoachim Eastwood tristate "NXP LPC18XX OTP Memory Support" 17288806dafSJoachim Eastwood depends on ARCH_LPC18XX || COMPILE_TEST 17388806dafSJoachim Eastwood depends on HAS_IOMEM 17488806dafSJoachim Eastwood help 17588806dafSJoachim Eastwood Say Y here to include support for NXP LPC18xx OTP memory found on 17688806dafSJoachim Eastwood all LPC18xx and LPC43xx devices. 17788806dafSJoachim Eastwood To compile this driver as a module, choose M here: the module 17888806dafSJoachim Eastwood will be called nvmem_lpc18xx_otp. 17988806dafSJoachim Eastwood 1808824dc7fSAndré Draszikconfig NVMEM_MAX77759 1818824dc7fSAndré Draszik tristate "Maxim Integrated MAX77759 NVMEM Support" 1828824dc7fSAndré Draszik depends on MFD_MAX77759 1838824dc7fSAndré Draszik default MFD_MAX77759 1848824dc7fSAndré Draszik help 1858824dc7fSAndré Draszik Say Y here to include support for the user-accessible storage found 1868824dc7fSAndré Draszik in Maxim Integrated MAX77759 PMICs. This IC provides space for 30 1878824dc7fSAndré Draszik bytes of storage. 1888824dc7fSAndré Draszik 1898824dc7fSAndré Draszik This driver can also be built as a module. If so, the module 1908824dc7fSAndré Draszik will be called nvmem-max77759. 1918824dc7fSAndré Draszik 192a06d9e5aSRafał Miłeckiconfig NVMEM_MESON_EFUSE 193a06d9e5aSRafał Miłecki tristate "Amlogic Meson GX eFuse Support" 194a06d9e5aSRafał Miłecki depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM 195c01e9a11SStefan Wahren help 196a06d9e5aSRafał Miłecki This is a driver to retrieve specific values from the eFuse found on 197a06d9e5aSRafał Miłecki the Amlogic Meson GX SoCs. 198c01e9a11SStefan Wahren 199c01e9a11SStefan Wahren This driver can also be built as a module. If so, the module 200a06d9e5aSRafał Miłecki will be called nvmem_meson_efuse. 201a06d9e5aSRafał Miłecki 202a06d9e5aSRafał Miłeckiconfig NVMEM_MESON_MX_EFUSE 203a06d9e5aSRafał Miłecki tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support" 204a06d9e5aSRafał Miłecki depends on ARCH_MESON || COMPILE_TEST 205a06d9e5aSRafał Miłecki help 206a06d9e5aSRafał Miłecki This is a driver to retrieve specific values from the eFuse found on 207a06d9e5aSRafał Miłecki the Amlogic Meson6, Meson8 and Meson8b SoCs. 208a06d9e5aSRafał Miłecki 209a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 210a06d9e5aSRafał Miłecki will be called nvmem_meson_mx_efuse. 211a06d9e5aSRafał Miłecki 212a06d9e5aSRafał Miłeckiconfig NVMEM_MICROCHIP_OTPC 213a06d9e5aSRafał Miłecki tristate "Microchip OTPC support" 214a06d9e5aSRafał Miłecki depends on ARCH_AT91 || COMPILE_TEST 215a06d9e5aSRafał Miłecki help 216a06d9e5aSRafał Miłecki This driver enable the OTP controller available on Microchip SAMA7G5 217fb817c4eSColin Ian King SoCs. It controls the access to the OTP memory connected to it. 218c01e9a11SStefan Wahren 21928fc7c98SRafał Miłeckiconfig NVMEM_MTK_EFUSE 2204c7e4fe3SAndrew-CT Chen tristate "Mediatek SoCs EFUSE support" 2214c7e4fe3SAndrew-CT Chen depends on ARCH_MEDIATEK || COMPILE_TEST 2222ce7aed6SKrzysztof Kozlowski depends on HAS_IOMEM 2234c7e4fe3SAndrew-CT Chen help 2244c7e4fe3SAndrew-CT Chen This is a driver to access hardware related data like sensor 2254c7e4fe3SAndrew-CT Chen calibration, HDMI impedance etc. 2264c7e4fe3SAndrew-CT Chen 2274c7e4fe3SAndrew-CT Chen This driver can also be built as a module. If so, the module 2284c7e4fe3SAndrew-CT Chen will be called efuse-mtk. 2294c7e4fe3SAndrew-CT Chen 230a06d9e5aSRafał Miłeckiconfig NVMEM_MXS_OCOTP 231a06d9e5aSRafał Miłecki tristate "Freescale MXS On-Chip OTP Memory Support" 232a06d9e5aSRafał Miłecki depends on ARCH_MXS || COMPILE_TEST 233a06d9e5aSRafał Miłecki depends on HAS_IOMEM 23498830350SClaudiu Beznea help 235a06d9e5aSRafał Miłecki If you say Y here, you will get readonly access to the 236a06d9e5aSRafał Miłecki One Time Programmable memory pages that are stored 237a06d9e5aSRafał Miłecki on the Freescale i.MX23/i.MX28 processor. 238a06d9e5aSRafał Miłecki 239a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 240a06d9e5aSRafał Miłecki will be called nvmem-mxs-ocotp. 24198830350SClaudiu Beznea 2423683b761SEmmanuel Gil Peyrotconfig NVMEM_NINTENDO_OTP 2433683b761SEmmanuel Gil Peyrot tristate "Nintendo Wii and Wii U OTP Support" 2447af526c7SGeert Uytterhoeven depends on WII || COMPILE_TEST 2453683b761SEmmanuel Gil Peyrot help 2463683b761SEmmanuel Gil Peyrot This is a driver exposing the OTP of a Nintendo Wii or Wii U console. 2473683b761SEmmanuel Gil Peyrot 2483683b761SEmmanuel Gil Peyrot This memory contains common and per-console keys, signatures and 2493683b761SEmmanuel Gil Peyrot related data required to access peripherals. 2503683b761SEmmanuel Gil Peyrot 2513683b761SEmmanuel Gil Peyrot This driver can also be built as a module. If so, the module 2523683b761SEmmanuel Gil Peyrot will be called nvmem-nintendo-otp. 2533683b761SEmmanuel Gil Peyrot 2545a356145SCiprian Costeaconfig NVMEM_S32G_OCOTP 2555a356145SCiprian Costea tristate "S32G SoC OCOTP support" 2565a356145SCiprian Costea depends on ARCH_S32 2575a356145SCiprian Costea help 2585a356145SCiprian Costea This is a driver for the 'OCOTP' peripheral available on S32G 2595a356145SCiprian Costea platforms. 2605a356145SCiprian Costea 2615a356145SCiprian Costea If you say Y here, you will get support for the One Time 2625a356145SCiprian Costea Programmable memory pages. 2635a356145SCiprian Costea 26428fc7c98SRafał Miłeckiconfig NVMEM_QCOM_QFPROM 2654ab11996SSrinivas Kandagatla tristate "QCOM QFPROM Support" 2664ab11996SSrinivas Kandagatla depends on ARCH_QCOM || COMPILE_TEST 2675685e244SRichard Weinberger depends on HAS_IOMEM 2684ab11996SSrinivas Kandagatla help 2694ab11996SSrinivas Kandagatla Say y here to enable QFPROM support. The QFPROM provides access 2704ab11996SSrinivas Kandagatla functions for QFPROM data to rest of the drivers via nvmem interface. 2714ab11996SSrinivas Kandagatla 2724ab11996SSrinivas Kandagatla This driver can also be built as a module. If so, the module 2734ab11996SSrinivas Kandagatla will be called nvmem_qfprom. 2744ab11996SSrinivas Kandagatla 275c471245bSKomal Bajajconfig NVMEM_QCOM_SEC_QFPROM 276c471245bSKomal Bajaj tristate "QCOM SECURE QFPROM Support" 277c471245bSKomal Bajaj depends on ARCH_QCOM || COMPILE_TEST 278c471245bSKomal Bajaj depends on HAS_IOMEM 279c471245bSKomal Bajaj depends on OF 280c471245bSKomal Bajaj select QCOM_SCM 281c471245bSKomal Bajaj help 282c471245bSKomal Bajaj Say y here to enable secure QFPROM support. The secure QFPROM provides access 283c471245bSKomal Bajaj functions for QFPROM data to rest of the drivers via nvmem interface. 284c471245bSKomal Bajaj 285c471245bSKomal Bajaj This driver can also be built as a module. If so, the module will be called 286c471245bSKomal Bajaj nvmem_sec_qfprom. 287c471245bSKomal Bajaj 2882f9fae50SHeiko Stuebnerconfig NVMEM_QNAP_MCU_EEPROM 2892f9fae50SHeiko Stuebner tristate "QNAP MCU EEPROM Support" 2902f9fae50SHeiko Stuebner depends on MFD_QNAP_MCU 2912f9fae50SHeiko Stuebner help 2922f9fae50SHeiko Stuebner Say y here to enable support for accessing the EEPROM attached to 2932f9fae50SHeiko Stuebner QNAP MCU devices. This EEPROM contains additional runtime device 2942f9fae50SHeiko Stuebner information, like MAC addresses for ethernet devices that do not 2952f9fae50SHeiko Stuebner contain their own mac storage. 2962f9fae50SHeiko Stuebner 297a06d9e5aSRafał Miłeckiconfig NVMEM_RAVE_SP_EEPROM 298a06d9e5aSRafał Miłecki tristate "Rave SP EEPROM Support" 299a06d9e5aSRafał Miłecki depends on RAVE_SP_CORE 30040ce9798SAnirudh Ghayal help 301a06d9e5aSRafał Miłecki Say y here to enable Rave SP EEPROM support. 302a06d9e5aSRafał Miłecki 3031530b923SGeert Uytterhoevenconfig NVMEM_RCAR_EFUSE 3041530b923SGeert Uytterhoeven tristate "Renesas R-Car Gen4 E-FUSE support" 3051530b923SGeert Uytterhoeven depends on (ARCH_RENESAS && ARM64) || COMPILE_TEST 3061530b923SGeert Uytterhoeven depends on NVMEM 3071530b923SGeert Uytterhoeven help 3081530b923SGeert Uytterhoeven Enable support for reading the fuses in the E-FUSE or OTP 3091530b923SGeert Uytterhoeven non-volatile memory block on Renesas R-Car Gen4 SoCs. 3101530b923SGeert Uytterhoeven 3111530b923SGeert Uytterhoeven This driver can also be built as a module. If so, the module 3121530b923SGeert Uytterhoeven will be called nvmem-rcar-efuse. 3131530b923SGeert Uytterhoeven 314a06d9e5aSRafał Miłeckiconfig NVMEM_RMEM 315a06d9e5aSRafał Miłecki tristate "Reserved Memory Based Driver Support" 316a06d9e5aSRafał Miłecki depends on HAS_IOMEM 3177a93add1SArnd Bergmann select CRC32 318a06d9e5aSRafał Miłecki help 319a06d9e5aSRafał Miłecki This driver maps reserved memory into an nvmem device. It might be 320a06d9e5aSRafał Miłecki useful to expose information left by firmware in memory. 321a06d9e5aSRafał Miłecki 322a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 323a06d9e5aSRafał Miłecki will be called nvmem-rmem. 32440ce9798SAnirudh Ghayal 32528fc7c98SRafał Miłeckiconfig NVMEM_ROCKCHIP_EFUSE 32603a69568SZhengShunQian tristate "Rockchip eFuse Support" 32703a69568SZhengShunQian depends on ARCH_ROCKCHIP || COMPILE_TEST 3285685e244SRichard Weinberger depends on HAS_IOMEM 32903a69568SZhengShunQian help 33023b7b491SDiederik de Haas This is a simple driver to dump specified values of Rockchip SoC 33103a69568SZhengShunQian from eFuse, such as cpu-leakage. 33203a69568SZhengShunQian 33303a69568SZhengShunQian This driver can also be built as a module. If so, the module 33403a69568SZhengShunQian will be called nvmem_rockchip_efuse. 33503a69568SZhengShunQian 33628fc7c98SRafał Miłeckiconfig NVMEM_ROCKCHIP_OTP 337755864feSFinley Xiao tristate "Rockchip OTP controller support" 338755864feSFinley Xiao depends on ARCH_ROCKCHIP || COMPILE_TEST 339755864feSFinley Xiao depends on HAS_IOMEM 340755864feSFinley Xiao help 34123b7b491SDiederik de Haas This is a simple driver to dump specified values of Rockchip SoC 34223b7b491SDiederik de Haas from OTP, such as cpu-leakage. 343755864feSFinley Xiao 344755864feSFinley Xiao This driver can also be built as a module. If so, the module 345755864feSFinley Xiao will be called nvmem_rockchip_otp. 346755864feSFinley Xiao 347a06d9e5aSRafał Miłeckiconfig NVMEM_SC27XX_EFUSE 348a06d9e5aSRafał Miłecki tristate "Spreadtrum SC27XX eFuse Support" 349a06d9e5aSRafał Miłecki depends on MFD_SC27XX_PMIC || COMPILE_TEST 3509d59c6e8SJonathan Richardson depends on HAS_IOMEM 3519d59c6e8SJonathan Richardson help 352a06d9e5aSRafał Miłecki This is a simple driver to dump specified values of Spreadtrum 353a06d9e5aSRafał Miłecki SC27XX PMICs from eFuse. 3549d59c6e8SJonathan Richardson 3559d59c6e8SJonathan Richardson This driver can also be built as a module. If so, the module 356a06d9e5aSRafał Miłecki will be called nvmem-sc27xx-efuse. 357a06d9e5aSRafał Miłecki 358a06d9e5aSRafał Miłeckiconfig NVMEM_SNVS_LPGPR 359a06d9e5aSRafał Miłecki tristate "Support for Low Power General Purpose Register" 360a06d9e5aSRafał Miłecki depends on ARCH_MXC || COMPILE_TEST 361a06d9e5aSRafał Miłecki help 362a06d9e5aSRafał Miłecki This is a driver for Low Power General Purpose Register (LPGPR) available on 363a06d9e5aSRafał Miłecki i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip. 364a06d9e5aSRafał Miłecki 365a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 366a06d9e5aSRafał Miłecki will be called nvmem-snvs-lpgpr. 367a06d9e5aSRafał Miłecki 368a06d9e5aSRafał Miłeckiconfig NVMEM_SPMI_SDAM 369a06d9e5aSRafał Miłecki tristate "SPMI SDAM Support" 370a06d9e5aSRafał Miłecki depends on SPMI 371a06d9e5aSRafał Miłecki help 372a06d9e5aSRafał Miłecki This driver supports the Shared Direct Access Memory Module on 373a06d9e5aSRafał Miłecki Qualcomm Technologies, Inc. PMICs. It provides the clients 374a06d9e5aSRafał Miłecki an interface to read/write to the SDAM module's shared memory. 375a06d9e5aSRafał Miłecki 376a06d9e5aSRafał Miłeckiconfig NVMEM_SPRD_EFUSE 377a06d9e5aSRafał Miłecki tristate "Spreadtrum SoC eFuse Support" 378a06d9e5aSRafał Miłecki depends on ARCH_SPRD || COMPILE_TEST 379a06d9e5aSRafał Miłecki depends on HAS_IOMEM 380a06d9e5aSRafał Miłecki help 381a06d9e5aSRafał Miłecki This is a simple driver to dump specified values of Spreadtrum 382a06d9e5aSRafał Miłecki SoCs from eFuse. 383a06d9e5aSRafał Miłecki 384a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 385a06d9e5aSRafał Miłecki will be called nvmem-sprd-efuse. 3869d59c6e8SJonathan Richardson 3876a0bc352SPatrick Delaunayconfig NVMEM_STM32_BSEC_OPTEE_TA 3881dc7e37bSArnd Bergmann def_bool NVMEM_STM32_ROMEM && OPTEE 3896a0bc352SPatrick Delaunay help 3906a0bc352SPatrick Delaunay Say y here to enable the accesses to STM32MP SoC OTPs by the OP-TEE 3916a0bc352SPatrick Delaunay trusted application STM32MP BSEC. 3926a0bc352SPatrick Delaunay 3936a0bc352SPatrick Delaunay This library is a used by stm32-romem driver or included in the module 3946a0bc352SPatrick Delaunay called nvmem-stm32-romem. 3956a0bc352SPatrick Delaunay 396ded1b7fcSFabrice Gasnierconfig NVMEM_STM32_ROMEM 397ded1b7fcSFabrice Gasnier tristate "STMicroelectronics STM32 factory-programmed memory support" 398ded1b7fcSFabrice Gasnier depends on ARCH_STM32 || COMPILE_TEST 3991dc7e37bSArnd Bergmann depends on OPTEE || !OPTEE 400ded1b7fcSFabrice Gasnier help 401ded1b7fcSFabrice Gasnier Say y here to enable read-only access for STMicroelectronics STM32 402ded1b7fcSFabrice Gasnier factory-programmed memory area. 403ded1b7fcSFabrice Gasnier 404ded1b7fcSFabrice Gasnier This driver can also be built as a module. If so, the module 405ded1b7fcSFabrice Gasnier will be called nvmem-stm32-romem. 406ded1b7fcSFabrice Gasnier 407a06d9e5aSRafał Miłeckiconfig NVMEM_SUNPLUS_OCOTP 408a06d9e5aSRafał Miłecki tristate "Sunplus SoC OTP support" 409a06d9e5aSRafał Miłecki depends on SOC_SP7021 || COMPILE_TEST 410a06d9e5aSRafał Miłecki depends on HAS_IOMEM 411a06d9e5aSRafał Miłecki help 412a06d9e5aSRafał Miłecki This is a driver for the On-chip OTP controller (OCOTP) available 413a06d9e5aSRafał Miłecki on Sunplus SoCs. It provides access to 128 bytes of one-time 414a06d9e5aSRafał Miłecki programmable eFuse. 415a06d9e5aSRafał Miłecki 416a06d9e5aSRafał Miłecki This driver can also be built as a module. If so, the module 417a06d9e5aSRafał Miłecki will be called nvmem-sunplus-ocotp. 418a06d9e5aSRafał Miłecki 4193d0b16a6SMaxime Ripardconfig NVMEM_SUNXI_SID 4203d0b16a6SMaxime Ripard tristate "Allwinner SoCs SID support" 4213d0b16a6SMaxime Ripard depends on ARCH_SUNXI 4223d0b16a6SMaxime Ripard help 4233d0b16a6SMaxime Ripard This is a driver for the 'security ID' available on various Allwinner 4243d0b16a6SMaxime Ripard devices. 4253d0b16a6SMaxime Ripard 4263d0b16a6SMaxime Ripard This driver can also be built as a module. If so, the module 4273d0b16a6SMaxime Ripard will be called nvmem_sunxi_sid. 4283d0b16a6SMaxime Ripard 429a06d9e5aSRafał Miłeckiconfig NVMEM_U_BOOT_ENV 430a06d9e5aSRafał Miłecki tristate "U-Boot environment variables support" 431a06d9e5aSRafał Miłecki depends on OF && MTD 4325f158112SRafał Miłecki select NVMEM_LAYOUT_U_BOOT_ENV 433a06d9e5aSRafał Miłecki help 434a06d9e5aSRafał Miłecki U-Boot stores its setup as environment variables. This driver adds 435a06d9e5aSRafał Miłecki support for verifying & exporting such data. It also exposes variables 436a06d9e5aSRafał Miłecki as NVMEM cells so they can be referenced by other drivers. 437a06d9e5aSRafał Miłecki 438a06d9e5aSRafał Miłecki Currently this drivers works only with env variables on top of MTD. 439a06d9e5aSRafał Miłecki 440a06d9e5aSRafał Miłecki If compiled as module it will be called nvmem_u-boot-env. 441a06d9e5aSRafał Miłecki 44228fc7c98SRafał Miłeckiconfig NVMEM_UNIPHIER_EFUSE 44371c5dd50SKeiji Hayashibara tristate "UniPhier SoCs eFuse support" 44471c5dd50SKeiji Hayashibara depends on ARCH_UNIPHIER || COMPILE_TEST 44571c5dd50SKeiji Hayashibara depends on HAS_IOMEM 44671c5dd50SKeiji Hayashibara help 44771c5dd50SKeiji Hayashibara This is a simple driver to dump specified values of UniPhier SoC 44871c5dd50SKeiji Hayashibara from eFuse. 44971c5dd50SKeiji Hayashibara 45071c5dd50SKeiji Hayashibara This driver can also be built as a module. If so, the module 45171c5dd50SKeiji Hayashibara will be called nvmem-uniphier-efuse. 45271c5dd50SKeiji Hayashibara 45322dbdb7cSSanchayan Maityconfig NVMEM_VF610_OCOTP 45422dbdb7cSSanchayan Maity tristate "VF610 SoC OCOTP support" 45522dbdb7cSSanchayan Maity depends on SOC_VF610 || COMPILE_TEST 4565685e244SRichard Weinberger depends on HAS_IOMEM 45722dbdb7cSSanchayan Maity help 45822dbdb7cSSanchayan Maity This is a driver for the 'OCOTP' peripheral available on Vybrid 45922dbdb7cSSanchayan Maity devices like VF5xx and VF6xx. 46022dbdb7cSSanchayan Maity 46122dbdb7cSSanchayan Maity This driver can also be build as a module. If so, the module will 46222dbdb7cSSanchayan Maity be called nvmem-vf610-ocotp. 46322dbdb7cSSanchayan Maity 4644640fa18SNava kishore Manneconfig NVMEM_ZYNQMP 465bcd1fe07SNick Alcock tristate "Xilinx ZYNQMP SoC nvmem firmware support" 4664640fa18SNava kishore Manne depends on ARCH_ZYNQMP 4674640fa18SNava kishore Manne help 4684640fa18SNava kishore Manne This is a driver to access hardware related data like 4694640fa18SNava kishore Manne soc revision, IDCODE... etc by using the firmware 4704640fa18SNava kishore Manne interface. 4714640fa18SNava kishore Manne 4724640fa18SNava kishore Manne If sure, say yes. If unsure, say no. 4734640fa18SNava kishore Manne 4740861110bSRichard Alpeconfig NVMEM_QORIQ_EFUSE 4750861110bSRichard Alpe tristate "NXP QorIQ eFuse support" 4760861110bSRichard Alpe depends on PPC_85xx || COMPILE_TEST 4770861110bSRichard Alpe depends on HAS_IOMEM 4780861110bSRichard Alpe help 4790861110bSRichard Alpe This driver provides read support for the eFuses (SFP) on NXP QorIQ 4800861110bSRichard Alpe series SoC's. This includes secure boot settings, the globally unique 4810861110bSRichard Alpe NXP ID 'FUIDR' and the OEM unique ID 'OUIDR'. 4820861110bSRichard Alpe 4830861110bSRichard Alpe This driver can also be built as a module. If so, the module 4840861110bSRichard Alpe will be called nvmem_qoriq_efuse. 4850861110bSRichard Alpe 4864ab11996SSrinivas Kandagatlaendif 487