FreeCalypso > hg > fc-usbser-tools
comparison doc/FTDI-EEPROM-format @ 79:f14d04e4d85d
doc/FTDI-EEPROM-format: document ftdi-chip and eeprom settings
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 26 Sep 2023 02:44:52 +0000 |
parents | 6dc3aa777fd6 |
children | 8b0a01b19fb9 |
comparison
equal
deleted
inserted
replaced
78:d46ea7a3fa0c | 79:f14d04e4d85d |
---|---|
334 Each non-blank, non-comment line defines or tweaks one setting. The following | 334 Each non-blank, non-comment line defines or tweaks one setting. The following |
335 settings are common to all ftee-gen* chip variants: | 335 settings are common to all ftee-gen* chip variants: |
336 | 336 |
337 Setting Format Meaning | 337 Setting Format Meaning |
338 ------------------------------- | 338 ------------------------------- |
339 ftdi-chip keyword Type of FTDI chip this config source was written for | |
340 eeprom keyword EEPROM size selector (not in ftee-gen232r) | |
339 vid hex USB vendor ID | 341 vid hex USB vendor ID |
340 pid hex USB product ID | 342 pid hex USB product ID |
341 manuf string Manufacturer ID string | 343 manuf string Manufacturer ID string |
342 product string Product ID string | 344 product string Product ID string |
343 byte00 hex Raw setting of byte 00 | 345 byte00 hex Raw setting of byte 00 |
386 design, and then a shell pipeline is executed for each board to be programmed. | 388 design, and then a shell pipeline is executed for each board to be programmed. |
387 | 389 |
388 Byte 0A bit 3 is always overridden by the generator tool based on the serial | 390 Byte 0A bit 3 is always overridden by the generator tool based on the serial |
389 number command line argument: set if a serial number is given and cleared if | 391 number command line argument: set if a serial number is given and cleared if |
390 this argument is omitted. | 392 this argument is omitted. |
393 | |
394 FTDI chip type matching | |
395 ----------------------- | |
396 | |
397 The design of FreeCalypso FTDI EEPROM tools calls for mostly manual matching | |
398 between EEPROM config files and generator tools: the operator is responsible | |
399 for selecting the correct tool (ftee-gen2232c, ftee-gen2232h or ftee-gen232r) | |
400 for the actual FTDI chip on the board of interest, and also responsible for | |
401 feeding correct EEPROM config files to this tool. However, now that we are | |
402 starting to give EEPROM programming instructions to end users in the form of | |
403 "please run this shell pipeline", there is a natural desire to reduce potential | |
404 for operator error: if someone takes an EEPROM config file written for one FTDI | |
405 chip and feeds it to an ftee-gen* tool for a different chip, it would be nice | |
406 for this invalid combination to be detected and rejected. | |
407 | |
408 Toward this end, the following optional settings may be included in EEPROM | |
409 config source files: | |
410 | |
411 ftdi-chip FT2232C # config valid only for ftee-gen2232c | |
412 ftdi-chip FT2232D # same as FT2232C | |
413 ftdi-chip FT2232H # config valid only for ftee-gen2232h | |
414 ftdi-chip FT2232x # config valid for ftee-gen2232c and ftee-gen2232h | |
415 ftdi-chip FT232R # config valid only for ftee-gen232r | |
416 | |
417 EEPROM size selection | |
418 --------------------- | |
419 | |
420 In the case of EEPROM generator tools for FTDI chips with external EEPROMs, | |
421 one of the following settings may be included in the config source: | |
422 | |
423 eeprom 93C46 | |
424 eeprom 93C56 | |
425 eeprom 93C66 | |
426 | |
427 If one of these settings is included, the EEPROM size is fixed; if an EEPROM | |
428 size option (-s, -b or -B) is included on the command line, it must match the | |
429 config-set EEPROM size, otherwise the tool bails out with an error. If no | |
430 eeprom setting is included in the config file, then any EEPROM size may be | |
431 selected with command line options, and if no such options are included on the | |
432 command line either, then the final default is 93C46. | |
433 | |
434 Preparing config files for boards | |
435 --------------------------------- | |
436 | |
437 If you have a specific board design with an FTDI chip and are preparing an | |
438 EEPROM config file for your board, our recommendation is to include ftdi-chip | |
439 and eeprom lines in your config file, naming the specific FTDI chip and the | |
440 specific EEPROM size on your board. By doing so, you reduce the possibility | |
441 that someone will misprogram your EEPROM by selecting the wrong generator tool | |
442 or the wrong EEPROM size. | |
443 | |
444 The alternative approach of leaving these settings unspecified or underspecified | |
445 should be used for unfinished EEPROM config templates or examples, or configs | |
446 that can be sensibly loaded into many different boards that may vary in FT2232x | |
447 chip choice and EEPROM size. |