I just checked the descriptors of WCH-Link with UsbDeviceTreeView because i have some problems with the link.
I am using WCH-Link_APP_IAP_ARM.bin from MRS 1.82. Binary version seems to be 2.60 although it reports 2.06 in bcdDevice field.
There is no usb 2.1 out there link should either report 1.1 (prefered) or 2.0 in bcdUSB field.
Interfaces have to be in increasing order (for 3 interfaces. 0, 1, 2) Link has interface 0,2,3?
IAD descriptor is expecting stready increasing interfaces or may fail on some OS. (Linux?)
UsbStr no 5 does not exist but is reported in the CDC Data Interface?
while its not a functional problem i guess this should be changed to satisfy USB2CV from usb.org.