162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_cimenu "EEPROM support" 362306a36Sopenharmony_ci 462306a36Sopenharmony_ciconfig EEPROM_AT24 562306a36Sopenharmony_ci tristate "I2C EEPROMs / RAMs / ROMs from most vendors" 662306a36Sopenharmony_ci depends on I2C && SYSFS 762306a36Sopenharmony_ci select NVMEM 862306a36Sopenharmony_ci select NVMEM_SYSFS 962306a36Sopenharmony_ci select REGMAP 1062306a36Sopenharmony_ci select REGMAP_I2C 1162306a36Sopenharmony_ci help 1262306a36Sopenharmony_ci Enable this driver to get read/write support to most I2C EEPROMs 1362306a36Sopenharmony_ci and compatible devices like FRAMs, SRAMs, ROMs etc. After you 1462306a36Sopenharmony_ci configure the driver to know about each chip on your target 1562306a36Sopenharmony_ci board. Use these generic chip names, instead of vendor-specific 1662306a36Sopenharmony_ci ones like at24c64, 24lc02 or fm24c04: 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci 24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08, 1962306a36Sopenharmony_ci 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024, 24c2048 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci Unless you like data loss puzzles, always be sure that any chip 2262306a36Sopenharmony_ci you configure as a 24c32 (32 kbit) or larger is NOT really a 2362306a36Sopenharmony_ci 24c16 (16 kbit) or smaller, and vice versa. Marking the chip 2462306a36Sopenharmony_ci as read-only won't help recover from this. Also, if your chip 2562306a36Sopenharmony_ci has any software write-protect mechanism you may want to review the 2662306a36Sopenharmony_ci code to make sure this driver won't turn it on by accident. 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci If you use this with an SMBus adapter instead of an I2C adapter, 2962306a36Sopenharmony_ci full functionality is not available. Only smaller devices are 3062306a36Sopenharmony_ci supported (24c16 and below, max 4 kByte). 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 3362306a36Sopenharmony_ci will be called at24. 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ciconfig EEPROM_AT25 3662306a36Sopenharmony_ci tristate "SPI EEPROMs (FRAMs) from most vendors" 3762306a36Sopenharmony_ci depends on SPI && SYSFS 3862306a36Sopenharmony_ci select NVMEM 3962306a36Sopenharmony_ci select NVMEM_SYSFS 4062306a36Sopenharmony_ci help 4162306a36Sopenharmony_ci Enable this driver to get read/write support to most SPI EEPROMs 4262306a36Sopenharmony_ci and Cypress FRAMs, 4362306a36Sopenharmony_ci after you configure the board init code to know about each eeprom 4462306a36Sopenharmony_ci on your target board. 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 4762306a36Sopenharmony_ci will be called at25. 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ciconfig EEPROM_LEGACY 5062306a36Sopenharmony_ci tristate "Old I2C EEPROM reader (DEPRECATED)" 5162306a36Sopenharmony_ci depends on I2C && SYSFS 5262306a36Sopenharmony_ci help 5362306a36Sopenharmony_ci If you say yes here you get read-only access to the EEPROM data 5462306a36Sopenharmony_ci available on modern memory DIMMs and Sony Vaio laptops via I2C. Such 5562306a36Sopenharmony_ci EEPROMs could theoretically be available on other devices as well. 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci This driver is deprecated and will be removed soon, please use the 5862306a36Sopenharmony_ci better at24 driver instead. 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 6162306a36Sopenharmony_ci will be called eeprom. 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ciconfig EEPROM_MAX6875 6462306a36Sopenharmony_ci tristate "Maxim MAX6874/5 power supply supervisor" 6562306a36Sopenharmony_ci depends on I2C 6662306a36Sopenharmony_ci help 6762306a36Sopenharmony_ci If you say yes here you get read-only support for the user EEPROM of 6862306a36Sopenharmony_ci the Maxim MAX6874/5 EEPROM-programmable, quad power-supply 6962306a36Sopenharmony_ci sequencer/supervisor. 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci All other features of this chip should be accessed via i2c-dev. 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 7462306a36Sopenharmony_ci will be called max6875. 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ciconfig EEPROM_93CX6 7862306a36Sopenharmony_ci tristate "EEPROM 93CX6 support" 7962306a36Sopenharmony_ci help 8062306a36Sopenharmony_ci This is a driver for the EEPROM chipsets 93c46 and 93c66. 8162306a36Sopenharmony_ci The driver supports both read as well as write commands. 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci If unsure, say N. 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ciconfig EEPROM_93XX46 8662306a36Sopenharmony_ci tristate "Microwire EEPROM 93XX46 support" 8762306a36Sopenharmony_ci depends on SPI && SYSFS 8862306a36Sopenharmony_ci select REGMAP 8962306a36Sopenharmony_ci select NVMEM 9062306a36Sopenharmony_ci select NVMEM_SYSFS 9162306a36Sopenharmony_ci help 9262306a36Sopenharmony_ci Driver for the microwire EEPROM chipsets 93xx46x. The driver 9362306a36Sopenharmony_ci supports both read and write commands and also the command to 9462306a36Sopenharmony_ci erase the whole EEPROM. 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 9762306a36Sopenharmony_ci will be called eeprom_93xx46. 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci If unsure, say N. 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ciconfig EEPROM_DIGSY_MTC_CFG 10262306a36Sopenharmony_ci bool "DigsyMTC display configuration EEPROMs device" 10362306a36Sopenharmony_ci depends on GPIO_MPC5200 && SPI_GPIO 10462306a36Sopenharmony_ci help 10562306a36Sopenharmony_ci This option enables access to display configuration EEPROMs 10662306a36Sopenharmony_ci on digsy_mtc board. You have to additionally select Microwire 10762306a36Sopenharmony_ci EEPROM 93XX46 driver. sysfs entries will be created for that 10862306a36Sopenharmony_ci EEPROM allowing to read/write the configuration data or to 10962306a36Sopenharmony_ci erase the whole EEPROM. 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci If unsure, say N. 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ciconfig EEPROM_IDT_89HPESX 11462306a36Sopenharmony_ci tristate "IDT 89HPESx PCIe-swtiches EEPROM / CSR support" 11562306a36Sopenharmony_ci depends on I2C && SYSFS 11662306a36Sopenharmony_ci help 11762306a36Sopenharmony_ci Enable this driver to get read/write access to EEPROM / CSRs 11862306a36Sopenharmony_ci over IDT PCIe-swtich i2c-slave interface. 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 12162306a36Sopenharmony_ci will be called idt_89hpesx. 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ciconfig EEPROM_EE1004 12462306a36Sopenharmony_ci tristate "SPD EEPROMs on DDR4 memory modules" 12562306a36Sopenharmony_ci depends on I2C && SYSFS 12662306a36Sopenharmony_ci help 12762306a36Sopenharmony_ci Enable this driver to get read support to SPD EEPROMs following 12862306a36Sopenharmony_ci the JEDEC EE1004 standard. These are typically found on DDR4 12962306a36Sopenharmony_ci SDRAM memory modules. 13062306a36Sopenharmony_ci 13162306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 13262306a36Sopenharmony_ci will be called ee1004. 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ciendmenu 135