[U-Boot] [PATCH v4 3/8] armv8: Add workaround for USB erratum A-008997

York Sun york.sun at nxp.com
Wed Aug 30 18:06:54 UTC 2017


On 08/28/2017 02:33 AM, Ran Wang wrote:
> Low Frequency Periodic Signaling(LFPS) Peak-to-Peak Differential
> Output Voltage Test Compliance fails using default transmitter
> settings
> 
> Change config of transmitter signal swings by setting register
> PCSTXSWINGFULL to 0x47 to pass compliance tests.
> 
> Signed-off-by: Sriram Dash <sriram.dash at nxp.com>
> Signed-off-by: Rajesh Bhagat <rajesh.bhagat at nxp.com>
> Signed-off-by: Suresh Gupta <suresh.gupta at nxp.com>
> Signed-off-by: Ran Wang <ran.wang_1 at nxp.com>
> ---
> Change in v4:
> 	Update commit message about register setting.
> 	Clean up the math in set_usb_pcstxswingfull().
> 	Rename USB_PCSTXSWINGFULL to SCFG_USB_PCSTXSWINGFULL.
> 
> Change in v3:
> 	Use inline function to make code cleaner.
> 	Correct typo of 'CONFIG_ARCH_LS1043A'.
> 
> Change in v2:
> 	In function erratum_a008997():
> 	1.Put a blank line after variable declaration.

<snip>

> +#if defined(CONFIG_ARCH_LS1043A) || defined(CONFIG_ARCH_LS1046A)
> +static inline void set_usb_pcstxswingfull(u32 __iomem *scfg, u32 offset)
> +{
> +	u32 val;
> +
> +	val = scfg_in32(scfg + offset / 4);
> +	val &= ~(0x7F << 9);
> +	val |= (SCFG_USB_PCSTXSWINGFULL << 9);
> +	scfg_out32(scfg + offset / 4, val);
> +}
> +#endif
> +
> +static void erratum_a008997(void)
> +{
> +#ifdef CONFIG_SYS_FSL_ERRATUM_A008997
> +#if defined(CONFIG_ARCH_LS1043A) || defined(CONFIG_ARCH_LS1046A)

I didn't notice this before. Why checking LS1043A or LS1046A? I don't 
see "else" below.

York


More information about the U-Boot mailing list