I am looking for information regarding MCIMX6Y1CVM05AB USB_LDO regulator configuration and whether output voltage vs supported data rates limitations exist.
We are configuring the i.MX 6ULL as the host for both USB2.0 ports (1 full / 1 HS). USB_LDO defaults to 2.625V when using 5.10.109 Linux kernel. Boot log pertaining to usb:
imx_usb 2184000.usb: No over current polarity defined
ci_hdrc ci_hdrc.0: EHCI Host Controller
ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1
ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
imx_usb 2184200.usb: No over current polarity defined
Section 39.4 of the uP reference manual states "the output of the regulator can be programmed in 25mV steps, from 2.625 to 3.4V." Please provide additional documentation that states functional limitations, if any, based on output voltage setting.
Schematic snippet is attached.
Regards,
Kevin
Solved! Go to Solution.
Curtis,
Thanks for the detailed and prompt response. Issue resolved.
Kevin
Curtis,
Thanks for the detailed and prompt response. Issue resolved.
Kevin
Hi Kevin,
Thanks for the question and providing a good description of what you are seeking more information on.
As you mentioned the reference manual does not go into additional details on the USB_LDO regulator configuration. I sent your question into the NXP private community and have this response to share:
There is no documentation that states functional limitations based on output voltage setting of the USB_LDO regulator. The output voltage has nothing to do with supported data rates limitations.
Is there some issue with that? If yes, could you try to change the output voltage to 3.0V from 2.625V.
Researching your question, I did find an article that was in the NXP internal only private community: "i.MX6 USB LDO Configuration", covering all i.MX6 families. Here was the post:
i.MX6 USB LDO Configuration
The purpose for the USB_LDO (Regulator 3P0 - PMU_REG_3P0) is to provide the 3.0V power necessary for USB PHY. The current draw on this regulator is very low, even during operation.
Since the expected behavior of the processor is to be able to wake-up out of deep-sleep mode in the event of communications on the USB bus, it was determined to source the power for this regulator from the USB 5V bus (either H1 or OTG), since this bus had to be powered to support USB operations.
This allows the PMIC to provide a minimum power mode to the processor, particularly if the 5V power is being provided by an external host. The tradeoff is that there are many restrictions on this bus.
In sourcing the USB_LDO regulator from the USB 5V bus, provisions had to be made to limit inrush current when the USB 5V bus is first powered on, to meet the requirements of the USB 2.0 specifications. This is the purpose of the current limiting feature of the LDO. This is also why the
default setting of this register is for current limiting and LDO not enabled: To comply with the current inrush requirements of the USB 2.0 specifications. Once the processor has been fully powered on and the USB drivers can take proper control to ensure that the current limitations of the specifications can
be met, the driver will take over the LDO power up functions.
The LDO brownout feature is simply a notification feature that allows the processor to know that an out of specification condition is occurring and that action may be required. The most common case would be due to a USB host disconnect, which will then allow the USB driver (if it desires to use it) to terminate USB operations and place the module in a condition to be ready for a future USB Host connect.
_______________________________________________________________________________________________________________________________
FAQ
_______________________________________________________________________________________________________________________________
Why is the USB regulator “disabled” by default?
Ans >
Q> What’s the intended regulator output in “disabled” state?
Ans >
Q. What’s the intended function/utilization of the Brownout Detection?
Ans >
ENABLE_BO ENABLE_LINREG OK_VDD3P0 BO_VDD3P0
0 0 0 1
0 1 0 1
1 0 0 1
1 1 1 0
Q. Is this the intended behavior of the Regulator Status flag OK_VDD3P0 and the Brownout Status flag BO_VDD3P0?
Ans >
Q. Why is the brownout detection disabled by default? This is different for the other regulators…
Ans >
Q. Why does the Linux BSP keep brownout detection disabled during USB operation?
Ans >
====================
Let me know if you have follow-up and I'll work to get a response or accept as solution.
Thanks,
Curtis
Attn: @kevinbuss