cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (10579B)


      1# SPDX-License-Identifier: GPL-2.0-only
      2menuconfig NVMEM
      3	bool "NVMEM Support"
      4	help
      5	  Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
      6
      7	  This framework is designed to provide a generic interface to NVMEM
      8	  from both the Linux Kernel and the userspace.
      9
     10	  If unsure, say no.
     11
     12if NVMEM
     13
     14config NVMEM_SYSFS
     15	bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
     16	depends on SYSFS
     17	default y
     18	help
     19	 Say Y here to add a sysfs interface for NVMEM.
     20
     21	 This interface is mostly used by userspace applications to
     22	 read/write directly into nvmem.
     23
     24config NVMEM_IMX_IIM
     25	tristate "i.MX IC Identification Module support"
     26	depends on ARCH_MXC || COMPILE_TEST
     27	help
     28	  This is a driver for the IC Identification Module (IIM) available on
     29	  i.MX SoCs, providing access to 4 Kbits of programmable
     30	  eFuses.
     31
     32	  This driver can also be built as a module. If so, the module
     33	  will be called nvmem-imx-iim.
     34
     35config NVMEM_IMX_OCOTP
     36	tristate "i.MX 6/7/8 On-Chip OTP Controller support"
     37	depends on ARCH_MXC || COMPILE_TEST
     38	depends on HAS_IOMEM
     39	help
     40	  This is a driver for the On-Chip OTP Controller (OCOTP) available on
     41	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
     42	  eFuses.
     43
     44	  This driver can also be built as a module. If so, the module
     45	  will be called nvmem-imx-ocotp.
     46
     47config NVMEM_IMX_OCOTP_SCU
     48	tristate "i.MX8 SCU On-Chip OTP Controller support"
     49	depends on IMX_SCU
     50	depends on HAVE_ARM_SMCCC
     51	help
     52	  This is a driver for the SCU On-Chip OTP Controller (OCOTP)
     53	  available on i.MX8 SoCs.
     54
     55config JZ4780_EFUSE
     56	tristate "JZ4780 EFUSE Memory Support"
     57	depends on MACH_INGENIC || COMPILE_TEST
     58	depends on HAS_IOMEM
     59	depends on OF
     60	select REGMAP_MMIO
     61	help
     62	  Say Y here to include support for JZ4780 efuse memory found on
     63	  all JZ4780 SoC based devices.
     64	  To compile this driver as a module, choose M here: the module
     65	  will be called nvmem_jz4780_efuse.
     66
     67config NVMEM_LPC18XX_EEPROM
     68	tristate "NXP LPC18XX EEPROM Memory Support"
     69	depends on ARCH_LPC18XX || COMPILE_TEST
     70	depends on HAS_IOMEM
     71	help
     72	  Say Y here to include support for NXP LPC18xx EEPROM memory found in
     73	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
     74	  To compile this driver as a module, choose M here: the module
     75	  will be called nvmem_lpc18xx_eeprom.
     76
     77config NVMEM_LPC18XX_OTP
     78	tristate "NXP LPC18XX OTP Memory Support"
     79	depends on ARCH_LPC18XX || COMPILE_TEST
     80	depends on HAS_IOMEM
     81	help
     82	  Say Y here to include support for NXP LPC18xx OTP memory found on
     83	  all LPC18xx and LPC43xx devices.
     84	  To compile this driver as a module, choose M here: the module
     85	  will be called nvmem_lpc18xx_otp.
     86
     87config NVMEM_MXS_OCOTP
     88	tristate "Freescale MXS On-Chip OTP Memory Support"
     89	depends on ARCH_MXS || COMPILE_TEST
     90	depends on HAS_IOMEM
     91	help
     92	  If you say Y here, you will get readonly access to the
     93	  One Time Programmable memory pages that are stored
     94	  on the Freescale i.MX23/i.MX28 processor.
     95
     96	  This driver can also be built as a module. If so, the module
     97	  will be called nvmem-mxs-ocotp.
     98
     99config MTK_EFUSE
    100	tristate "Mediatek SoCs EFUSE support"
    101	depends on ARCH_MEDIATEK || COMPILE_TEST
    102	depends on HAS_IOMEM
    103	help
    104	  This is a driver to access hardware related data like sensor
    105	  calibration, HDMI impedance etc.
    106
    107	  This driver can also be built as a module. If so, the module
    108	  will be called efuse-mtk.
    109
    110config NVMEM_NINTENDO_OTP
    111	tristate "Nintendo Wii and Wii U OTP Support"
    112	depends on WII || COMPILE_TEST
    113	help
    114	  This is a driver exposing the OTP of a Nintendo Wii or Wii U console.
    115
    116	  This memory contains common and per-console keys, signatures and
    117	  related data required to access peripherals.
    118
    119	  This driver can also be built as a module. If so, the module
    120	  will be called nvmem-nintendo-otp.
    121
    122config QCOM_QFPROM
    123	tristate "QCOM QFPROM Support"
    124	depends on ARCH_QCOM || COMPILE_TEST
    125	depends on HAS_IOMEM
    126	help
    127	  Say y here to enable QFPROM support. The QFPROM provides access
    128	  functions for QFPROM data to rest of the drivers via nvmem interface.
    129
    130	  This driver can also be built as a module. If so, the module
    131	  will be called nvmem_qfprom.
    132
    133config NVMEM_SPMI_SDAM
    134	tristate "SPMI SDAM Support"
    135	depends on SPMI
    136	help
    137	  This driver supports the Shared Direct Access Memory Module on
    138	  Qualcomm Technologies, Inc. PMICs. It provides the clients
    139	  an interface to read/write to the SDAM module's shared memory.
    140
    141config ROCKCHIP_EFUSE
    142	tristate "Rockchip eFuse Support"
    143	depends on ARCH_ROCKCHIP || COMPILE_TEST
    144	depends on HAS_IOMEM
    145	help
    146	  This is a simple drive to dump specified values of Rockchip SoC
    147	  from eFuse, such as cpu-leakage.
    148
    149	  This driver can also be built as a module. If so, the module
    150	  will be called nvmem_rockchip_efuse.
    151
    152config ROCKCHIP_OTP
    153	tristate "Rockchip OTP controller support"
    154	depends on ARCH_ROCKCHIP || COMPILE_TEST
    155	depends on HAS_IOMEM
    156	help
    157	  This is a simple drive to dump specified values of Rockchip SoC
    158	  from otp, such as cpu-leakage.
    159
    160	  This driver can also be built as a module. If so, the module
    161	  will be called nvmem_rockchip_otp.
    162
    163config NVMEM_BCM_OCOTP
    164	tristate "Broadcom On-Chip OTP Controller support"
    165	depends on ARCH_BCM_IPROC || COMPILE_TEST
    166	depends on HAS_IOMEM
    167	default ARCH_BCM_IPROC
    168	help
    169	  Say y here to enable read/write access to the Broadcom OTP
    170	  controller.
    171
    172	  This driver can also be built as a module. If so, the module
    173	  will be called nvmem-bcm-ocotp.
    174
    175config NVMEM_STM32_ROMEM
    176	tristate "STMicroelectronics STM32 factory-programmed memory support"
    177	depends on ARCH_STM32 || COMPILE_TEST
    178	help
    179	  Say y here to enable read-only access for STMicroelectronics STM32
    180	  factory-programmed memory area.
    181
    182	  This driver can also be built as a module. If so, the module
    183	  will be called nvmem-stm32-romem.
    184
    185config NVMEM_SUNXI_SID
    186	tristate "Allwinner SoCs SID support"
    187	depends on ARCH_SUNXI
    188	help
    189	  This is a driver for the 'security ID' available on various Allwinner
    190	  devices.
    191
    192	  This driver can also be built as a module. If so, the module
    193	  will be called nvmem_sunxi_sid.
    194
    195config UNIPHIER_EFUSE
    196	tristate "UniPhier SoCs eFuse support"
    197	depends on ARCH_UNIPHIER || COMPILE_TEST
    198	depends on HAS_IOMEM
    199	help
    200	  This is a simple driver to dump specified values of UniPhier SoC
    201	  from eFuse.
    202
    203	  This driver can also be built as a module. If so, the module
    204	  will be called nvmem-uniphier-efuse.
    205
    206config NVMEM_VF610_OCOTP
    207	tristate "VF610 SoC OCOTP support"
    208	depends on SOC_VF610 || COMPILE_TEST
    209	depends on HAS_IOMEM
    210	help
    211	  This is a driver for the 'OCOTP' peripheral available on Vybrid
    212	  devices like VF5xx and VF6xx.
    213
    214	  This driver can also be build as a module. If so, the module will
    215	  be called nvmem-vf610-ocotp.
    216
    217config MESON_EFUSE
    218	tristate "Amlogic Meson GX eFuse Support"
    219	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
    220	help
    221	  This is a driver to retrieve specific values from the eFuse found on
    222	  the Amlogic Meson GX SoCs.
    223
    224	  This driver can also be built as a module. If so, the module
    225	  will be called nvmem_meson_efuse.
    226
    227config MESON_MX_EFUSE
    228	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
    229	depends on ARCH_MESON || COMPILE_TEST
    230	help
    231	  This is a driver to retrieve specific values from the eFuse found on
    232	  the Amlogic Meson6, Meson8 and Meson8b SoCs.
    233
    234	  This driver can also be built as a module. If so, the module
    235	  will be called nvmem_meson_mx_efuse.
    236
    237config NVMEM_SNVS_LPGPR
    238	tristate "Support for Low Power General Purpose Register"
    239	depends on ARCH_MXC || COMPILE_TEST
    240	help
    241	  This is a driver for Low Power General Purpose Register (LPGPR) available on
    242	  i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
    243
    244	  This driver can also be built as a module. If so, the module
    245	  will be called nvmem-snvs-lpgpr.
    246
    247config RAVE_SP_EEPROM
    248	tristate "Rave SP EEPROM Support"
    249	depends on RAVE_SP_CORE
    250	help
    251	  Say y here to enable Rave SP EEPROM support.
    252
    253config SC27XX_EFUSE
    254	tristate "Spreadtrum SC27XX eFuse Support"
    255	depends on MFD_SC27XX_PMIC || COMPILE_TEST
    256	depends on HAS_IOMEM
    257	help
    258	  This is a simple driver to dump specified values of Spreadtrum
    259	  SC27XX PMICs from eFuse.
    260
    261	  This driver can also be built as a module. If so, the module
    262	  will be called nvmem-sc27xx-efuse.
    263
    264config NVMEM_ZYNQMP
    265	bool "Xilinx ZYNQMP SoC nvmem firmware support"
    266	depends on ARCH_ZYNQMP
    267	help
    268	  This is a driver to access hardware related data like
    269	  soc revision, IDCODE... etc by using the firmware
    270	  interface.
    271
    272	  If sure, say yes. If unsure, say no.
    273
    274config SPRD_EFUSE
    275	tristate "Spreadtrum SoC eFuse Support"
    276	depends on ARCH_SPRD || COMPILE_TEST
    277	depends on HAS_IOMEM
    278	help
    279	  This is a simple driver to dump specified values of Spreadtrum
    280	  SoCs from eFuse.
    281
    282	  This driver can also be built as a module. If so, the module
    283	  will be called nvmem-sprd-efuse.
    284
    285config NVMEM_RMEM
    286	tristate "Reserved Memory Based Driver Support"
    287	depends on HAS_IOMEM
    288	help
    289	  This driver maps reserved memory into an nvmem device. It might be
    290	  useful to expose information left by firmware in memory.
    291
    292	  This driver can also be built as a module. If so, the module
    293	  will be called nvmem-rmem.
    294
    295config NVMEM_BRCM_NVRAM
    296	tristate "Broadcom's NVRAM support"
    297	depends on ARCH_BCM_5301X || COMPILE_TEST
    298	depends on HAS_IOMEM
    299	help
    300	  This driver provides support for Broadcom's NVRAM that can be accessed
    301	  using I/O mapping.
    302
    303config NVMEM_LAYERSCAPE_SFP
    304	tristate "Layerscape SFP (Security Fuse Processor) support"
    305	depends on ARCH_LAYERSCAPE || COMPILE_TEST
    306	depends on HAS_IOMEM
    307	select REGMAP_MMIO
    308	help
    309	  This driver provides support to read the eFuses on Freescale
    310	  Layerscape SoC's. For example, the vendor provides a per part
    311	  unique ID there.
    312
    313	  This driver can also be built as a module. If so, the module
    314	  will be called layerscape-sfp.
    315
    316config NVMEM_SUNPLUS_OCOTP
    317	tristate "Sunplus SoC OTP support"
    318	depends on SOC_SP7021 || COMPILE_TEST
    319	depends on HAS_IOMEM
    320	help
    321	  This is a driver for the On-chip OTP controller (OCOTP) available
    322	  on Sunplus SoCs. It provides access to 128 bytes of one-time
    323	  programmable eFuse.
    324
    325	  This driver can also be built as a module. If so, the module
    326	  will be called nvmem-sunplus-ocotp.
    327
    328config NVMEM_APPLE_EFUSES
    329	tristate "Apple eFuse support"
    330	depends on ARCH_APPLE || COMPILE_TEST
    331	default ARCH_APPLE
    332	help
    333	  Say y here to enable support for reading eFuses on Apple SoCs
    334	  such as the M1. These are e.g. used to store factory programmed
    335	  calibration data required for the PCIe or the USB-C PHY.
    336
    337	  This driver can also be built as a module. If so, the module will
    338	  be called nvmem-apple-efuses.
    339
    340endif