xref: /linux-6.15/drivers/nvmem/Kconfig (revision ded1b7fc)
1eace75cfSSrinivas Kandagatlamenuconfig NVMEM
22a37ce25SArnd Bergmann	bool "NVMEM Support"
3eace75cfSSrinivas Kandagatla	help
4eace75cfSSrinivas Kandagatla	  Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
5eace75cfSSrinivas Kandagatla
6eace75cfSSrinivas Kandagatla	  This framework is designed to provide a generic interface to NVMEM
7eace75cfSSrinivas Kandagatla	  from both the Linux Kernel and the userspace.
8eace75cfSSrinivas Kandagatla
9eace75cfSSrinivas Kandagatla	  This driver can also be built as a module. If so, the module
10eace75cfSSrinivas Kandagatla	  will be called nvmem_core.
11eace75cfSSrinivas Kandagatla
12eace75cfSSrinivas Kandagatla	  If unsure, say no.
134ab11996SSrinivas Kandagatla
144ab11996SSrinivas Kandagatlaif NVMEM
154ab11996SSrinivas Kandagatla
16c066c1c0SMichael Grzeschikconfig NVMEM_IMX_IIM
17c066c1c0SMichael Grzeschik	tristate "i.MX IC Identification Module support"
18c066c1c0SMichael Grzeschik	depends on ARCH_MXC || COMPILE_TEST
19c066c1c0SMichael Grzeschik	help
20c066c1c0SMichael Grzeschik	  This is a driver for the IC Identification Module (IIM) available on
21c066c1c0SMichael Grzeschik	  i.MX SoCs, providing access to 4 Kbits of programmable
22c066c1c0SMichael Grzeschik	  eFuses.
23c066c1c0SMichael Grzeschik
24c066c1c0SMichael Grzeschik	  This driver can also be built as a module. If so, the module
25c066c1c0SMichael Grzeschik	  will be called nvmem-imx-iim.
26c066c1c0SMichael Grzeschik
273edba6b4SPhilipp Zabelconfig NVMEM_IMX_OCOTP
28dd4c1047SLucas Stach	tristate "i.MX 6/7/8 On-Chip OTP Controller support"
29dd4c1047SLucas Stach	depends on ARCH_MXC || COMPILE_TEST
3063c0c076SSrinivas Kandagatla	depends on HAS_IOMEM
313edba6b4SPhilipp Zabel	help
323edba6b4SPhilipp Zabel	  This is a driver for the On-Chip OTP Controller (OCOTP) available on
333edba6b4SPhilipp Zabel	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
343edba6b4SPhilipp Zabel	  eFuses.
353edba6b4SPhilipp Zabel
363edba6b4SPhilipp Zabel	  This driver can also be built as a module. If so, the module
373edba6b4SPhilipp Zabel	  will be called nvmem-imx-ocotp.
383edba6b4SPhilipp Zabel
39f02f8aeeSAriel D'Alessandroconfig NVMEM_LPC18XX_EEPROM
40f02f8aeeSAriel D'Alessandro	tristate "NXP LPC18XX EEPROM Memory Support"
41f02f8aeeSAriel D'Alessandro	depends on ARCH_LPC18XX || COMPILE_TEST
422ce7aed6SKrzysztof Kozlowski	depends on HAS_IOMEM
43f02f8aeeSAriel D'Alessandro	help
44f02f8aeeSAriel D'Alessandro	  Say Y here to include support for NXP LPC18xx EEPROM memory found in
45f02f8aeeSAriel D'Alessandro	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
46f02f8aeeSAriel D'Alessandro	  To compile this driver as a module, choose M here: the module
47f02f8aeeSAriel D'Alessandro	  will be called nvmem_lpc18xx_eeprom.
48f02f8aeeSAriel D'Alessandro
4988806dafSJoachim Eastwoodconfig NVMEM_LPC18XX_OTP
5088806dafSJoachim Eastwood	tristate "NXP LPC18XX OTP Memory Support"
5188806dafSJoachim Eastwood	depends on ARCH_LPC18XX || COMPILE_TEST
5288806dafSJoachim Eastwood	depends on HAS_IOMEM
5388806dafSJoachim Eastwood	help
5488806dafSJoachim Eastwood	  Say Y here to include support for NXP LPC18xx OTP memory found on
5588806dafSJoachim Eastwood	  all LPC18xx and LPC43xx devices.
5688806dafSJoachim Eastwood	  To compile this driver as a module, choose M here: the module
5788806dafSJoachim Eastwood	  will be called nvmem_lpc18xx_otp.
5888806dafSJoachim Eastwood
59c01e9a11SStefan Wahrenconfig NVMEM_MXS_OCOTP
60c01e9a11SStefan Wahren	tristate "Freescale MXS On-Chip OTP Memory Support"
61c01e9a11SStefan Wahren	depends on ARCH_MXS || COMPILE_TEST
625685e244SRichard Weinberger	depends on HAS_IOMEM
63c01e9a11SStefan Wahren	help
64c01e9a11SStefan Wahren	  If you say Y here, you will get readonly access to the
65c01e9a11SStefan Wahren	  One Time Programmable memory pages that are stored
66c01e9a11SStefan Wahren	  on the Freescale i.MX23/i.MX28 processor.
67c01e9a11SStefan Wahren
68c01e9a11SStefan Wahren	  This driver can also be built as a module. If so, the module
69c01e9a11SStefan Wahren	  will be called nvmem-mxs-ocotp.
70c01e9a11SStefan Wahren
714c7e4fe3SAndrew-CT Chenconfig MTK_EFUSE
724c7e4fe3SAndrew-CT Chen	tristate "Mediatek SoCs EFUSE support"
734c7e4fe3SAndrew-CT Chen	depends on ARCH_MEDIATEK || COMPILE_TEST
742ce7aed6SKrzysztof Kozlowski	depends on HAS_IOMEM
754c7e4fe3SAndrew-CT Chen	help
764c7e4fe3SAndrew-CT Chen	  This is a driver to access hardware related data like sensor
774c7e4fe3SAndrew-CT Chen	  calibration, HDMI impedance etc.
784c7e4fe3SAndrew-CT Chen
794c7e4fe3SAndrew-CT Chen	  This driver can also be built as a module. If so, the module
804c7e4fe3SAndrew-CT Chen	  will be called efuse-mtk.
814c7e4fe3SAndrew-CT Chen
824ab11996SSrinivas Kandagatlaconfig QCOM_QFPROM
834ab11996SSrinivas Kandagatla	tristate "QCOM QFPROM Support"
844ab11996SSrinivas Kandagatla	depends on ARCH_QCOM || COMPILE_TEST
855685e244SRichard Weinberger	depends on HAS_IOMEM
864ab11996SSrinivas Kandagatla	help
874ab11996SSrinivas Kandagatla	  Say y here to enable QFPROM support. The QFPROM provides access
884ab11996SSrinivas Kandagatla	  functions for QFPROM data to rest of the drivers via nvmem interface.
894ab11996SSrinivas Kandagatla
904ab11996SSrinivas Kandagatla	  This driver can also be built as a module. If so, the module
914ab11996SSrinivas Kandagatla	  will be called nvmem_qfprom.
924ab11996SSrinivas Kandagatla
9303a69568SZhengShunQianconfig ROCKCHIP_EFUSE
9403a69568SZhengShunQian	tristate "Rockchip eFuse Support"
9503a69568SZhengShunQian	depends on ARCH_ROCKCHIP || COMPILE_TEST
965685e244SRichard Weinberger	depends on HAS_IOMEM
9703a69568SZhengShunQian	help
9803a69568SZhengShunQian	  This is a simple drive to dump specified values of Rockchip SoC
9903a69568SZhengShunQian	  from eFuse, such as cpu-leakage.
10003a69568SZhengShunQian
10103a69568SZhengShunQian	  This driver can also be built as a module. If so, the module
10203a69568SZhengShunQian	  will be called nvmem_rockchip_efuse.
10303a69568SZhengShunQian
1049d59c6e8SJonathan Richardsonconfig NVMEM_BCM_OCOTP
1059d59c6e8SJonathan Richardson	tristate "Broadcom On-Chip OTP Controller support"
1069d59c6e8SJonathan Richardson	depends on ARCH_BCM_IPROC || COMPILE_TEST
1079d59c6e8SJonathan Richardson	depends on HAS_IOMEM
1089d59c6e8SJonathan Richardson	default ARCH_BCM_IPROC
1099d59c6e8SJonathan Richardson	help
1109d59c6e8SJonathan Richardson	  Say y here to enable read/write access to the Broadcom OTP
1119d59c6e8SJonathan Richardson	  controller.
1129d59c6e8SJonathan Richardson
1139d59c6e8SJonathan Richardson	  This driver can also be built as a module. If so, the module
1149d59c6e8SJonathan Richardson	  will be called nvmem-bcm-ocotp.
1159d59c6e8SJonathan Richardson
116*ded1b7fcSFabrice Gasnierconfig NVMEM_STM32_ROMEM
117*ded1b7fcSFabrice Gasnier	tristate "STMicroelectronics STM32 factory-programmed memory support"
118*ded1b7fcSFabrice Gasnier	depends on ARCH_STM32 || COMPILE_TEST
119*ded1b7fcSFabrice Gasnier	help
120*ded1b7fcSFabrice Gasnier	  Say y here to enable read-only access for STMicroelectronics STM32
121*ded1b7fcSFabrice Gasnier	  factory-programmed memory area.
122*ded1b7fcSFabrice Gasnier
123*ded1b7fcSFabrice Gasnier	  This driver can also be built as a module. If so, the module
124*ded1b7fcSFabrice Gasnier	  will be called nvmem-stm32-romem.
125*ded1b7fcSFabrice Gasnier
1263d0b16a6SMaxime Ripardconfig NVMEM_SUNXI_SID
1273d0b16a6SMaxime Ripard	tristate "Allwinner SoCs SID support"
1283d0b16a6SMaxime Ripard	depends on ARCH_SUNXI
1293d0b16a6SMaxime Ripard	help
1303d0b16a6SMaxime Ripard	  This is a driver for the 'security ID' available on various Allwinner
1313d0b16a6SMaxime Ripard	  devices.
1323d0b16a6SMaxime Ripard
1333d0b16a6SMaxime Ripard	  This driver can also be built as a module. If so, the module
1343d0b16a6SMaxime Ripard	  will be called nvmem_sunxi_sid.
1353d0b16a6SMaxime Ripard
13671c5dd50SKeiji Hayashibaraconfig UNIPHIER_EFUSE
13771c5dd50SKeiji Hayashibara	tristate "UniPhier SoCs eFuse support"
13871c5dd50SKeiji Hayashibara	depends on ARCH_UNIPHIER || COMPILE_TEST
13971c5dd50SKeiji Hayashibara	depends on HAS_IOMEM
14071c5dd50SKeiji Hayashibara	help
14171c5dd50SKeiji Hayashibara	  This is a simple driver to dump specified values of UniPhier SoC
14271c5dd50SKeiji Hayashibara	  from eFuse.
14371c5dd50SKeiji Hayashibara
14471c5dd50SKeiji Hayashibara	  This driver can also be built as a module. If so, the module
14571c5dd50SKeiji Hayashibara	  will be called nvmem-uniphier-efuse.
14671c5dd50SKeiji Hayashibara
14722dbdb7cSSanchayan Maityconfig NVMEM_VF610_OCOTP
14822dbdb7cSSanchayan Maity	tristate "VF610 SoC OCOTP support"
14922dbdb7cSSanchayan Maity	depends on SOC_VF610 || COMPILE_TEST
1505685e244SRichard Weinberger	depends on HAS_IOMEM
15122dbdb7cSSanchayan Maity	help
15222dbdb7cSSanchayan Maity	  This is a driver for the 'OCOTP' peripheral available on Vybrid
15322dbdb7cSSanchayan Maity	  devices like VF5xx and VF6xx.
15422dbdb7cSSanchayan Maity
15522dbdb7cSSanchayan Maity	  This driver can also be build as a module. If so, the module will
15622dbdb7cSSanchayan Maity	  be called nvmem-vf610-ocotp.
15722dbdb7cSSanchayan Maity
158ad855eaeSCarlo Caioneconfig MESON_EFUSE
1599593ad32SMartin Blumenstingl	tristate "Amlogic Meson GX eFuse Support"
160ad855eaeSCarlo Caione	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
161ad855eaeSCarlo Caione	help
162ad855eaeSCarlo Caione	  This is a driver to retrieve specific values from the eFuse found on
1639593ad32SMartin Blumenstingl	  the Amlogic Meson GX SoCs.
164ad855eaeSCarlo Caione
165ad855eaeSCarlo Caione	  This driver can also be built as a module. If so, the module
166ad855eaeSCarlo Caione	  will be called nvmem_meson_efuse.
167ad855eaeSCarlo Caione
1688caef1faSMartin Blumenstinglconfig MESON_MX_EFUSE
1698caef1faSMartin Blumenstingl	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
1708caef1faSMartin Blumenstingl	depends on ARCH_MESON || COMPILE_TEST
1718caef1faSMartin Blumenstingl	help
1728caef1faSMartin Blumenstingl	  This is a driver to retrieve specific values from the eFuse found on
1738caef1faSMartin Blumenstingl	  the Amlogic Meson6, Meson8 and Meson8b SoCs.
1748caef1faSMartin Blumenstingl
1758caef1faSMartin Blumenstingl	  This driver can also be built as a module. If so, the module
1768caef1faSMartin Blumenstingl	  will be called nvmem_meson_mx_efuse.
1778caef1faSMartin Blumenstingl
178988437aeSOleksij Rempelconfig NVMEM_SNVS_LPGPR
179988437aeSOleksij Rempel	tristate "Support for Low Power General Purpose Register"
18080b820caSAndrey Yurovsky	depends on SOC_IMX6 || SOC_IMX7D || COMPILE_TEST
181988437aeSOleksij Rempel	help
182988437aeSOleksij Rempel	  This is a driver for Low Power General Purpose Register (LPGPR) available on
18380b820caSAndrey Yurovsky	  i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
184988437aeSOleksij Rempel
185988437aeSOleksij Rempel	  This driver can also be built as a module. If so, the module
186988437aeSOleksij Rempel	  will be called nvmem-snvs-lpgpr.
187988437aeSOleksij Rempel
1883b51f47bSAndrey Smirnovconfig RAVE_SP_EEPROM
1893b51f47bSAndrey Smirnov	tristate "Rave SP EEPROM Support"
1903b51f47bSAndrey Smirnov	depends on RAVE_SP_CORE
1913b51f47bSAndrey Smirnov	help
1923b51f47bSAndrey Smirnov	  Say y here to enable Rave SP EEPROM support.
1933b51f47bSAndrey Smirnov
19419c54468SFreeman Liuconfig SC27XX_EFUSE
19519c54468SFreeman Liu	tristate "Spreadtrum SC27XX eFuse Support"
19619c54468SFreeman Liu	depends on MFD_SC27XX_PMIC || COMPILE_TEST
19719c54468SFreeman Liu	depends on HAS_IOMEM
19819c54468SFreeman Liu	help
19919c54468SFreeman Liu	  This is a simple driver to dump specified values of Spreadtrum
20019c54468SFreeman Liu	  SC27XX PMICs from eFuse.
20119c54468SFreeman Liu
20219c54468SFreeman Liu	  This driver can also be built as a module. If so, the module
20319c54468SFreeman Liu	  will be called nvmem-sc27xx-efuse.
20419c54468SFreeman Liu
2054640fa18SNava kishore Manneconfig NVMEM_ZYNQMP
2064640fa18SNava kishore Manne	bool "Xilinx ZYNQMP SoC nvmem firmware support"
2074640fa18SNava kishore Manne	depends on ARCH_ZYNQMP
2084640fa18SNava kishore Manne	help
2094640fa18SNava kishore Manne	  This is a driver to access hardware related data like
2104640fa18SNava kishore Manne	  soc revision, IDCODE... etc by using the firmware
2114640fa18SNava kishore Manne	  interface.
2124640fa18SNava kishore Manne
2134640fa18SNava kishore Manne	  If sure, say yes. If unsure, say no.
2144640fa18SNava kishore Manne
2154ab11996SSrinivas Kandagatlaendif
216