| # SPDX-License-Identifier: GPL-2.0-only |
| menu "EEPROM support" |
| |
| config EEPROM_AT24 |
| tristate "I2C EEPROMs / RAMs / ROMs from most vendors" |
| depends on I2C && SYSFS |
| select NVMEM |
| select NVMEM_SYSFS |
| select REGMAP |
| select REGMAP_I2C |
| help |
| Enable this driver to get read/write support to most I2C EEPROMs |
| and compatible devices like FRAMs, SRAMs, ROMs etc. After you |
| configure the driver to know about each chip on your target |
| board. Use these generic chip names, instead of vendor-specific |
| ones like at24c64, 24lc02 or fm24c04: |
| |
| 24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08, |
| 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024, 24c2048 |
| |
| Unless you like data loss puzzles, always be sure that any chip |
| you configure as a 24c32 (32 kbit) or larger is NOT really a |
| 24c16 (16 kbit) or smaller, and vice versa. Marking the chip |
| as read-only won't help recover from this. Also, if your chip |
| has any software write-protect mechanism you may want to review the |
| code to make sure this driver won't turn it on by accident. |
| |
| If you use this with an SMBus adapter instead of an I2C adapter, |
| full functionality is not available. Only smaller devices are |
| supported (24c16 and below, max 4 kByte). |
| |
| This driver can also be built as a module. If so, the module |
| will be called at24. |
| |
| config EEPROM_AT25 |
| tristate "SPI EEPROMs (FRAMs) from most vendors" |
| depends on SPI && SYSFS |
| select NVMEM |
| select NVMEM_SYSFS |
| help |
| Enable this driver to get read/write support to most SPI EEPROMs |
| and Cypress FRAMs, |
| after you configure the board init code to know about each eeprom |
| on your target board. |
| |
| This driver can also be built as a module. If so, the module |
| will be called at25. |
| |
| config EEPROM_MAX6875 |
| tristate "Maxim MAX6874/5 power supply supervisor" |
| depends on I2C |
| help |
| If you say yes here you get read-only support for the user EEPROM of |
| the Maxim MAX6874/5 EEPROM-programmable, quad power-supply |
| sequencer/supervisor. |
| |
| All other features of this chip should be accessed via i2c-dev. |
| |
| This driver can also be built as a module. If so, the module |
| will be called max6875. |
| |
| |
| config EEPROM_93CX6 |
| tristate "EEPROM 93CX6 support" |
| help |
| This is a driver for the EEPROM chipsets 93c46 and 93c66. |
| The driver supports both read as well as write commands. |
| |
| If unsure, say N. |
| |
| config EEPROM_93XX46 |
| tristate "Microwire EEPROM 93XX46 support" |
| depends on SPI && SYSFS |
| select REGMAP |
| select NVMEM |
| select NVMEM_SYSFS |
| help |
| Driver for the microwire EEPROM chipsets 93xx46x. The driver |
| supports both read and write commands and also the command to |
| erase the whole EEPROM. |
| |
| This driver can also be built as a module. If so, the module |
| will be called eeprom_93xx46. |
| |
| If unsure, say N. |
| |
| config EEPROM_DIGSY_MTC_CFG |
| bool "DigsyMTC display configuration EEPROMs device" |
| depends on GPIO_MPC5200 && SPI_GPIO |
| help |
| This option enables access to display configuration EEPROMs |
| on digsy_mtc board. You have to additionally select Microwire |
| EEPROM 93XX46 driver. sysfs entries will be created for that |
| EEPROM allowing to read/write the configuration data or to |
| erase the whole EEPROM. |
| |
| If unsure, say N. |
| |
| config EEPROM_IDT_89HPESX |
| tristate "IDT 89HPESx PCIe-swtiches EEPROM / CSR support" |
| depends on I2C && SYSFS |
| help |
| Enable this driver to get read/write access to EEPROM / CSRs |
| over IDT PCIe-swtich i2c-slave interface. |
| |
| This driver can also be built as a module. If so, the module |
| will be called idt_89hpesx. |
| |
| config EEPROM_EE1004 |
| tristate "SPD EEPROMs on DDR4 memory modules" |
| depends on I2C && SYSFS |
| select NVMEM |
| select NVMEM_SYSFS |
| help |
| Enable this driver to get read support to SPD EEPROMs following |
| the JEDEC EE1004 standard. These are typically found on DDR4 |
| SDRAM memory modules. |
| |
| This driver can also be built as a module. If so, the module |
| will be called ee1004. |
| |
| endmenu |