[U-Boot] [PATCH] fsl/usb: Workaround for USB erratum-A005275

Ran Wang ran.wang_1 at nxp.com
Thu Oct 11 07:48:50 UTC 2018


Hi Chris,

> On Friday, October 05, 2018 11:53 Chris Packham <judge.packham at gmail.com> wrote:
> 
> On Thu, Oct 4, 2018 at 8:04 PM Marek Vasut <marex at denx.de> wrote:
> >
> > On 10/04/2018 08:38 AM, Chris Packham wrote:
> > > On Thu, Oct 4, 2018 at 11:17 AM Marek Vasut <marex at denx.de> wrote:
> > >>
> > >> On 10/03/2018 10:21 PM, Chris Packham wrote:
> > >>> Workaround makes FS as default mode on all affected socs.
> > >>>
> > >>> Add support to check erratum-A005275 validity for an soc. This
> > >>> info is required to determine whether a given soc is affected by this
> erratum.
> > >>> Add quirk for this erratum "has_fsl_erratum_a005275" . This quirk
> > >>> is used to enable workaround for the errata
> > >>>
> > >>> Force FS mode as default by:
> > >>>         - making EPS as FS
> > >>>         - setting PFSC bit to disable HS chirping
> > >>>
> > >>> This workaround can be disabled by mentioning
> "no_erratum_a005275"
> > >>> in hwconfig string
> > >>>
> > >>> Signed-off-by: Chris Packham <judge.packham at gmail.com>
> > >> [...]
> > >>
> > >>> diff --git a/drivers/usb/host/ehci-fsl.c
> > >>> b/drivers/usb/host/ehci-fsl.c index a04f6a31c8e4..71e4ded53100
> > >>> 100644
> > >>> --- a/drivers/usb/host/ehci-fsl.c
> > >>> +++ b/drivers/usb/host/ehci-fsl.c
> > >>> @@ -93,6 +93,7 @@ static int ehci_fsl_probe(struct udevice *dev)
> > >>>       struct usb_ehci *ehci = NULL;
> > >>>       struct ehci_hccr *hccr;
> > >>>       struct ehci_hcor *hcor;
> > >>> +     struct ehci_ctrl *echi_ctrl = &priv->echi;
> > >>
> > >> Was this ever even compile-tested ? See echi_ctrl vs ehci_ctrl below ...
> > >>
> > >
> > > I must confess no. The only targets that use this with DM_USB are
> > > ARMv8 and I didn't have a toolchain for that. I did test P2040RDB. I
> > > will fire the next version through travis-ci to catch dumb errors
> > > like this.
> >
> > You can create a repo on github and enable travis to do CI on your
> > patches every time you push. It has toolchains for all platform
> > supported by U-Boot.
> 
> Thanks I've got travis setup now[1]. But it probably wouldn't help for this
> particular case. I'm struggling to find a target that configures
> CONFIG_USB_EHCI_FSL and CONFIG_DM_USB in master (I think there might
> be some ppc/mpc85xx work in flight). I did manage to enable EHCI_FSL on
> ls1021aqds_nor_defconfig that showed the error which I've fixed in v2.

Maybe you can try T1042D4RDB_defconfig or P2020RDB-PC_defconfig, according
my work log, they will select CONFIG_USB_EHCI_FSL and CONFIG_DM_USB.

Regards,
Ran



More information about the U-Boot mailing list