Hello. In process of firmware repairing of some FTDI-chip based device I have found that I can't get binary identical EEPROM dumps from properly working device and ftdi_eeprom --build_eeprom command because of ftdi_eeprom does not support changing of device release number (byte with addr 0x06).
I can suggest simple patch to resolve this issue: ---------------------- >From 39fcaf16858f0966e336d1ff5eaf84d1a9da03d9 Mon Sep 17 00:00:00 2001 From: Roman Lapin <[email protected]> Date: Sat, 9 May 2020 22:30:30 +0300 Subject: [PATCH] Add release_number config support to ftdi_eeprom --- ftdi_eeprom/main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ftdi_eeprom/main.c b/ftdi_eeprom/main.c index d72f61c..0c7ac7b 100644 --- a/ftdi_eeprom/main.c +++ b/ftdi_eeprom/main.c @@ -223,6 +223,7 @@ int main(int argc, char *argv[]) { CFG_INT("vendor_id", 0, 0), CFG_INT("product_id", 0, 0), + CFG_INT("release_number", 0, 0), CFG_BOOL("self_powered", cfg_true, 0), CFG_BOOL("remote_wakeup", cfg_true, 0), CFG_BOOL("in_is_isochronous", cfg_false, 0), @@ -459,6 +460,8 @@ int main(int argc, char *argv[]) eeprom_set_value(ftdi, VENDOR_ID, cfg_getint(cfg, "vendor_id")); eeprom_set_value(ftdi, PRODUCT_ID, cfg_getint(cfg, "product_id")); + eeprom_set_value(ftdi, RELEASE_NUMBER, cfg_getint(cfg, "release_number")); + eeprom_set_value(ftdi, SELF_POWERED, cfg_getbool(cfg, "self_powered")); eeprom_set_value(ftdi, REMOTE_WAKEUP, cfg_getbool(cfg, "remote_wakeup")); eeprom_set_value(ftdi, MAX_POWER, cfg_getint(cfg, "max_power")); -- 2.26.2 ---------------------- With best regards, Roman. -- libftdi - see http://www.intra2net.com/en/developer/libftdi for details. To unsubscribe send a mail to [email protected]
