[U-Boot] Regarding patch: http://patchwork.ozlabs.org/patch/373593/

Marek Vasut marex at denx.de
Mon Apr 6 17:11:37 CEST 2015


On Monday, April 06, 2015 at 10:58:30 AM, Ramneek Mehresh wrote:

[...]

> > > > The static void fsl_xhci_core_exit(struct fsl_xhci *fsl_xhci) must
> > > > shut down the controller, which I don't see happening. Why?
> > > 
> > > I could not locate any such requirement in IP documentation. Have
> > > contacted local IP/PHY team for the same. Waiting for response from
> > > them
> > 
> > This is needed, so you don't start Linux with a running USB controller.
> 
> xhci controller is already stopped in
> usb_stop->usb_lowlevel_stop->xhci_reset(). I could see CMD_RUN bit getting
> reset in this function before the controller is reset. So, from your
> previously stated requirement, controller is halted when Linux is started.
> 
> Other people are shutting down PHY as part of xhci_core_exit(), not the
> controller!! We would not like to re-start and re-configure PHY inside
> Linux, and take phy initialization inside bootloader. I got word from hw
> team that they do not support phy shutting down from sw. hence, we do not
> have any sequence for current socs to shut down phy from sw. if required,
> I'll put forward a request to provide this control in future socs.

Hi,

Is this similar hardware bug to the one which MX6 PCIe is suffering ? On MX6,
the bug is that you cannot reset the PCIe and PCIe PHY from software, which 
means that if you start PCIe in U-Boot, you cannot reliably use it in Linux. 
Furthermore, if you reset the MX6 via WDT, you cannot start PCIe reliably in 
Linux even if PCIe is not used in U-Boot at all.

Is this the same type of hardware screwup where the design team didn't think 
reset was necessary?

Best regards,
Marek Vasut


More information about the U-Boot mailing list