> -----Original Message-----
> From: Marek Vasut <ma...@denx.de>
> Sent: Wednesday, 21 June, 2023 10:19 PM
> To: Lim, Jit Loon <jit.loon....@intel.com>; u-boot@lists.denx.de
> Cc: Jagan Teki <ja...@amarulasolutions.com>; Simon
> <simon.k.r.goldschm...@gmail.com>; Chee, Tien Fong
> <tien.fong.c...@intel.com>; Hea, Kok Kiang <kok.kiang....@intel.com>;
> Lokanathan, Raaj <raaj.lokanat...@intel.com>; Maniyam, Dinesh
> <dinesh.mani...@intel.com>; Ng, Boon Khai <boon.khai...@intel.com>;
> Yuslaimi, Alif Zakuan <alif.zakuan.yusla...@intel.com>; Chong, Teik Heng
> <teik.heng.ch...@intel.com>; Zamri, Muhammad Hazim Izzat
> <muhammad.hazim.izzat.za...@intel.com>; Tang, Sieu Mun
> <sieu.mun.t...@intel.com>; Bin Meng <bmeng...@gmail.com>
> Subject: Re: [PATCH v1] HSD #18028953892: usb: xhci-dwc3: Fix USB3.1
> controller register access in reset state
> 
> On 6/21/23 16:11, Jit Loon Lim wrote:
> > From: Teik Heng Chong <teik.heng.ch...@intel.com>
> >
> > The controller registers should not be accessed while the controller's
> > vcc_reset_n is asserted.
> >
> > Signed-off-by: Teik Heng Chong <teik.heng.ch...@intel.com>
> 
> Is this patch ported from Linux or is this custom development ?
> 
> Is there a matching patch/fix in Linux already ?

In xhci_dwc3_probe(), the program sequence is
vcc reset -> clk init -> phy setup -> xhci_register
therefore, when xhci_dwc3_remove is called, the proper usb stop sequence should 
be
xhci_register _> phy setup -> clk init -> vcc reset

if we look at linux driver  
https://elixir.bootlin.com/linux/latest/source/drivers/usb/dwc3/dwc3-of-simple.c#L33

dwc3_of_simple_probe: The sequence is reset -> clock
__dwc3_of_simple_teardown: Then, clock -> reset

So based on the above, we have made changes and the uboot fix is now aligned 
with linux driver.

Reply via email to