xref: /openbmc/linux/drivers/nvmem/Kconfig (revision 5927145e)
1menuconfig NVMEM
2	tristate "NVMEM Support"
3	help
4	  Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
5
6	  This framework is designed to provide a generic interface to NVMEM
7	  from both the Linux Kernel and the userspace.
8
9	  This driver can also be built as a module. If so, the module
10	  will be called nvmem_core.
11
12	  If unsure, say no.
13
14if NVMEM
15
16config NVMEM_IMX_IIM
17	tristate "i.MX IC Identification Module support"
18	depends on ARCH_MXC || COMPILE_TEST
19	help
20	  This is a driver for the IC Identification Module (IIM) available on
21	  i.MX SoCs, providing access to 4 Kbits of programmable
22	  eFuses.
23
24	  This driver can also be built as a module. If so, the module
25	  will be called nvmem-imx-iim.
26
27config NVMEM_IMX_OCOTP
28	tristate "i.MX6 On-Chip OTP Controller support"
29	depends on SOC_IMX6 || COMPILE_TEST
30	depends on HAS_IOMEM
31	help
32	  This is a driver for the On-Chip OTP Controller (OCOTP) available on
33	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
34	  eFuses.
35
36	  This driver can also be built as a module. If so, the module
37	  will be called nvmem-imx-ocotp.
38
39config NVMEM_LPC18XX_EEPROM
40	tristate "NXP LPC18XX EEPROM Memory Support"
41	depends on ARCH_LPC18XX || COMPILE_TEST
42	depends on HAS_IOMEM
43	help
44	  Say Y here to include support for NXP LPC18xx EEPROM memory found in
45	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
46	  To compile this driver as a module, choose M here: the module
47	  will be called nvmem_lpc18xx_eeprom.
48
49config NVMEM_LPC18XX_OTP
50	tristate "NXP LPC18XX OTP Memory Support"
51	depends on ARCH_LPC18XX || COMPILE_TEST
52	depends on HAS_IOMEM
53	help
54	  Say Y here to include support for NXP LPC18xx OTP memory found on
55	  all LPC18xx and LPC43xx devices.
56	  To compile this driver as a module, choose M here: the module
57	  will be called nvmem_lpc18xx_otp.
58
59config NVMEM_MXS_OCOTP
60	tristate "Freescale MXS On-Chip OTP Memory Support"
61	depends on ARCH_MXS || COMPILE_TEST
62	depends on HAS_IOMEM
63	help
64	  If you say Y here, you will get readonly access to the
65	  One Time Programmable memory pages that are stored
66	  on the Freescale i.MX23/i.MX28 processor.
67
68	  This driver can also be built as a module. If so, the module
69	  will be called nvmem-mxs-ocotp.
70
71config MTK_EFUSE
72	tristate "Mediatek SoCs EFUSE support"
73	depends on ARCH_MEDIATEK || COMPILE_TEST
74	depends on HAS_IOMEM
75	help
76	  This is a driver to access hardware related data like sensor
77	  calibration, HDMI impedance etc.
78
79	  This driver can also be built as a module. If so, the module
80	  will be called efuse-mtk.
81
82config QCOM_QFPROM
83	tristate "QCOM QFPROM Support"
84	depends on ARCH_QCOM || COMPILE_TEST
85	depends on HAS_IOMEM
86	help
87	  Say y here to enable QFPROM support. The QFPROM provides access
88	  functions for QFPROM data to rest of the drivers via nvmem interface.
89
90	  This driver can also be built as a module. If so, the module
91	  will be called nvmem_qfprom.
92
93config ROCKCHIP_EFUSE
94	tristate "Rockchip eFuse Support"
95	depends on ARCH_ROCKCHIP || COMPILE_TEST
96	depends on HAS_IOMEM
97	help
98	  This is a simple drive to dump specified values of Rockchip SoC
99	  from eFuse, such as cpu-leakage.
100
101	  This driver can also be built as a module. If so, the module
102	  will be called nvmem_rockchip_efuse.
103
104config NVMEM_BCM_OCOTP
105	tristate "Broadcom On-Chip OTP Controller support"
106	depends on ARCH_BCM_IPROC || COMPILE_TEST
107	depends on HAS_IOMEM
108	default ARCH_BCM_IPROC
109	help
110	  Say y here to enable read/write access to the Broadcom OTP
111	  controller.
112
113	  This driver can also be built as a module. If so, the module
114	  will be called nvmem-bcm-ocotp.
115
116config NVMEM_SUNXI_SID
117	tristate "Allwinner SoCs SID support"
118	depends on ARCH_SUNXI
119	help
120	  This is a driver for the 'security ID' available on various Allwinner
121	  devices.
122
123	  This driver can also be built as a module. If so, the module
124	  will be called nvmem_sunxi_sid.
125
126config UNIPHIER_EFUSE
127	tristate "UniPhier SoCs eFuse support"
128	depends on ARCH_UNIPHIER || COMPILE_TEST
129	depends on HAS_IOMEM
130	help
131	  This is a simple driver to dump specified values of UniPhier SoC
132	  from eFuse.
133
134	  This driver can also be built as a module. If so, the module
135	  will be called nvmem-uniphier-efuse.
136
137config NVMEM_VF610_OCOTP
138	tristate "VF610 SoC OCOTP support"
139	depends on SOC_VF610 || COMPILE_TEST
140	depends on HAS_IOMEM
141	help
142	  This is a driver for the 'OCOTP' peripheral available on Vybrid
143	  devices like VF5xx and VF6xx.
144
145	  This driver can also be build as a module. If so, the module will
146	  be called nvmem-vf610-ocotp.
147
148config MESON_EFUSE
149	tristate "Amlogic Meson GX eFuse Support"
150	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
151	help
152	  This is a driver to retrieve specific values from the eFuse found on
153	  the Amlogic Meson GX SoCs.
154
155	  This driver can also be built as a module. If so, the module
156	  will be called nvmem_meson_efuse.
157
158config MESON_MX_EFUSE
159	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
160	depends on ARCH_MESON || COMPILE_TEST
161	help
162	  This is a driver to retrieve specific values from the eFuse found on
163	  the Amlogic Meson6, Meson8 and Meson8b SoCs.
164
165	  This driver can also be built as a module. If so, the module
166	  will be called nvmem_meson_mx_efuse.
167
168config NVMEM_SNVS_LPGPR
169	tristate "Support for Low Power General Purpose Register"
170	depends on SOC_IMX6 || COMPILE_TEST
171	help
172	  This is a driver for Low Power General Purpose Register (LPGPR) available on
173	  i.MX6 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
174
175	  This driver can also be built as a module. If so, the module
176	  will be called nvmem-snvs-lpgpr.
177
178endif
179