Lines Matching +full:no +full:- +full:eeprom
5 * SPDX-License-Identifier: GPL-2.0+
9 * Support for read and write access to EEPROM like memory devices. This
10 * includes regular EEPROM as well as FRAM (ferroelectic nonvolaile RAM).
11 * FRAM devices read and write data at bus speed. In particular, there is no
12 * write delay. Also, there is no limit imposed on the number of bytes that can
15 * Use the following configuration options to ensure no unneeded performance
16 * degradation (typical for EEPROM) is incured for FRAM memory:
46 #define EEPROM_PAGE_OFFSET(x) ((x) & (EEPROM_PAGE_SIZE - 1))
49 * for CONFIG_SYS_I2C_EEPROM_ADDR_LEN == 2 (16-bit EEPROM address) offset is
50 * 0x000nxxxx for EEPROM address selectors at n, offset xxxx in EEPROM.
52 * for CONFIG_SYS_I2C_EEPROM_ADDR_LEN == 1 (8-bit EEPROM page address) offset is
53 * 0x00000nxx for EEPROM address selectors and page number at n.
70 /* SPI EEPROM */ in eeprom_init()
75 /* I2C EEPROM */ in eeprom_init()
107 unsigned len = end - offset; in eeprom_len()
110 * For a FRAM device there is no limit on the number of the in eeprom_len()
116 unsigned maxlen = EEPROM_PAGE_SIZE - EEPROM_PAGE_OFFSET(blk_off); in eeprom_len()
146 ret = i2c_read(addr[0], offset, alen - 1, buffer, len); in eeprom_rw_block()
148 ret = i2c_write(addr[0], offset, alen - 1, buffer, len); in eeprom_rw_block()
214 return (*endptr != '\0') ? -1 : value; in parse_numeric_param()
218 * parse_i2c_bus_addr - parse the i2c bus and i2c devaddr parameters
236 *i2c_bus = -1; in parse_i2c_bus_addr()
243 *i2c_bus = -1; in parse_i2c_bus_addr()
346 #define NEXT_PARAM(argc, index) { (argc)--; (index)++; }
351 int i2c_bus = -1, index = 0; in do_eeprom()
352 ulong i2c_addr = -1, addr = 0, cnt = 0, off = 0; in do_eeprom()
370 if (!strcmp(argv[index], "-l")) { in do_eeprom()
400 while (ret--) in do_eeprom()
425 eeprom, 8, 1, do_eeprom,
426 "EEPROM sub-system",
428 "eeprom write <bus> <devaddr> addr off cnt\n"
429 " - read/write `cnt' bytes from `devaddr` EEPROM at offset `off'"
432 "eeprom print [-l <layout_version>] <bus> <devaddr>\n"
433 " - Print layout fields and their data in human readable format\n"
434 "eeprom update [-l <layout_version>] <bus> <devaddr> field_name field_value\n"
435 " - Update a specific eeprom field with new data.\n"
439 …"The -l option can be used to force the command to interpret the EEPROM data using the chosen layo…
440 …"If the -l option is omitted, the command will auto detect the layout based on the data in the EEP…
441 "The values which can be provided with the -l option are:\n"