Home
last modified time | relevance | path

Searched full:eeprom (Results 1 – 25 of 332) sorted by relevance

12345678910>>...14

/Zephyr-latest/drivers/eeprom/
DKconfig1 # EEPROM driver configuration options
6 menuconfig EEPROM config
7 bool "Electrically Erasable Programmable Read-Only Memory (EEPROM) drivers"
9 Enable support for EEPROM hardware.
11 if EEPROM
13 module = EEPROM
14 module-str = eeprom
18 int "EEPROM init priority"
21 EEPROM driver device initialization priority. This initialization
26 bool "EEPROM shell"
[all …]
Deeprom_shell.c10 * @brief EEPROM shell commands.
14 #include <zephyr/drivers/eeprom.h>
35 const struct device *eeprom; in cmd_read() local
45 eeprom = shell_device_get_binding(argv[args_indx.device]); in cmd_read()
46 if (!eeprom) { in cmd_read()
47 shell_error(sh, "EEPROM device not found"); in cmd_read()
51 shell_print(sh, "Reading %zu bytes from EEPROM, offset %zu...", len, in cmd_read()
58 err = eeprom_read(eeprom, addr, data, pending); in cmd_read()
60 shell_error(sh, "EEPROM read failed (err %d)", err); in cmd_read()
76 const struct device *eeprom; in cmd_write() local
[all …]
DKconfig.eeprom_emu5 bool "Emulated EEPROM driver"
10 Enable emulated (on flash) EEPROM support. This mimics an external
11 EEPROM on a flash partition. The number of writes that can be
12 performed to the EEPROM is maximized by using a flash area that is
13 larger than the EEPROM area and by storing only changes to the EEPROM
/Zephyr-latest/doc/hardware/peripherals/eeprom/
Dshell.rst3 EEPROM Shell
13 The EEPROM shell provides an ``eeprom`` command with a set of subcommands for the :ref:`shell
14 <shell_api>` module. It allows testing and exploring the :ref:`EEPROM <eeprom_api>` driver API
15 through an interactive interface without having to write a dedicated application. The EEPROM shell
16 can also be enabled in existing applications to aid in interactive debugging of EEPROM issues.
18 In order to enable the EEPROM shell, the following :ref:`Kconfig <kconfig>` options must be enabled:
24 …lding the :zephyr:code-sample:`hello_world` sample for the :ref:`native_sim` with the EEPROM shell:
33 interact with the shell. The EEPROM shell comes with built-in help (unless
35 passing ``-h`` or ``--help`` to the ``eeprom`` command or any of its subcommands. All subcommands
39 … All of the EEPROM shell subcommands take the name of an EEPROM peripheral as their first argument,
[all …]
/Zephyr-latest/boards/shields/x_nucleo_eeprma2/doc/
Dindex.rst3 X-NUCLEO-EEPRMA2 EEPROM memory expansion board
10 and M95xx series SPI EEPROM devices.
32 The SPI EEPROM devices can write protect complete memory blocks by setting
35 are disabled in case writes to the EEPROM should be supported.
37 For more information about interfacing the M24xx and M95xx series EEPROM devices
40 - `X-NUCLEO-EEPRMA2 EEPROM memory expansion board User Manual`_
42 - `M24C02-F Serial I2C bus EEPROM Datasheet`_
43 - `M24256-DF Serial I2C bus EEPROM Datasheet`_
44 - `M24M01-DF Serial I2C bus EEPROM Datasheet`_
46 - `M95040-R Serial SPI bus EEPROM Datasheet`_
[all …]
/Zephyr-latest/tests/drivers/eeprom/api/src/
Dmain.c8 #include <zephyr/drivers/eeprom.h>
12 ZTEST_BMEM static const struct device *eeprom; variable
14 /* Test retrieval of eeprom size */
15 ZTEST_USER(eeprom, test_size) in ZTEST_USER() argument
19 size = eeprom_get_size(eeprom); in ZTEST_USER()
23 /* Test write outside eeprom area */
24 ZTEST_USER(eeprom, test_out_of_bounds) in ZTEST_USER() argument
30 size = eeprom_get_size(eeprom); in ZTEST_USER()
32 rc = eeprom_write(eeprom, size - 1, data, sizeof(data)); in ZTEST_USER()
37 ZTEST_USER(eeprom, test_write_rewrite) in ZTEST_USER() argument
[all …]
/Zephyr-latest/samples/drivers/eeprom/
DREADME.rst1 .. zephyr:code-sample:: eeprom
2 :name: EEPROM
5 Store a boot count value in EEPROM.
10 This sample demonstrates the :ref:`EEPROM driver API <eeprom_api>` in a simple boot counter
16 In case the target board has defined an EEPROM with alias ``eeprom-0`` the
21 :zephyr-app: samples/drivers/eeprom
32 :zephyr-app: samples/drivers/eeprom
42 :zephyr-app: samples/drivers/eeprom
52 Found EEPROM device "EEPROM_M24C02"
53 Using eeprom with size of: 256.
Dsample.yaml2 name: EEPROM Sample
5 sample.drivers.eeprom:
6 tags: eeprom
20 sample.drivers.eeprom.shield.x_nucleo_eeprma2:
22 - eeprom
/Zephyr-latest/tests/drivers/eeprom/api/
Dtestcase.yaml2 depends_on: eeprom
5 - eeprom
7 drivers.eeprom.api:
8 # Tests overwrite EEPROM content, only run on select boards
17 drivers.eeprom.api.w_at2x_emul:
18 # Tests overwrite EEPROM content, only run on select boards
27 drivers.eeprom.api.build:
/Zephyr-latest/include/zephyr/drivers/i2c/target/
Deeprom.h4 * @brief Public APIs for the I2C EEPROM Target driver.
16 * @brief I2C EEPROM Target Driver API
17 * @defgroup i2c_eeprom_target_api I2C EEPROM Target Driver API
25 * @brief Program memory of the virtual EEPROM
28 * @param eeprom_data Pointer of data to program into the virtual eeprom memory
29 * @param length Length of data to program into the virtual eeprom memory
38 * @brief Read single byte of virtual EEPROM memory
41 * @param eeprom_data Pointer of byte where to store the virtual eeprom memory
42 * @param offset Offset into EEPROM memory where to read the byte
51 * @brief Change the address of eeprom target at runtime
[all …]
/Zephyr-latest/samples/drivers/eeprom/src/
Dmain.c9 #include <zephyr/drivers/eeprom.h>
21 * Get a device structure from a devicetree node with alias eeprom-0
34 printk("Found EEPROM device \"%s\"\n", dev->name); in get_eeprom_device()
40 const struct device *eeprom = get_eeprom_device(); in main() local
45 if (eeprom == NULL) { in main()
49 eeprom_size = eeprom_get_size(eeprom); in main()
50 printk("Using eeprom with size of: %zu.\n", eeprom_size); in main()
52 rc = eeprom_read(eeprom, EEPROM_SAMPLE_OFFSET, &values, sizeof(values)); in main()
54 printk("Error: Couldn't read eeprom: err: %d.\n", rc); in main()
66 rc = eeprom_write(eeprom, EEPROM_SAMPLE_OFFSET, &values, sizeof(values)); in main()
[all …]
/Zephyr-latest/drivers/i2c/target/
DKconfig.eeprom1 # I2C EEPROM Target configuration options
7 bool "I2C Target EEPROM driver"
9 Enable virtual I2C Target EEPROM driver
12 bool "Set I2C Target EEPROM Address at Runtime"
15 Enable changing virtual I2C Target EEPROM device address at runtime
/Zephyr-latest/dts/bindings/mtd/
Dzephyr,emu-eeprom.yaml4 description: Zephyr Emulated EEPROM device
6 compatible: "zephyr,emu-eeprom"
8 include: eeprom-base.yaml
16 description: Size of a page used to emulate EEPROM in flash
20 description: Flash partition used to store the emulated EEPROM data
23 description: Enable a ram buffer of EEPROM size for improved read speed
Dzephyr,i2c-target-eeprom.yaml3 description: Zephyr I2C target EEPROM
5 compatible: "zephyr,i2c-target-eeprom"
7 include: ["eeprom-base.yaml", i2c-device.yaml]
14 Number of address bits used to address the EEPROM. If not specified
15 the EEPROM is assumed to have a 8-bit address.
Datmel,at25.yaml10 Examples of compatible EEPROM families:
14 Each of these can be represented by a set of common parameters (EEPROM size, page size, address
15 width, and timeout) available from the datasheet of the specific EEPROM. The compatible string for
16 these can list the specific EEPROM vendor and model along with the vendor EEPROM family as long as
19 Example devicetree node describing a ST M95256 EEPROM on the spi0 bus:
24 eeprom@1 {
Datmel,at24.yaml11 Examples of compatible EEPROM families:
15 Each of these can be represented by a set of common parameters (EEPROM size, page size, address
16 width, and timeout) available from the datasheet of the specific EEPROM. The compatible string for
17 these can list the specific EEPROM vendor and model along with the vendor EEPROM family as long as
20 Example devicetree node describing a ST M24M01 EEPROM on the i2c0 bus:
26 eeprom@56 {
Datmel,at2x-base.yaml4 # Common fields for AT24 (I2C) and AT25 (SPI) EEPROM devices
6 include: eeprom-base.yaml
14 description: EEPROM page size in bytes
18 description: EEPROM address width in bits
22 description: EEPROM write cycle timeout in milliseconds
/Zephyr-latest/include/zephyr/drivers/
Deeprom.h13 * @brief Public API for EEPROM drivers
20 * @brief EEPROM Interface
21 * @defgroup eeprom_interface EEPROM Interface
44 * @brief Callback API upon reading from the EEPROM.
52 * @brief Callback API upon writing to the EEPROM.
59 * @brief Callback API upon getting the EEPROM size.
73 * @brief Read data from EEPROM
75 * @param dev EEPROM device
95 * @brief Write data to EEPROM
97 * @param dev EEPROM device
[all …]
/Zephyr-latest/samples/drivers/i2c/target_eeprom/src/
Dmain.c10 #include <zephyr/drivers/i2c/target/eeprom.h>
12 static const struct device *eeprom = DEVICE_DT_GET(DT_NODELABEL(eeprom0)); variable
18 if (!device_is_ready(eeprom)) { in main()
19 printk("eeprom device not ready\n"); in main()
23 if (i2c_target_driver_register(eeprom) < 0) { in main()
32 if (i2c_target_driver_unregister(eeprom) < 0) { in main()
/Zephyr-latest/dts/arm/microchip/mec5/
Dmec5_eeprom_8kb.dtsi7 /* MEC5 EEPROM controller with internal 8 kilobyte EEPROM */
8 eeprom: eeprom@40002c00 { label
/Zephyr-latest/modules/canopennode/
Dcanopen_storage.c106 LOG_DBG("no object dictionary EEPROM entries to delete"); in canopen_odf_1011()
108 LOG_ERR("failed to delete object dictionary EEPROM entries" in canopen_odf_1011()
114 LOG_DBG("deleted object dictionary EEPROM entries"); in canopen_odf_1011()
134 if (!strncmp(key, "eeprom", nlen)) { in canopen_settings_set()
135 struct sCO_OD_EEPROM eeprom; in canopen_settings_set() local
137 len = read_cb(cb_arg, &eeprom, sizeof(eeprom)); in canopen_settings_set()
139 LOG_ERR("failed to restore object dictionary EEPROM" in canopen_settings_set()
143 if ((eeprom.FirstWord == CO_OD_FIRST_LAST_WORD) && in canopen_settings_set()
144 (eeprom.LastWord == CO_OD_FIRST_LAST_WORD)) { in canopen_settings_set()
145 memcpy(&CO_OD_EEPROM, &eeprom, in canopen_settings_set()
[all …]
/Zephyr-latest/tests/drivers/i2c/i2c_target_api/boards/
Dsltb010a.overlay4 eeprom0: eeprom@54 {
5 compatible = "zephyr,i2c-target-eeprom";
9 eeprom1: eeprom@56 {
10 compatible = "zephyr,i2c-target-eeprom";
Dstm32f072b_disco.overlay4 eeprom0: eeprom@54 {
5 compatible = "zephyr,i2c-target-eeprom";
13 eeprom1: eeprom@56 {
14 compatible = "zephyr,i2c-target-eeprom";
/Zephyr-latest/tests/drivers/i2c/i2c_target_api/src/
Dmain.c18 #include <zephyr/drivers/i2c/target/eeprom.h>
55 /* Read EEPROM from I2C Master requests, then compare */ in run_full_read()
58 zassert_equal(ret, 0, "Failed to read EEPROM"); in run_full_read()
97 zassert_equal(ret, 0, "Failed to read EEPROM"); in run_partial_read()
147 zassert_equal(ret, 0, "Failed to write EEPROM"); in run_program_read()
151 /* Read back EEPROM from I2C Master requests, then compare */ in run_program_read()
154 zassert_equal(ret, 0, "Failed to read EEPROM"); in run_program_read()
181 zassert_not_null(i2c_0, "EEPROM 0 - I2C bus not found"); in ZTEST()
182 zassert_not_null(eeprom_0, "EEPROM 0 device not found"); in ZTEST()
184 zassert_true(device_is_ready(i2c_0), "EEPROM 0 - I2C bus not ready"); in ZTEST()
[all …]
/Zephyr-latest/boards/shields/x_nucleo_eeprma2/
Dx_nucleo_eeprma2.overlay12 eeprom-0 = &eeprom0_x_nucleo_eeprma2;
13 eeprom-1 = &eeprom4_x_nucleo_eeprma2;
21 eeprom0_x_nucleo_eeprma2: eeprom@54 {
22 /* M24C02-FMC6TG aka U1 (2 kbit eeprom in DFN8 package) */
34 eeprom1_x_nucleo_eeprma2: eeprom@55 {
35 /* M24256-DFDW6TP aka U2 (256 kbit eeprom in TSSOP package) */
47 eeprom2_x_nucleo_eeprma2: eeprom@56 {
48 /* M24M01-DFMN6TP aka U3 (1 Mbit eeprom in SO8N package) */
60 /* U4: unpopulated SO8N footprint for any I2C M24 EEPROM */
84 /* M95040-RMC6TG aka U5 (4 kbit eeprom in DFN8 package) */
[all …]

12345678910>>...14