The branch, master has been updated
via 672fd36819344656810c1c1c69442a2901972794 (commit)
from cffed9f55dd41244427a803cc755d50330c84fd8 (commit)
- Log -----------------------------------------------------------------
commit 672fd36819344656810c1c1c69442a2901972794
Author: Uwe Bonnes <bon@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon Jul 11 15:02:23 2011 +0200
Add ftdi_set_eeprom_buf() as proposed in ftdi_eeprom
-----------------------------------------------------------------------
Summary of changes:
src/ftdi.c | 23 +++++++++++++++++++++++
src/ftdi.h | 1 +
2 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/src/ftdi.c b/src/ftdi.c
index 79e24ab..2a97942 100644
--- a/src/ftdi.c
+++ b/src/ftdi.c
@@ -3508,6 +3508,29 @@ int ftdi_get_eeprom_buf(struct ftdi_context *ftdi,
unsigned char * buf, int size
return 0;
}
+/** Set the EEPROM content from the user-supplied prefilled buffer
+
+ \param ftdi pointer to ftdi_context
+ \param buf buffer to read EEPROM content
+ \param size Size of buffer
+
+ \retval 0: All fine
+ \retval -1: struct ftdi_contxt or ftdi_eeprom of buf missing
+*/
+int ftdi_set_eeprom_buf(struct ftdi_context *ftdi, const unsigned char * buf,
int size)
+{
+ if (!ftdi || !(ftdi->eeprom) || !buf)
+ ftdi_error_return(-1, "No appropriate structure");
+
+ // Only copy up to FTDI_MAX_EEPROM_SIZE bytes
+ if (size > FTDI_MAX_EEPROM_SIZE)
+ size = FTDI_MAX_EEPROM_SIZE;
+
+ memcpy(ftdi->eeprom->buf, buf, size);
+
+ return 0;
+}
+
/**
Read eeprom location
diff --git a/src/ftdi.h b/src/ftdi.h
index c0a3d3d..1b1d8df 100644
--- a/src/ftdi.h
+++ b/src/ftdi.h
@@ -584,6 +584,7 @@ extern "C"
int ftdi_set_eeprom_value(struct ftdi_context *ftdi, enum
ftdi_eeprom_value value_name, int value);
int ftdi_get_eeprom_buf(struct ftdi_context *ftdi, unsigned char * buf,
int size);
+ int ftdi_set_eeprom_buf(struct ftdi_context *ftdi, const unsigned char *
buf, int size);
int ftdi_read_eeprom(struct ftdi_context *ftdi);
int ftdi_read_chipid(struct ftdi_context *ftdi, unsigned int *chipid);
hooks/post-receive
--
port libftdi to libusb-1.0
--
libftdi-git - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi-git+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|