brintos

brintos / linux-shallow public Read only

0
0
Text · 12.9 KiB · d2c384f Raw
421 lines · plain
1# SPDX-License-Identifier: GPL-2.0-only2menuconfig NVMEM3	bool "NVMEM Support"4	imply NVMEM_LAYOUTS5	help6	  Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...7 8	  This framework is designed to provide a generic interface to NVMEM9	  from both the Linux Kernel and the userspace.10 11	  If unsure, say no.12 13if NVMEM14 15config NVMEM_SYSFS16	bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"17	depends on SYSFS18	default y19	help20	 Say Y here to add a sysfs interface for NVMEM.21 22	 This interface is mostly used by userspace applications to23	 read/write directly into nvmem.24 25# Layouts26 27source "drivers/nvmem/layouts/Kconfig"28 29# Devices30 31config NVMEM_APPLE_EFUSES32	tristate "Apple eFuse support"33	depends on ARCH_APPLE || COMPILE_TEST34	default ARCH_APPLE35	help36	  Say y here to enable support for reading eFuses on Apple SoCs37	  such as the M1. These are e.g. used to store factory programmed38	  calibration data required for the PCIe or the USB-C PHY.39 40	  This driver can also be built as a module. If so, the module will41	  be called nvmem-apple-efuses.42 43config NVMEM_BCM_OCOTP44	tristate "Broadcom On-Chip OTP Controller support"45	depends on ARCH_BCM_IPROC || COMPILE_TEST46	depends on HAS_IOMEM47	default ARCH_BCM_IPROC48	help49	  Say y here to enable read/write access to the Broadcom OTP50	  controller.51 52	  This driver can also be built as a module. If so, the module53	  will be called nvmem-bcm-ocotp.54 55config NVMEM_BRCM_NVRAM56	tristate "Broadcom's NVRAM support"57	depends on ARCH_BCM_5301X || COMPILE_TEST58	depends on HAS_IOMEM59	select GENERIC_NET_UTILS60	help61	  This driver provides support for Broadcom's NVRAM that can be accessed62	  using I/O mapping.63 64config NVMEM_IMX_IIM65	tristate "i.MX IC Identification Module support"66	depends on ARCH_MXC || COMPILE_TEST67	help68	  This is a driver for the IC Identification Module (IIM) available on69	  i.MX SoCs, providing access to 4 Kbits of programmable70	  eFuses.71 72	  This driver can also be built as a module. If so, the module73	  will be called nvmem-imx-iim.74 75config NVMEM_IMX_OCOTP76	tristate "i.MX 6/7/8 On-Chip OTP Controller support"77	depends on ARCH_MXC || COMPILE_TEST78	depends on HAS_IOMEM79	help80	  This is a driver for the On-Chip OTP Controller (OCOTP) available on81	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable82	  eFuses.83 84	  This driver can also be built as a module. If so, the module85	  will be called nvmem-imx-ocotp.86 87config NVMEM_IMX_OCOTP_ELE88	tristate "i.MX On-Chip OTP Controller support"89	depends on ARCH_MXC || COMPILE_TEST90	depends on HAS_IOMEM91	depends on OF92	help93	  This is a driver for the On-Chip OTP Controller (OCOTP)94	  available on i.MX SoCs which has ELE.95 96config NVMEM_IMX_OCOTP_SCU97	tristate "i.MX8 SCU On-Chip OTP Controller support"98	depends on IMX_SCU99	depends on HAVE_ARM_SMCCC100	help101	  This is a driver for the SCU On-Chip OTP Controller (OCOTP)102	  available on i.MX8 SoCs.103 104config NVMEM_JZ4780_EFUSE105	tristate "JZ4780 EFUSE Memory Support"106	depends on MACH_INGENIC || COMPILE_TEST107	depends on HAS_IOMEM108	depends on OF109	select REGMAP_MMIO110	help111	  Say Y here to include support for JZ4780 efuse memory found on112	  all JZ4780 SoC based devices.113	  To compile this driver as a module, choose M here: the module114	  will be called nvmem_jz4780_efuse.115 116config NVMEM_LAN9662_OTPC117	tristate "Microchip LAN9662 OTP controller support"118	depends on SOC_LAN966 || COMPILE_TEST119	depends on HAS_IOMEM120	help121	  This driver enables the OTP controller available on Microchip LAN9662122	  SoCs. It controls the access to the OTP memory connected to it.123 124config NVMEM_LAYERSCAPE_SFP125	tristate "Layerscape SFP (Security Fuse Processor) support"126	depends on ARCH_LAYERSCAPE || COMPILE_TEST127	depends on HAS_IOMEM128	select REGMAP_MMIO129	help130	  This driver provides support to read the eFuses on Freescale131	  Layerscape SoC's. For example, the vendor provides a per part132	  unique ID there.133 134	  This driver can also be built as a module. If so, the module135	  will be called layerscape-sfp.136 137config NVMEM_LPC18XX_EEPROM138	tristate "NXP LPC18XX EEPROM Memory Support"139	depends on ARCH_LPC18XX || COMPILE_TEST140	depends on HAS_IOMEM141	help142	  Say Y here to include support for NXP LPC18xx EEPROM memory found in143	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.144	  To compile this driver as a module, choose M here: the module145	  will be called nvmem_lpc18xx_eeprom.146 147config NVMEM_LPC18XX_OTP148	tristate "NXP LPC18XX OTP Memory Support"149	depends on ARCH_LPC18XX || COMPILE_TEST150	depends on HAS_IOMEM151	help152	  Say Y here to include support for NXP LPC18xx OTP memory found on153	  all LPC18xx and LPC43xx devices.154	  To compile this driver as a module, choose M here: the module155	  will be called nvmem_lpc18xx_otp.156 157config NVMEM_MESON_EFUSE158	tristate "Amlogic Meson GX eFuse Support"159	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM160	help161	  This is a driver to retrieve specific values from the eFuse found on162	  the Amlogic Meson GX SoCs.163 164	  This driver can also be built as a module. If so, the module165	  will be called nvmem_meson_efuse.166 167config NVMEM_MESON_MX_EFUSE168	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"169	depends on ARCH_MESON || COMPILE_TEST170	help171	  This is a driver to retrieve specific values from the eFuse found on172	  the Amlogic Meson6, Meson8 and Meson8b SoCs.173 174	  This driver can also be built as a module. If so, the module175	  will be called nvmem_meson_mx_efuse.176 177config NVMEM_MICROCHIP_OTPC178	tristate "Microchip OTPC support"179	depends on ARCH_AT91 || COMPILE_TEST180	help181	  This driver enable the OTP controller available on Microchip SAMA7G5182	  SoCs. It controls the access to the OTP memory connected to it.183 184config NVMEM_MTK_EFUSE185	tristate "Mediatek SoCs EFUSE support"186	depends on ARCH_MEDIATEK || COMPILE_TEST187	depends on HAS_IOMEM188	help189	  This is a driver to access hardware related data like sensor190	  calibration, HDMI impedance etc.191 192	  This driver can also be built as a module. If so, the module193	  will be called efuse-mtk.194 195config NVMEM_MXS_OCOTP196	tristate "Freescale MXS On-Chip OTP Memory Support"197	depends on ARCH_MXS || COMPILE_TEST198	depends on HAS_IOMEM199	help200	  If you say Y here, you will get readonly access to the201	  One Time Programmable memory pages that are stored202	  on the Freescale i.MX23/i.MX28 processor.203 204	  This driver can also be built as a module. If so, the module205	  will be called nvmem-mxs-ocotp.206 207config NVMEM_NINTENDO_OTP208	tristate "Nintendo Wii and Wii U OTP Support"209	depends on WII || COMPILE_TEST210	help211	  This is a driver exposing the OTP of a Nintendo Wii or Wii U console.212 213	  This memory contains common and per-console keys, signatures and214	  related data required to access peripherals.215 216	  This driver can also be built as a module. If so, the module217	  will be called nvmem-nintendo-otp.218 219config NVMEM_QCOM_QFPROM220	tristate "QCOM QFPROM Support"221	depends on ARCH_QCOM || COMPILE_TEST222	depends on HAS_IOMEM223	help224	  Say y here to enable QFPROM support. The QFPROM provides access225	  functions for QFPROM data to rest of the drivers via nvmem interface.226 227	  This driver can also be built as a module. If so, the module228	  will be called nvmem_qfprom.229 230config NVMEM_QCOM_SEC_QFPROM231        tristate "QCOM SECURE QFPROM Support"232        depends on ARCH_QCOM || COMPILE_TEST233        depends on HAS_IOMEM234        depends on OF235        select QCOM_SCM236        help237          Say y here to enable secure QFPROM support. The secure QFPROM provides access238          functions for QFPROM data to rest of the drivers via nvmem interface.239 240          This driver can also be built as a module. If so, the module will be called241          nvmem_sec_qfprom.242 243config NVMEM_RAVE_SP_EEPROM244	tristate "Rave SP EEPROM Support"245	depends on RAVE_SP_CORE246	help247	  Say y here to enable Rave SP EEPROM support.248 249config NVMEM_RMEM250	tristate "Reserved Memory Based Driver Support"251	depends on HAS_IOMEM252	help253	  This driver maps reserved memory into an nvmem device. It might be254	  useful to expose information left by firmware in memory.255 256	  This driver can also be built as a module. If so, the module257	  will be called nvmem-rmem.258 259config NVMEM_ROCKCHIP_EFUSE260	tristate "Rockchip eFuse Support"261	depends on ARCH_ROCKCHIP || COMPILE_TEST262	depends on HAS_IOMEM263	help264	  This is a simple driver to dump specified values of Rockchip SoC265	  from eFuse, such as cpu-leakage.266 267	  This driver can also be built as a module. If so, the module268	  will be called nvmem_rockchip_efuse.269 270config NVMEM_ROCKCHIP_OTP271	tristate "Rockchip OTP controller support"272	depends on ARCH_ROCKCHIP || COMPILE_TEST273	depends on HAS_IOMEM274	help275	  This is a simple driver to dump specified values of Rockchip SoC276	  from OTP, such as cpu-leakage.277 278	  This driver can also be built as a module. If so, the module279	  will be called nvmem_rockchip_otp.280 281config NVMEM_SC27XX_EFUSE282	tristate "Spreadtrum SC27XX eFuse Support"283	depends on MFD_SC27XX_PMIC || COMPILE_TEST284	depends on HAS_IOMEM285	help286	  This is a simple driver to dump specified values of Spreadtrum287	  SC27XX PMICs from eFuse.288 289	  This driver can also be built as a module. If so, the module290	  will be called nvmem-sc27xx-efuse.291 292config NVMEM_SNVS_LPGPR293	tristate "Support for Low Power General Purpose Register"294	depends on ARCH_MXC || COMPILE_TEST295	help296	  This is a driver for Low Power General Purpose Register (LPGPR) available on297	  i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.298 299	  This driver can also be built as a module. If so, the module300	  will be called nvmem-snvs-lpgpr.301 302config NVMEM_SPMI_SDAM303	tristate "SPMI SDAM Support"304	depends on SPMI305	help306	  This driver supports the Shared Direct Access Memory Module on307	  Qualcomm Technologies, Inc. PMICs. It provides the clients308	  an interface to read/write to the SDAM module's shared memory.309 310config NVMEM_SPRD_EFUSE311	tristate "Spreadtrum SoC eFuse Support"312	depends on ARCH_SPRD || COMPILE_TEST313	depends on HAS_IOMEM314	help315	  This is a simple driver to dump specified values of Spreadtrum316	  SoCs from eFuse.317 318	  This driver can also be built as a module. If so, the module319	  will be called nvmem-sprd-efuse.320 321config NVMEM_STM32_BSEC_OPTEE_TA322	def_bool NVMEM_STM32_ROMEM && OPTEE323	help324	  Say y here to enable the accesses to STM32MP SoC OTPs by the OP-TEE325	  trusted application STM32MP BSEC.326 327	  This library is a used by stm32-romem driver or included in the module328	  called nvmem-stm32-romem.329 330config NVMEM_STM32_ROMEM331	tristate "STMicroelectronics STM32 factory-programmed memory support"332	depends on ARCH_STM32 || COMPILE_TEST333	depends on OPTEE || !OPTEE334	help335	  Say y here to enable read-only access for STMicroelectronics STM32336	  factory-programmed memory area.337 338	  This driver can also be built as a module. If so, the module339	  will be called nvmem-stm32-romem.340 341config NVMEM_SUNPLUS_OCOTP342	tristate "Sunplus SoC OTP support"343	depends on SOC_SP7021 || COMPILE_TEST344	depends on HAS_IOMEM345	help346	  This is a driver for the On-chip OTP controller (OCOTP) available347	  on Sunplus SoCs. It provides access to 128 bytes of one-time348	  programmable eFuse.349 350	  This driver can also be built as a module. If so, the module351	  will be called nvmem-sunplus-ocotp.352 353config NVMEM_SUNXI_SID354	tristate "Allwinner SoCs SID support"355	depends on ARCH_SUNXI356	help357	  This is a driver for the 'security ID' available on various Allwinner358	  devices.359 360	  This driver can also be built as a module. If so, the module361	  will be called nvmem_sunxi_sid.362 363config NVMEM_U_BOOT_ENV364	tristate "U-Boot environment variables support"365	depends on OF && MTD366	select NVMEM_LAYOUT_U_BOOT_ENV367	help368	  U-Boot stores its setup as environment variables. This driver adds369	  support for verifying & exporting such data. It also exposes variables370	  as NVMEM cells so they can be referenced by other drivers.371 372	  Currently this drivers works only with env variables on top of MTD.373 374	  If compiled as module it will be called nvmem_u-boot-env.375 376config NVMEM_UNIPHIER_EFUSE377	tristate "UniPhier SoCs eFuse support"378	depends on ARCH_UNIPHIER || COMPILE_TEST379	depends on HAS_IOMEM380	help381	  This is a simple driver to dump specified values of UniPhier SoC382	  from eFuse.383 384	  This driver can also be built as a module. If so, the module385	  will be called nvmem-uniphier-efuse.386 387config NVMEM_VF610_OCOTP388	tristate "VF610 SoC OCOTP support"389	depends on SOC_VF610 || COMPILE_TEST390	depends on HAS_IOMEM391	help392	  This is a driver for the 'OCOTP' peripheral available on Vybrid393	  devices like VF5xx and VF6xx.394 395	  This driver can also be build as a module. If so, the module will396	  be called nvmem-vf610-ocotp.397 398config NVMEM_ZYNQMP399	tristate "Xilinx ZYNQMP SoC nvmem firmware support"400	depends on ARCH_ZYNQMP401	help402	  This is a driver to access hardware related data like403	  soc revision, IDCODE... etc by using the firmware404	  interface.405 406	  If sure, say yes. If unsure, say no.407 408config NVMEM_QORIQ_EFUSE409	tristate "NXP QorIQ eFuse support"410	depends on PPC_85xx || COMPILE_TEST411	depends on HAS_IOMEM412	help413	  This driver provides read support for the eFuses (SFP) on NXP QorIQ414	  series SoC's. This includes secure boot settings, the globally unique415	  NXP ID 'FUIDR' and the OEM unique ID 'OUIDR'.416 417	  This driver can also be built as a module. If so, the module418	  will be called nvmem_qoriq_efuse.419 420endif421