This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TUSB8044: Using the EEPROM to adjust settings

Part Number: TUSB8044
Other Parts Discussed in Thread: TUSB8040

Hi guys,

My customer is using the TUSB8044 in a design and they are having a hard time with the EEPROM:

We have a current requirement for 4-port Superspeed USB hub, so I am evaluating the TUSB8044 using the TUSB8044RGC evaluation module.  The hub itself seems to work fine, but there are some questions about customizing the configuration using the external EEPROM. 

After some typical hassle with Windows drivers, I've managed to bring up the TUSB8040 EEPROM Programming Utility Version 1.0 and load the external EEPROM with some custom values.  In one test, I loaded a custom serial number for the hub by setting bit 6 (customerSernum) of the Device Configuration Register at offset 05h, setting the serial number length to 20h at offset 22h (serNumStringLen), and putting some unicode numbers in the serial number registers at offsets 30-4Fh.  So far so good.

However, when the new configuration goes into effect, the serial number appears *only* on the USB 2.0 hub, while the USB 3.0 hub remains empty.   There's only one set of serial number registers, as far as I can tell, so I'm wondering if I need to do something else for it to take effect on the Superspeed hub, or is this a bug?  Documentation is sparse, so I'm hoping you can shed some light on this.

I've attached the exported text config file as well as the report from the USB Tree View utility, which shows the missing serial number (iSerialLen = 0) for the Superspeed hub.

Also:

- EEPROM Programming Utility tool sometimes takes a long time to start, is there a newer version that runs better?

- are default configuration files available for the 8044?

-I am having trouble getting the Manufacturer and Product string descriptors to appear at all. Editing the EEPROM image files byte-by-byte is error-prone (not to mention tedious). Does TI have a tool that can generate valid EEPROM files?

TUSB8040 EEPROM DATA serial number test.TXT

Missing Superpseed Serial Number.docx

Thanks guys!

Brian

  • Hi Brian,

    We do not have a EEPROM file generation tool. We only have default EEPROM files, but it looks like they already have that based on the TXT file attached. Which version of the EEPROM Programming Utility are they running?

    To enable Manufacturer and Product strings, they need to set the CustomStrings bit in register 5 and then set the string lengths in register 23h and 24h. It is expected that the serial number will only report on the USB 2.0 side of the hub. USB specification does not allow two devices (USB 2.0 hub and USB 3.0 hub) to report the same serial number, even if they are in a single package.

    Regards,
    JMMN
  • Thanks!

    One last question: Is there a tool to configure features in OTP? The
    TUSB8044 data sheet section 8.3.5 mentions "The TUSB8044 allows device configuration through one time programmable non-volatile memory (OTP).
    The programming of the OTP is supported using vendor-defined USB device requests. For details using the OTP features please contact your TI representative." This may be of interest to us since an external EEPROM would not be required, if the feature list in Table 5 is adequate.

    Also noticed: with bit 6 (customerSernum) set in the Device Configuration Register at offset 05h, but setting the serial number length to 00h at offset 22h (serNumStringLen = 0), the 2.0 and 3.0 hubs enumerate without a serial number as expected, but the HID device reports an error and windows complains. This configuration would potentially be used to suppress the default serial number reporting when customerSernum is cleared.


    Thanks,
    Brian
  • Hi Brian,

    Accept my friend request and I will send you the tool. The OTP function is pretty limited, no strings can be modified.

    Since hubs are required to report a serial number, setting the hub to custom serial number and then setting the length to 0 may cause some issues. Since it isn't a compliant set-up it was not validated.

    Please send me a message when you accept my friend request so I get a notification.

    Thanks,
    JMMN
  • Thanks Julie. Friend request accepted and message sent.

    You can also just email me directly if you wish.

    Regards,
    Brian