STM32G0B1 USB clocking
I am working with am STM32G0B1CB for USB communications, using Zephyr as my OS. I am trying to have multiple CDC ACM serial ports, so that they will show up as /dev/ttyACM0, /dev/ttyACM1... on Linux. Everything seems to work fine if I have only one CDC ACM port, but once I add in another CDC ACM my device is no longer recognized by Linux. Specifically it will fail with the following:
36474.549454] usb 1-2: new full-speed USB device number 10 using xhci_hcd
[36474.702429] usb 1-2: config 1 interface 1 altsetting 0 endpoint 0x82 has invalid maxpacket 512, setting to 64
[36474.702434] usb 1-2: config 1 interface 1 altsetting 0 endpoint 0x1 has invalid maxpacket 512, setting to 64
[36474.702437] usb 1-2: config 1 interface 3 altsetting 0 endpoint 0x84 has invalid maxpacket 512, setting to 64
[36474.702439] usb 1-2: config 1 interface 3 altsetting 0 endpoint 0x2 has invalid maxpacket 512, setting to 64
[36474.702980] usb 1-2: New USB device found, idVendor=2fe3, idProduct=0100, bcdDevice= 3.07
[36474.702983] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[36474.702984] usb 1-2: Product: LCC Link
[36474.702986] usb 1-2: Manufacturer: Snowball Creek
[36474.702987] usb 1-2: SerialNumber: 30325019003E001F
[36474.706171] usb 1-2: can't set config #1, error -32
[36476.405647] usb 1-2: reset full-speed USB device number 10 using xhci_hcd
[36476.761759] usb 1-2: reset full-speed USB device number 10 using xhci_hcd
My device does enumerate properly in my virtual machine where I do my development work(VMWare), so I do see two ttyACM devices.
I believe that my problem has to do with the main clock. I have configured my clocks to be the following(USB is set to use PLLQ, not HSI48):

Even though the PLLQ is set to 48MHZ the setup does not finish correctly. Could this be due to the relatively slow clock(8MHZ)? If so, is there a better frequency to use for the external oscillator in order to provide good USB communication?
