This is NOT a solution. Rather it is a question. Further this is a follow-on to this USB information
USB technology is advancing. PCs have been advancing, sometimes, in step as USB progresses.
ALL of you know of these physical port changes occurring over the past 2 decades. AND, most of you know that the items we plug into those ports are ALL OVER THE MAP in how they perform.
This question, I am raising, is because I have seen 3 "new" PCs from people who call on me with a myriad of USB ports on a single PC. It is NOT just the connector technology, but also the physical behavior of these ports. The PCs come with USB2 ports as well as USB3 ports and well as USB-C as well as Thunderbolt ports.
And most of us know that there are several physical characteristics of these ports for the upper limit protocol that can be inserted into a system's port. Thus USB flash/drive selection is important should one want to get the maximum benefit a port can deliver. Today, the only way one would know is by "eyeballing": either looking at the port for a descriptor or by looking at the owners manual for diagramed descriptors.
This is already leading to various problems is how units are used by the system and has already been seen in unit performance behavior depending upon which port it is plugged.
Most users are naive to this physical connection issues, naive to unit behavior issues, and naive to a need to thoroughly understand what they should know to ask when purchasing a new PC.
This leads to the following 3 Questions:
Does anyone know of a Linux manner to tell whether a physical port is USB2 vs USB3?
Does anyone know of a Linux manner to tell whether a physical port's protocol is 3.0/3.1/3.2/3.2-2/4.0/thunderbolt?
Does anyone know of a Linux manner to tell if a device plugged into a USB physical port is a USB1/USB2/USB3/USB4 unit?
Any knowledge you can bring to the table is helpful info to all of us.