1# EEPROM driver configuration options 2 3# Copyright (c) 2019 Vestas Wind Systems A/S 4# SPDX-License-Identifier: Apache-2.0 5 6menuconfig EEPROM 7 bool "Electrically Erasable Programmable Read-Only Memory (EEPROM) drivers" 8 help 9 Enable support for EEPROM hardware. 10 11if EEPROM 12 13module = EEPROM 14module-str = eeprom 15source "subsys/logging/Kconfig.template.log_config" 16 17config EEPROM_INIT_PRIORITY 18 int "EEPROM init priority" 19 default KERNEL_INIT_PRIORITY_DEVICE 20 help 21 EEPROM driver device initialization priority. This initialization 22 priority is used unless the driver implementation has its own 23 initialization priority. 24 25config EEPROM_SHELL 26 bool "EEPROM shell" 27 depends on SHELL 28 help 29 Enable the EEPROM shell with EEPROM related commands. 30 31config EEPROM_SHELL_BUFFER_SIZE 32 int "EEPROM shell buffer size" 33 default 256 34 depends on EEPROM_SHELL 35 help 36 Size of the buffer used for EEPROM read/write commands in 37 the EEPROM shell. 38 39config EEPROM_AT2X 40 bool 41 help 42 Enable support for Atmel AT2x (and compatible) I2C/SPI 43 EEPROMs. 44 45config EEPROM_AT2X_EMUL 46 bool "Emulate an Atmel AT24 I2C chip" 47 depends on EMUL 48 help 49 This is an emulator for the Atmel AT24 series of I2C-attached EEPROMs. 50 51 At present it only supports 8-bit addressing. The size of the EEPROM 52 is given by the 'size' property. See the binding for further details. 53 54config EEPROM_AT24 55 bool "I2C EEPROMs compatible with Atmel's AT24 family" 56 default y 57 depends on DT_HAS_ATMEL_AT24_ENABLED 58 select I2C 59 select EEPROM_AT2X 60 help 61 Enable support for I2C EEPROMs compatible with Atmel's AT24 family. 62 63 There are multiple vendors manufacturing I2C EEPROMs compatible with 64 the programming model of the Atmel AT24. 65 66 Examples of compatible EEPROM families: 67 - Microchip AT24xxx 68 - ST M24xxx 69 70config EEPROM_AT25 71 bool "SPI EEPROMs compatible with Atmel's AT25 family" 72 default y 73 depends on DT_HAS_ATMEL_AT25_ENABLED 74 select SPI 75 select EEPROM_AT2X 76 help 77 Enable support for SPI EEPROMs compatible with Atmel's AT25 family. 78 79 There are multiple vendors manufacturing SPI EEPROMs compatible with 80 the programming model of the Atmel AT25. 81 82 Examples of compatible EEPROM families: 83 - Microchip AT25xxx 84 - ST M95xxx 85 86config EEPROM_AT2X_INIT_PRIORITY 87 int "AT2X EEPROM init priority" 88 default 80 89 depends on EEPROM_AT2X 90 help 91 AT2X EEPROM driver device initialization priority. 92 93 The EEPROM is connected to I2C or SPI bus an has to be initialized 94 after I2C/SPI driver. 95 96source "drivers/eeprom/Kconfig.lpc11u6x" 97source "drivers/eeprom/Kconfig.stm32" 98source "drivers/eeprom/Kconfig.eeprom_emu" 99source "drivers/eeprom/Kconfig.tmp11x" 100source "drivers/eeprom/Kconfig.xec" 101source "drivers/eeprom/Kconfig.mb85rcxx" 102source "drivers/eeprom/Kconfig.mb85rsxx" 103source "drivers/eeprom/Kconfig.fm25xxx" 104 105config EEPROM_SIMULATOR 106 bool "Simulated EEPROM driver" 107 default y 108 depends on DT_HAS_ZEPHYR_SIM_EEPROM_ENABLED 109 select STATS 110 select STATS_NAMES 111 help 112 Enable Simulated EEPROM driver. 113 114config EEPROM_SIMULATOR_SIMULATE_TIMING 115 bool "Hardware timing simulation" 116 depends on EEPROM_SIMULATOR 117 help 118 Enable Simulated hardware timing. 119 120if EEPROM_SIMULATOR_SIMULATE_TIMING 121 122config EEPROM_SIMULATOR_MIN_READ_TIME_US 123 int 124 prompt "Minimum read time (µS)" 125 default 2 126 range 1 1000000 127 128config EEPROM_SIMULATOR_MIN_WRITE_TIME_US 129 int 130 prompt "Minimum write time (µS)" 131 default 100 132 range 1 1000000 133 134endif # EEPROM_SIMULATOR_SIMULATE_TIMING 135 136config EEPROM_FAKE 137 bool "Fake EEPROM driver" 138 default y 139 depends on DT_HAS_ZEPHYR_FAKE_EEPROM_ENABLED 140 help 141 Enable support for the FFF-based fake EEPROM driver. 142 143endif # EEPROM 144