On 08/26/2016 01:21 PM, Sriram Dash wrote: >> From: Marek Vasut [mailto:ma...@denx.de] >> On 08/26/2016 12:57 PM, Sriram Dash wrote: >>>> From: Marek Vasut [mailto:ma...@denx.de] On 08/26/2016 12:31 PM, >>>> Sriram Dash wrote: >>>>>> From: Marek Vasut [mailto:ma...@denx.de] On 08/25/2016 08:47 AM, >>>>>> Sriram Dash wrote: >>>>>>>> From: Marek Vasut [mailto:ma...@denx.de] On 08/24/2016 12:39 PM, >>>>>>>> Sriram Dash wrote: >>>>>>>>> Currently the controller by default enables the Receive Detect >>>>>>>>> feature in P3 mode in USB 3.0 PHY. However, USB 3.0 PHY does not >>>>>>>>> reliably support receive detection in P3 mode. >>>>>>>>> Enabling the USB3 controller to configure USB in P2 mode >>>>>>>>> whenever the Receive Detect feature is required. >>>>>>>>> >>>>>>>>> Signed-off-by: Sriram Dash <sriram.d...@nxp.com> >>>>>>>>> Signed-off-by: Rajesh Bhagat <rajesh.bha...@nxp.com> >>>>>>>>> --- >>>>>>>>> Changes in v2: >>>>>>>>> - Do Soc ver checking for applying erratum >>>>>>>>> >>>>>>>>> drivers/usb/common/fsl-errata.c | 26 ++++++++++++++++++++++++++ >>>>>>>>> drivers/usb/host/xhci-dwc3.c | 5 +++++ >>>>>>>>> drivers/usb/host/xhci-fsl.c | 8 ++++++++ >>>>>>>>> include/fsl_usb.h | 1 + >>>>>>>>> include/linux/usb/dwc3.h | 2 ++ >>>>>>>>> 5 files changed, 42 insertions(+) >>>>>>>>> >>>>>>>>> diff --git a/drivers/usb/common/fsl-errata.c >>>>>>>>> b/drivers/usb/common/fsl-errata.c index 183bf2b..f2bffba 100644 >>>>>>>>> --- a/drivers/usb/common/fsl-errata.c >>>>>>>>> +++ b/drivers/usb/common/fsl-errata.c >>>>>>>>> @@ -190,4 +190,30 @@ bool has_erratum_a008751(void) >>>>>>>>> return false; >>>>>>>>> } >>>>>>>>> >>>>>>>>> +bool has_erratum_a010151(void) >>>>>>>>> +{ >>>>>>>>> + u32 svr = get_svr(); >>>>>>>>> + u32 soc = SVR_SOC_VER(svr); >>>>>>>>> + >>>>>>>>> + switch (soc) { >>>>>>>>> +#ifdef CONFIG_ARM64 >>>>>>>>> + case SVR_LS2080A: >>>>>>>>> + case SVR_LS2085A: >>>>>>>>> + case SVR_LS1046A: >>>>>>>>> + case SVR_LS1012A: >>>>>>>>> + return IS_SVR_REV(svr, 1, 0); >>>>>>>>> + case SVR_LS1043A: >>>>>>>>> + return IS_SVR_REV(svr, 1, 0) || IS_SVR_REV(svr, 1, 1); >> #endif >>>>>>>>> +#ifdef CONFIG_LS102XA >>>>>>>>> + case SOC_VER_LS1020: >>>>>>>>> + case SOC_VER_LS1021: >>>>>>>>> + case SOC_VER_LS1022: >>>>>>>>> + case SOC_VER_SLS1020: >>>>>>>>> + return IS_SVR_REV(svr, 2, 0); #endif >>>>>>>>> + } >>>>>>>> >>>>>>>> Is the ifdef really needed ? >>>>>>>> >>>>>>> >>>>>>> Yes. The SVR (SVR_LS2080A, SOC_VER_LS1020) are defined in >>>>>>> different ARCH specific files. So, we have used the ifdefs. >>>>>> >>>>>> Or you can just include all of the headers and then you don't need the >>>>>> ifdef, no >> ? >>>>>> >>>>> >>>>> The headers for the respective ARCHs are included in fsl_errata.h >>>>> file. But, there are some macros/structs/variables which are common >>>>> across the ARCHs, for example: DCFG_DCSR_PORCR1, >>>>> RCW_SB_EN_REG_INDEX, sys_info, etc. So, they are also kept inside the >>>>> ifdefs. >>>> >>>> I don't understand your argument. What happens if you remove the ifdefs? >>>> >>> >>> The fsl_errata.h file includes the headers asm/processor.h(for PPC), >>> asm/arch-ls102xa/immap_ls102xa.h( for LS1), asm/arch/soc.h(for Layerscape). >>> As some macros/structs are common across the ARCH, if we remove the >>> ifdefs, we may >> >> may or will ? >> > > They will cause compilation issues.
I see. >>> experience compilation error on redefinition of the macros and structs. >> >> And these are not easy to fix ? >> > > There will be many ARCH specific modifications required for carrying > out the changes involving a lot of affected Socs. We will take it up in > the near future. Right. >>> So, the ifdefs are necessary. >>> >>>> -- >>>> Best regards, >>>> Marek Vasut >> >> >> -- >> Best regards, >> Marek Vasut -- Best regards, Marek Vasut _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot