Skip to contentSkip to conversation

drivers : usb: fsl: Implement usb Erratum A007798 workaround

PATCH New Nikhil Badola 2 participants 2 messages Oct 17, 2014 – Nov 25, 2014

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 drivers : usb: fsl: Implement usb Erratum A007798 workaround

Set TXFIFOTHRESH to adjust ddr pipeline delay for successful large usb writes

---
Depends on patch https://patchwork.ozlabs.org/patch/394797/

 arch/powerpc/cpu/mpc85xx/cmd_errata.c     |  4 ++++
 arch/powerpc/include/asm/config_mpc85xx.h |  1 +
 drivers/usb/host/ehci-fsl.c               |  3 +--
 include/fsl_usb.h                         | 11 +++++++++++
 4 files changed, 17 insertions(+), 2 deletions(-)
arch/powerpc/cpu/mpc85xx/cmd_errata.c +4 -0
index 349ce52..fe3eb06 100644
@@ -294,6 +294,10 @@ static int do_errata(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	if (has_erratum_a007075())
 		puts("Work-around for Erratum A007075 enabled\n");
 #endif
+#ifdef CONFIG_SYS_FSL_ERRATUM_A007798
+	if (has_erratum_a007798())
+		puts("Work-around for Erratum A007798 enabled\n");
+#endif
 #ifdef CONFIG_SYS_FSL_ERRATUM_I2C_A004447
 	if ((SVR_SOC_VER(svr) == SVR_8548 && IS_SVR_REV(svr, 3, 1)) ||
 	    (SVR_REV(svr) <= CONFIG_SYS_FSL_A004447_SVR_REV))
arch/powerpc/include/asm/config_mpc85xx.h +1 -0
index 712f2ef..486bc53 100644
@@ -677,6 +677,7 @@
 #define CONFIG_SYS_FSL_ERRATUM_A006379
 #define CONFIG_SYS_FSL_ERRATUM_A007186
 #define CONFIG_SYS_FSL_ERRATUM_A006593
+#define CONFIG_SYS_FSL_ERRATUM_A007798
 #define CONFIG_SYS_CCSRBAR_DEFAULT	0xfe000000
 #define CONFIG_SYS_FSL_SFP_VER_3_0
 #define CONFIG_SYS_FSL_PCI_VER_3_X
drivers/usb/host/ehci-fsl.c +1 -2
index c125e2c..7101202 100644
@@ -131,8 +131,7 @@ int ehci_hcd_init(int index, enum usb_init_type init,
 
 	in_le32(&ehci->usbmode);
 
-	if (SVR_SOC_VER(get_svr()) == SVR_T4240 &&
-	    IS_SVR_REV(get_svr(), 2, 0))
+	if (has_erratum_a007798())
 		set_txfifothresh(ehci, TXFIFOTHRESH);
 
 	return 0;
include/fsl_usb.h +11 -0
index 66f8934..e4902aa 100644
@@ -139,6 +139,12 @@ static inline bool has_erratum_a007075(void)
 	}
 	return false;
 }
+
+static inline bool has_erratum_a007798(void)
+{
+	return SVR_SOC_VER(get_svr()) == SVR_T4240 &&
+		IS_SVR_REV(get_svr(), 2, 0);
+}
 #else
 static inline bool has_erratum_a006261(void)
 {
@@ -150,5 +156,10 @@ static inline bool has_erratum_a007075(void)
 	return false;
 }
 
+static inline bool has_erratum_a007798(void)
+{
+	return false;
+}
+
 #endif
 #endif /*_ASM_FSL_USB_H_ */
Signature · 1 line
1.7.11.7
#1 lore raw

PATCH 1/1 drivers : usb: fsl: Implement usb Erratum A007798 workaround

Quoted 4 lines · Nikhil Badola

Set TXFIFOTHRESH to adjust ddr pipeline delay for successful large usb writes

Quoted 9 lines

---
Depends on patch https://patchwork.ozlabs.org/patch/394797/

 arch/powerpc/cpu/mpc85xx/cmd_errata.c     |  4 ++++
 arch/powerpc/include/asm/config_mpc85xx.h |  1 +
 drivers/usb/host/ehci-fsl.c               |  3 +--
 include/fsl_usb.h                         | 11 +++++++++++
 4 files changed, 17 insertions(+), 2 deletions(-)

Applied to u-boot-fsl-qoriq master. Awaiting upstream. Thanks.

York