CX3 bootloader is a USB2.0 bootloader. So, if you have selected USB boot (PMODE[2:0]=F11), USB 2.0 lines are required for enumeration.
My CX3 based board will be always booting from SPI flash. In this case, will it work?
In SPI or I2C boot mode, it is fine. The device will enumerate in USB 3.0 mode.
Typically, if there is a USB 3.0 connection failure (due to signal integrity issues) for three times, USB 3.0 terminations will be removed and device falls back to USB 2.0 connection.
If you change the firmware in such a way that it always come up as USB 3.0 and do not fall back to USB 2.0, the device will keep on try to establish USB 3.0 connection.
CyU3PUsbControlUsb2Support() API can be used to disable USB 2.0 operation on FX3. You can refer to section 220.127.116.11 of FX3 API guide (C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\doc\firmware) for details about this API.
I need a help on to force disable USB 3.0 too. To elaborate, what shall I
do to make always CX3 connect as USB 2.0 even if host supports USB 3.0?
Is there any similar command to* CyU3PUsbControlUsb2Support *for this?
If you want to connect the CX3 in USB 2.0 mode, you just pass second parameter of CyU3PConnectState(CyTrue, CyFalse) as CyFalse.
Refer 18.104.22.168 CyU3PConnectState in FX3 APIGuide
With this change, the device comes up in only USB 2.0 even though you connect to USB 3.0 host.
(We assumed that the your USB 3.0 host is backward compatible with USB 2.0 also).