X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=include%2Fi2c_eeprom.h;h=0fcdf3831b3a7394c3ca330c8a5260c9245e7439;hb=0bcb11fa1f04baeb0d5462a358aa86b16062bebd;hp=ea6c962a3932f3bc7a28276a93e2bc9c45f2a2cf;hpb=bd5053ffa5b8162257537bdb79ba829372423096;p=oweals%2Fu-boot.git diff --git a/include/i2c_eeprom.h b/include/i2c_eeprom.h index ea6c962a39..0fcdf3831b 100644 --- a/include/i2c_eeprom.h +++ b/include/i2c_eeprom.h @@ -1,7 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (c) 2014 Google, Inc - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef __I2C_EEPROM @@ -14,6 +13,34 @@ struct i2c_eeprom_ops { }; struct i2c_eeprom { + /* The EEPROM's page size in byte */ + unsigned long pagesize; + /* The EEPROM's page width in bits (pagesize = 2^pagewidth) */ + unsigned pagewidth; }; +/* + * i2c_eeprom_read() - read bytes from an I2C EEPROM chip + * + * @dev: Chip to read from + * @offset: Offset within chip to start reading + * @buf: Place to put data + * @size: Number of bytes to read + * + * @return 0 on success, -ve on failure + */ +int i2c_eeprom_read(struct udevice *dev, int offset, uint8_t *buf, int size); + +/* + * i2c_eeprom_write() - write bytes to an I2C EEPROM chip + * + * @dev: Chip to write to + * @offset: Offset within chip to start writing + * @buf: Buffer containing data to write + * @size: Number of bytes to write + * + * @return 0 on success, -ve on failure + */ +int i2c_eeprom_write(struct udevice *dev, int offset, uint8_t *buf, int size); + #endif