We're hiring!
*

USB 3.0 preliminary support in U-boot for Radxa Rock-5B

Eugen Hristev avatar

Eugen Hristev
May 31, 2023

Share this post:

Reading time:

A while back I presented USB 2.0 host support that was added to U-boot for the Radxa Rock-5B RK3588 Rockchip board. This time USB 3.0 was added with support for the host and gadget!

In the photo, the number #8 indicator shows you where the USB 3.0 host ports are located. The bottom port (near the PCB) works only in 3.0 mode. One can connect a mass storage memory stick here, or an Ethernet dongle for example.

Hardware description of the Radxa Rock-5B board.
Source: https://wiki.radxa.com/Rock5/hardware/5b


Number #3, indicated by USB Power, is also used for gadget mode: with this connection, a host laptop, for example, can see the board as a gadget, and with this, plenty of things can happen: it can be used as a mass storage stick for example, or one can use the rockchip rkdeveloptool to reflash media on the board.

At the moment it should be noted that only one orientation works if a type C to type C cable is used.

The inner workings of the USB 3.0 are as follows: there is the DesignWare Core Dual Role Device (DRD) which can work both in host and gadget mode, and both in USB 2.0 and USB 3.0 modes. There are two different PHYs connected to the controller. One is the same that is used for the USB 2.0 host controller (the Inno phy) and the new one is the USB 3.0 USBDP PHY (combo with DisplayPort Alt mode). All these tied together offer the flexibility to connect different devices and different cables to the Rock-5B board.

And because U-boot is open source, everyone can review the patches, test, or even contribute!

Comments (2)

  1. Cole:
    Jun 16, 2023 at 11:35 PM

    Hi! I have been following this work and have done questions:

    1. How is NVME support going both in kernel and u-boot?

    2. How did it come to be that Collabora is doing this work? I'm looking at my pile of SBCs wishing they all had this transparent upstream work being done.

    3. That's it. But thank you. Collabora works on such cool stuff in the Linux ecosystem!

    Reply to this comment

    Reply to this comment

    1. Eugen:
      Jun 19, 2023 at 03:00 PM

      Hi !

      Currently we are not working on NVME , at least at bootloader level, but definitely we can do it if you are interested !
      I am happy that you are fond of our work !

      Eugen

      Reply to this comment

      Reply to this comment


Add a Comment






Allowed tags: <b><i><br>Add a new comment:


Search the newsroom

Latest Blog Posts

PipeWire workshop 2025: Updates on video transport, Rust efforts, TSN networking, and Bluetooth support

03/07/2025

As part of the activities Embedded Recipes in Nice, France, Collabora hosted a PipeWire workshop/hackfest, an opportunity for attendees…

Coccinelle for Rust progress report

25/06/2025

In collaboration with Inria, the French Institute for Research in Computer Science and Automation, Tathagata Roy shares the progress made…

Linux Media Summit 2025 recap

23/06/2025

Last month in Nice, active media developers came together for the annual Linux Media Summit to exchange insights and tackle ongoing challenges…

Constructor acquires, destructor releases

09/06/2025

In this final article based on Matt Godbolt's talk on making APIs easy to use and hard to misuse, I will discuss locking, an area where…

What if C++ had decades to learn?

21/05/2025

In this second article of a three-part series, I look at how Matt Godbolt uses modern C++ features to try to protect against misusing an…

Unleashing gst-python-ml: Python-powered ML analytics for GStreamer pipelines

12/05/2025

Powerful video analytics pipelines are easy to make when you're well-equipped. Combining GStreamer and Machine Learning frameworks are the…

Open Since 2005 logo

Our website only uses a strictly necessary session cookie provided by our CMS system. To find out more please follow this link.

Collabora Limited © 2005-2025. All rights reserved. Privacy Notice. Sitemap.