Today I learned that USB-C alt modes have to be figured out between the device and the host first before the alt-mode can even start. That is, alt modes are not "passive."
-
@PacketMan In the Raspberry Pi's 4 case, it was because they used the wrong design for hooking up the CC pins.
On another note, I should clarify what I mean. I knew for a while the USB-C uses passive methods for configuration like using resistors. What I didn't know is the exact mechanism USB-C uses to figure out which alt-mode to use. USB-C uses the CC pins to say to the USB-C host that they're not entirely a regular USB device and then the device and host has to sort out what exactly it needs to do. This is unlike say M.2's method of telling the computer how to talk to the thing plugged into it. The devices have to be keyed specifically.
Basically what this means is, if you're not plugging in a native USB-C device into a USB-C host and the device does more than USB, the "more" stuff won't work because the device doesn't have the means to tell the USB-C host what you'd expect it to do.