The USB-C connector on the LS1028ARDB board appears to work in "High speed" (a.k.a. USB2) mode only. It fails to work in SuperSpeed.
If I attach it to a USB3 port of a desktop PC, there's no link whatsoever. If I attach it to a PC USB2 port, then it sets up a high-speed link as expected.
If I connect a USB3 flash drive, it only registers as a high-speed device. I've tried the cable that came with the board, as well as another (verified to work with other hardware) cable, both fail to operate in SuperSpeed.
If I connect the USB3 flash drive to the other USB controller, the type-A connector port, the device registers as SuperSpeed and performs as expected.
Addition:
If I change
dr_mode = "otg";
into
dr_mode = "host";
for the USB node in the device-tree, the superspeed mode works.
If I change it into
dr_mode = "peripheral";
then the USB-C port doesn't work at all, it doesn't react to anything connecting on the port.
The maximum-speed property has no effect whatsoever (unless I use it to force high-speed).
What does make a difference is what's on the other side apparently. The device won't do superspeed with the USB3 front port of my desktop, but it does work with the port at the back. Guess it has to do with the internal cable that runs from mainboard to the frontpanel of the desktop.
If connected to a USB3 port that it doesn't like, there's no connection whatsoever. Putting any hub in between helps - if the hub is USB2 it will use high-speed. Disabling USB3 mode on such a port also makes it communicate properly at high-speed.
If it "likes" the port, it will work in super-speed regardless of the dr_mode setting ("otg" or "peripheral")