18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_cimenu "EEPROM support" 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ciconfig EEPROM_AT24 58c2ecf20Sopenharmony_ci tristate "I2C EEPROMs / RAMs / ROMs from most vendors" 68c2ecf20Sopenharmony_ci depends on I2C && SYSFS 78c2ecf20Sopenharmony_ci select NVMEM 88c2ecf20Sopenharmony_ci select NVMEM_SYSFS 98c2ecf20Sopenharmony_ci select REGMAP 108c2ecf20Sopenharmony_ci select REGMAP_I2C 118c2ecf20Sopenharmony_ci help 128c2ecf20Sopenharmony_ci Enable this driver to get read/write support to most I2C EEPROMs 138c2ecf20Sopenharmony_ci and compatible devices like FRAMs, SRAMs, ROMs etc. After you 148c2ecf20Sopenharmony_ci configure the driver to know about each chip on your target 158c2ecf20Sopenharmony_ci board. Use these generic chip names, instead of vendor-specific 168c2ecf20Sopenharmony_ci ones like at24c64, 24lc02 or fm24c04: 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci 24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08, 198c2ecf20Sopenharmony_ci 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024, 24c2048 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci Unless you like data loss puzzles, always be sure that any chip 228c2ecf20Sopenharmony_ci you configure as a 24c32 (32 kbit) or larger is NOT really a 238c2ecf20Sopenharmony_ci 24c16 (16 kbit) or smaller, and vice versa. Marking the chip 248c2ecf20Sopenharmony_ci as read-only won't help recover from this. Also, if your chip 258c2ecf20Sopenharmony_ci has any software write-protect mechanism you may want to review the 268c2ecf20Sopenharmony_ci code to make sure this driver won't turn it on by accident. 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci If you use this with an SMBus adapter instead of an I2C adapter, 298c2ecf20Sopenharmony_ci full functionality is not available. Only smaller devices are 308c2ecf20Sopenharmony_ci supported (24c16 and below, max 4 kByte). 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 338c2ecf20Sopenharmony_ci will be called at24. 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ciconfig EEPROM_AT25 368c2ecf20Sopenharmony_ci tristate "SPI EEPROMs from most vendors" 378c2ecf20Sopenharmony_ci depends on SPI && SYSFS 388c2ecf20Sopenharmony_ci select NVMEM 398c2ecf20Sopenharmony_ci select NVMEM_SYSFS 408c2ecf20Sopenharmony_ci help 418c2ecf20Sopenharmony_ci Enable this driver to get read/write support to most SPI EEPROMs, 428c2ecf20Sopenharmony_ci after you configure the board init code to know about each eeprom 438c2ecf20Sopenharmony_ci on your target board. 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 468c2ecf20Sopenharmony_ci will be called at25. 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ciconfig EEPROM_LEGACY 498c2ecf20Sopenharmony_ci tristate "Old I2C EEPROM reader (DEPRECATED)" 508c2ecf20Sopenharmony_ci depends on I2C && SYSFS 518c2ecf20Sopenharmony_ci help 528c2ecf20Sopenharmony_ci If you say yes here you get read-only access to the EEPROM data 538c2ecf20Sopenharmony_ci available on modern memory DIMMs and Sony Vaio laptops via I2C. Such 548c2ecf20Sopenharmony_ci EEPROMs could theoretically be available on other devices as well. 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci This driver is deprecated and will be removed soon, please use the 578c2ecf20Sopenharmony_ci better at24 driver instead. 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 608c2ecf20Sopenharmony_ci will be called eeprom. 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ciconfig EEPROM_MAX6875 638c2ecf20Sopenharmony_ci tristate "Maxim MAX6874/5 power supply supervisor" 648c2ecf20Sopenharmony_ci depends on I2C 658c2ecf20Sopenharmony_ci help 668c2ecf20Sopenharmony_ci If you say yes here you get read-only support for the user EEPROM of 678c2ecf20Sopenharmony_ci the Maxim MAX6874/5 EEPROM-programmable, quad power-supply 688c2ecf20Sopenharmony_ci sequencer/supervisor. 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci All other features of this chip should be accessed via i2c-dev. 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 738c2ecf20Sopenharmony_ci will be called max6875. 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ciconfig EEPROM_93CX6 778c2ecf20Sopenharmony_ci tristate "EEPROM 93CX6 support" 788c2ecf20Sopenharmony_ci help 798c2ecf20Sopenharmony_ci This is a driver for the EEPROM chipsets 93c46 and 93c66. 808c2ecf20Sopenharmony_ci The driver supports both read as well as write commands. 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ci If unsure, say N. 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ciconfig EEPROM_93XX46 858c2ecf20Sopenharmony_ci tristate "Microwire EEPROM 93XX46 support" 868c2ecf20Sopenharmony_ci depends on SPI && SYSFS 878c2ecf20Sopenharmony_ci select REGMAP 888c2ecf20Sopenharmony_ci select NVMEM 898c2ecf20Sopenharmony_ci select NVMEM_SYSFS 908c2ecf20Sopenharmony_ci help 918c2ecf20Sopenharmony_ci Driver for the microwire EEPROM chipsets 93xx46x. The driver 928c2ecf20Sopenharmony_ci supports both read and write commands and also the command to 938c2ecf20Sopenharmony_ci erase the whole EEPROM. 948c2ecf20Sopenharmony_ci 958c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 968c2ecf20Sopenharmony_ci will be called eeprom_93xx46. 978c2ecf20Sopenharmony_ci 988c2ecf20Sopenharmony_ci If unsure, say N. 998c2ecf20Sopenharmony_ci 1008c2ecf20Sopenharmony_ciconfig EEPROM_DIGSY_MTC_CFG 1018c2ecf20Sopenharmony_ci bool "DigsyMTC display configuration EEPROMs device" 1028c2ecf20Sopenharmony_ci depends on GPIO_MPC5200 && SPI_GPIO 1038c2ecf20Sopenharmony_ci help 1048c2ecf20Sopenharmony_ci This option enables access to display configuration EEPROMs 1058c2ecf20Sopenharmony_ci on digsy_mtc board. You have to additionally select Microwire 1068c2ecf20Sopenharmony_ci EEPROM 93XX46 driver. sysfs entries will be created for that 1078c2ecf20Sopenharmony_ci EEPROM allowing to read/write the configuration data or to 1088c2ecf20Sopenharmony_ci erase the whole EEPROM. 1098c2ecf20Sopenharmony_ci 1108c2ecf20Sopenharmony_ci If unsure, say N. 1118c2ecf20Sopenharmony_ci 1128c2ecf20Sopenharmony_ciconfig EEPROM_IDT_89HPESX 1138c2ecf20Sopenharmony_ci tristate "IDT 89HPESx PCIe-swtiches EEPROM / CSR support" 1148c2ecf20Sopenharmony_ci depends on I2C && SYSFS 1158c2ecf20Sopenharmony_ci help 1168c2ecf20Sopenharmony_ci Enable this driver to get read/write access to EEPROM / CSRs 1178c2ecf20Sopenharmony_ci over IDT PCIe-swtich i2c-slave interface. 1188c2ecf20Sopenharmony_ci 1198c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 1208c2ecf20Sopenharmony_ci will be called idt_89hpesx. 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_ciconfig EEPROM_EE1004 1238c2ecf20Sopenharmony_ci tristate "SPD EEPROMs on DDR4 memory modules" 1248c2ecf20Sopenharmony_ci depends on I2C && SYSFS 1258c2ecf20Sopenharmony_ci help 1268c2ecf20Sopenharmony_ci Enable this driver to get read support to SPD EEPROMs following 1278c2ecf20Sopenharmony_ci the JEDEC EE1004 standard. These are typically found on DDR4 1288c2ecf20Sopenharmony_ci SDRAM memory modules. 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, the module 1318c2ecf20Sopenharmony_ci will be called ee1004. 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ciendmenu 134