All:
In the C5505 System User's Guide (SPRUGH5A), the process for disabling USB clock and USB on-chip oscillator is as follows:
-----------------------------------------
The clock configuration process for the USB clock domain consists of disabling the USB peripheral clock followed by disabling the USB on-chip oscillator. This procedure will completely shut off USB module, which does not comply with USB suspend/resume protocol.
To set the clock configuration of the USB clock domain to idle follow these steps:
1. Set the SUSPENDM bit in FADDR register. For more information about the SUSPENDM bit, see the TMS320C5515/14/05/04 DSP Universal Serial Bus 2.0 (USB) Controller User's Guide (SPRUGH9).
2. Set the USB clock stop request bit (USBCLKSTREQ) in the CLKSTOP register to request permission to shut off the USB peripheral clock.
3. Wait until the USB acknowledges the clock stop request by polling the USB clock stop acknowledge bit (USBCLKSTPACK) in the CLKSTOP register.
4. Disable the USB peripheral clock by setting USBCG = 1 in the peripheral clock gating control register 2 (PCGCR2).
5. Disable the USB oscillator by setting USBOSCDIS = 1 in the USB system control register (USBSCR).
------------------------------
I am having trouble with step 1 - when I write a value of 0x200 to the Power/FADDR register, I do not see any change in the view of the emulation.
However, steps 2-4 work fine, and I can see the emulation views of those registers change.
Question on step 5 - it looks like USBOSCDIS has already been set to 1, so writing a 1 to this register location has no effect.
------------------
My overall method of disabling USB is as follows:
1. Set up the PLL to the value with which we are running.
2. Set bit in CLKSTOP register to ask for permission to power down USB.
3. When I get an acknowledgement, I then set disable bit in PCGCR2.
4. I set a bit in USBSCR to disable oscillator on USB.
-----------------
Is there a specific way that the Power/Faddr register needs to be accessed?
Do I really need to work with the USBSCR bit for disabling USB oscillator (if it is done by default)?