From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Thu, 15 May 2014 00:21:54 +0200 Subject: [U-Boot] [PATCH 1/3] usb: tegra: fix PHY selection code In-Reply-To: <5373A74C.8010308@wwwdotorg.org> References: <1398892197-9288-1-git-send-email-swarren@wwwdotorg.org> <201405020647.35689.marex@denx.de> <5373A74C.8010308@wwwdotorg.org> Message-ID: <201405150021.54232.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Wednesday, May 14, 2014 at 07:26:36 PM, Stephen Warren wrote: > On 05/01/2014 10:47 PM, Marek Vasut wrote: > > On Thursday, May 01, 2014 at 06:56:24 PM, Stephen Warren wrote: > >> On 05/01/2014 04:49 AM, Marek Vasut wrote: > >>> On Wednesday, April 30, 2014 at 11:09:55 PM, Stephen Warren wrote: > >>>> From: Stephen Warren > >>>> > >>>> The TRM for Tegra30 and later all state that USBMODE_CM_HC must be set > >>>> before writing to hostpc1_devlc to select which PHY to use for a USB > >>>> controller. However, neither init_{utmi,ulpi}_usb_controller() do this > >>>> today, so the register writes they perform for PHY selection do not > >>>> work. > >>>> > >>>> For the UTMI case, this was hacked around in commit 7e44d9320ed4 "ARM: > >>>> Tegra: USB: EHCI: Add support for Tegra30/Tegra114" by adding code to > >>>> ehci_hcd_init() which sets USBMODE_CM_HC and duplicates the PHY > >>>> selection register write. This code doesn't cover the ULPI case, so I > >>>> wouldn't be surprised if ULPI doesn't work with the current code, > >>>> unless the ordering requirement only ends up being an issue in HW for > >>>> UTMI not ULPI. > >>>> > >>>> This patch fixes init_{utmi,ulpi}_usb_controller() to correctly set > >>>> USBMODE_CM_HC before selecting the PHY. Now that this works, we can > >>>> remove the duplicate UTMI-specific code in ehci_hcd_init(), thus > >>>> simplifying that function. > >>> > >>> This doesn't apply on u-boot-usb/master , so I cannot pick this, sorry > >>> . Applied, thanks. Best regards, Marek Vasut