From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Date: Wed, 20 Jun 2012 10:41:52 -0600 Subject: [U-Boot] [PATCH v3 1/1] tegra: usb: Fix device enumeration problem of USB1 In-Reply-To: <4B9C9637D5087840A465BDCB251780E9E2D6EDA3E5@HKMAIL02.nvidia.com> References: <4B9C9637D5087840A465BDCB251780E9E2D6EDA3E5@HKMAIL02.nvidia.com> Message-ID: <4FE1FD50.1020607@wwwdotorg.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 06/20/2012 03:15 AM, Jim Lin wrote: > A known hardware issue of USB1 port where bit 1 (connect status > change) of PORTSC register will be set after issuing Port Reset > (like "usb reset" in u-boot command line). > This will be treated as an error and stops later device enumeration. > > Therefore we clear that bit after Port Reset in order to proceed > later device enumeration. > > Signed-off-by: Jim Lin Acked-by: Stephen Warren But a couple of nits below, > diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c > +/* > + * A known hardware issue where Connect Status Change bit of PORTSC register > + * of USB1 controller will be set after Port Reset. > + * We have to clear it in order for later device enumeration to proceed. > + */ It might be worth adding a note in that comment saying that this overrides a weak symbol in ehci-hcd.c so that people know where it's called. > +void ehci_powerup_fixup(uint32_t *status_reg, uint32_t *reg) > +{ > + uint32_t my_reg; I would rename this variable just "reg"; the variable doesn't belong to a person, and names with "my" in just make me cringe.