libftdi Archives

Subject: EEPROM: calculate user_data_addr

From: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Mon, 31 Jul 2023 13:53:21 +0200
I want to write ca. 25 bytes as user data (my FTDI chips are FT2232,
FT4232 and FTX). What is my strategy to calculate the user_data_addr?

If I set EEPROM defaults via ftdi_eeprom_initdefaults() providing only
the product string. Then I perform ftdi_eeprom_build() and use its
return value to calculate the user_data_addr like: eeprom->size -
user_area_size

But this doesn't work as with 128 byte EEPROM (FT2232/4232), the
free_end is 26 and thus I get:

"Warning, user data overlaps the strings area!"

How should EEWriteUserArea() look like in libftdi1?

And what about returning an error instead of printing a warning when
the user data overlaps with the strings or generated data?

Regards,
Yegor

--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx   

Current Thread