
- RENESAS USB 3.0 DRIVER UPDATE INSTALL
- RENESAS USB 3.0 DRIVER UPDATE UPDATE
- RENESAS USB 3.0 DRIVER UPDATE PATCH
- RENESAS USB 3.0 DRIVER UPDATE CODE
This code, whose unknown author I would like to thank a lot, turned out to be a good starting point.
RENESAS USB 3.0 DRIVER UPDATE CODE
Furthermore, some source code posted in the comments section claimed to implement the EEPROM read and write procedures outlined in the datasheet.

What if this could be done with Linux, too? During my research, I already stumbled upon a blog post discussing the possibility to interface with the chipset using “setpci”. More interestingly, uploaded firmware takes precedence over the firmware stored in the EEPROM. The firmware upload functionality works independently from the firmware EEPROM, according to the chipset datasheet. Either the Windows driver does some magic to initalize the card, or the card is not really equipped with an EEPROM and needs to get a firmware upload at boot time? … and working solutions quirks The card stops to work with Linux after the power supply is removed. Pretty much hassle to be able to use a extension card … but at least, it works now? Well, not exactly.
RENESAS USB 3.0 DRIVER UPDATE INSTALL
In the end, I grabbed an old harddisk and installed Windows on it to be able to install the firmware which was kindly shipped with the driver disk. Sadly, I was unable to find any working tool which would enable me to upload the firmware into the EEPROM for Linux, even though the process itself is documented quite well in the datasheet of the chipset.
RENESAS USB 3.0 DRIVER UPDATE UPDATE
So my first take was to update the firmware of the chipset. The “External ROM Access Control and Status Register” suggests that my card is equipped with EEPROM, since the “External ROM Exists” bit is set (in fact, it is the only bit set after setpci -s 02:00.0 f6.w So the question is: With which kind of extension card am I dealing with? The datasheet of the uPD720202 chipset provides information about some useful registers. Long story short: My card simply did nothing but pause the boot process for about 30 seconds until the driver gave up, complaining about being unable to setup the card and quitting with exit code -110:įeb 5 19:43:18 atom kernel: xhci_hcd 0000:02:00.0: can’t setup: -110įeb 5 19:43:18 atom kernel: xhci_hcd 0000:02:00.0: USB bus 6 deregisteredįeb 5 19:43:18 atom kernel: xhci_hcd 0000:02:00.0: init 0000:02:00.0 fail, -110įeb 5 19:43:18 atom kernel: xhci_hcd: probe of 0000:02:00.0 failed with error -110 Dead ends … They are either shipped with no firmware at all, or at least with outdated firmware. Apparently, at least some of the cards equipped with an EEPROM do initially not function properly with Linux, and maybe even with Windows.
RENESAS USB 3.0 DRIVER UPDATE PATCH
But apparently, this patch never made it into the kernel and I have not found the firmware image in the linux-firmware repository. For the first case, there exists a patch for the Linux kernel driver for this chipset to support uploading the firmware image at boot time. Its open to the vendor to choose one of these options.

It must be either uploaded by the driver during initialization, or can be stored on an external EEPROM. The uPD720202 chipset requires additional firmware to operate.

This post is about the difficulties I experienced when trying to use such an extension card with Linux, and a tool to upload required firmware to the chipset. This may also apply to other Renesas USB chipsets as well. USB 3.0 extension cards based on Renesas uPD720202 chipset appear to be somewhat problematic when Linux is used as operating system.
