public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 01/14] armv7: Add workaround for USB erratum A-009008
@ 2017-05-16 12:16 yinbo.zhu
  2017-05-16 12:16 ` [U-Boot] [PATCH] uboot: Kconfig: add ERRATUM config to Kconfig for solve compile issue yinbo.zhu
                   ` (14 more replies)
  0 siblings, 15 replies; 32+ messages in thread
From: yinbo.zhu @ 2017-05-16 12:16 UTC (permalink / raw)
  To: u-boot

From: Suresh Gupta <suresh.gupta@freescale.com>

USB High Speed (HS) EYE Height Adjustment
This patch is adding the erratum for LS1021.

Signed-off-by: Sriram Dash <sriram.dash@nxp.com>
Signed-off-by: yinbo.zhu <yinbo.zhu@nxp.com>
---
 arch/arm/cpu/armv7/ls102xa/Kconfig                |  2 ++
 arch/arm/cpu/armv7/ls102xa/soc.c                  | 12 ++++++++++++
 arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h |  4 ++++
 3 files changed, 18 insertions(+)

diff --git a/arch/arm/cpu/armv7/ls102xa/Kconfig b/arch/arm/cpu/armv7/ls102xa/Kconfig
index b61f3cd..df539e9 100644
--- a/arch/arm/cpu/armv7/ls102xa/Kconfig
+++ b/arch/arm/cpu/armv7/ls102xa/Kconfig
@@ -14,6 +14,8 @@ config ARCH_LS1021A
 	select SYS_FSL_HAS_SEC
 	select SYS_FSL_SEC_COMPAT_5
 	select SYS_FSL_SEC_LE
+	select SYS_FSL_ERRATUM_A009008
+	select SYS_FSL_ERRATUM_A009942
 
 menu "LS102xA architecture"
 	depends on ARCH_LS1021A
diff --git a/arch/arm/cpu/armv7/ls102xa/soc.c b/arch/arm/cpu/armv7/ls102xa/soc.c
index 52fb6f8..c54daee 100644
--- a/arch/arm/cpu/armv7/ls102xa/soc.c
+++ b/arch/arm/cpu/armv7/ls102xa/soc.c
@@ -60,6 +60,16 @@ unsigned int get_soc_major_rev(void)
 	return major;
 }
 
+static void erratum_a009008(void)
+{
+#ifdef CONFIG_SYS_FSL_ERRATUM_A009008
+	u32 __iomem *scfg = (u32 __iomem *)SCFG_BASE;
+	u32 val = in_be32(scfg + SCFG_USB3PRM1CR / 4);
+	val &= ~(0xF << 6);
+	out_be32(scfg + SCFG_USB3PRM1CR / 4, val|(USB_TXVREFTUNE << 6));
+#endif /* CONFIG_SYS_FSL_ERRATUM_A009008 */
+}
+
 void s_init(void)
 {
 }
@@ -146,6 +156,8 @@ int arch_soc_init(void)
 	 */
 	out_be32(&scfg->eddrtqcfg, 0x63b20042);
 
+	/* Erratum */
+	erratum_a009008();
 	return 0;
 }
 
diff --git a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
index c34fd63..f474cfd 100644
--- a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
+++ b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
@@ -172,6 +172,10 @@ struct ccsr_gur {
 #define SCFG_PMCINTECR_ETSECERRG0	0x00080000
 #define SCFG_PMCINTECR_ETSECERRG1	0x00040000
 #define SCFG_CLUSTERPMCR_WFIL2EN	0x80000000
+#define SCFG_BASE                       0x01570000
+#define SCFG_USB3PRM1CR                 0x070
+#define USB_TXVREFTUNE                  0x9
+
 
 /* Supplemental Configuration Unit */
 struct ccsr_scfg {
-- 
2.1.0.27.g96db324

^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [U-Boot] [PATCH 01/14] armv7: Add workaround for USB erratum A-009008
@ 2017-05-17 11:06 yinbo.zhu
  2017-05-17 11:06 ` [U-Boot] [PATCH 09/14] usb: ums: support multiple controllers using controller_index yinbo.zhu
  0 siblings, 1 reply; 32+ messages in thread
From: yinbo.zhu @ 2017-05-17 11:06 UTC (permalink / raw)
  To: u-boot

From: Suresh Gupta <suresh.gupta@freescale.com>

USB High Speed (HS) EYE Height Adjustment
This patch is adding the erratum for LS1021.

Signed-off-by: Sriram Dash <sriram.dash@nxp.com>
Signed-off-by: yinbo.zhu <yinbo.zhu@nxp.com>
---
 arch/arm/cpu/armv7/ls102xa/Kconfig                |  2 ++
 arch/arm/cpu/armv7/ls102xa/soc.c                  | 12 ++++++++++++
 arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h |  4 ++++
 3 files changed, 18 insertions(+)

diff --git a/arch/arm/cpu/armv7/ls102xa/Kconfig b/arch/arm/cpu/armv7/ls102xa/Kconfig
index b61f3cd..df539e9 100644
--- a/arch/arm/cpu/armv7/ls102xa/Kconfig
+++ b/arch/arm/cpu/armv7/ls102xa/Kconfig
@@ -14,6 +14,8 @@ config ARCH_LS1021A
 	select SYS_FSL_HAS_SEC
 	select SYS_FSL_SEC_COMPAT_5
 	select SYS_FSL_SEC_LE
+	select SYS_FSL_ERRATUM_A009008
+	select SYS_FSL_ERRATUM_A009942
 
 menu "LS102xA architecture"
 	depends on ARCH_LS1021A
diff --git a/arch/arm/cpu/armv7/ls102xa/soc.c b/arch/arm/cpu/armv7/ls102xa/soc.c
index 52fb6f8..c54daee 100644
--- a/arch/arm/cpu/armv7/ls102xa/soc.c
+++ b/arch/arm/cpu/armv7/ls102xa/soc.c
@@ -60,6 +60,16 @@ unsigned int get_soc_major_rev(void)
 	return major;
 }
 
+static void erratum_a009008(void)
+{
+#ifdef CONFIG_SYS_FSL_ERRATUM_A009008
+	u32 __iomem *scfg = (u32 __iomem *)SCFG_BASE;
+	u32 val = in_be32(scfg + SCFG_USB3PRM1CR / 4);
+	val &= ~(0xF << 6);
+	out_be32(scfg + SCFG_USB3PRM1CR / 4, val|(USB_TXVREFTUNE << 6));
+#endif /* CONFIG_SYS_FSL_ERRATUM_A009008 */
+}
+
 void s_init(void)
 {
 }
@@ -146,6 +156,8 @@ int arch_soc_init(void)
 	 */
 	out_be32(&scfg->eddrtqcfg, 0x63b20042);
 
+	/* Erratum */
+	erratum_a009008();
 	return 0;
 }
 
diff --git a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
index c34fd63..f474cfd 100644
--- a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
+++ b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
@@ -172,6 +172,10 @@ struct ccsr_gur {
 #define SCFG_PMCINTECR_ETSECERRG0	0x00080000
 #define SCFG_PMCINTECR_ETSECERRG1	0x00040000
 #define SCFG_CLUSTERPMCR_WFIL2EN	0x80000000
+#define SCFG_BASE                       0x01570000
+#define SCFG_USB3PRM1CR                 0x070
+#define USB_TXVREFTUNE                  0x9
+
 
 /* Supplemental Configuration Unit */
 struct ccsr_scfg {
-- 
2.1.0.27.g96db324

^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [U-Boot] [PATCH 01/14] armv7: Add workaround for USB erratum A-009008
@ 2017-05-17 12:04 yinbo.zhu
  2017-05-17 12:05 ` [U-Boot] [PATCH 09/14] usb: ums: support multiple controllers using controller_index yinbo.zhu
  0 siblings, 1 reply; 32+ messages in thread
From: yinbo.zhu @ 2017-05-17 12:04 UTC (permalink / raw)
  To: u-boot

From: Suresh Gupta <suresh.gupta@freescale.com>

USB High Speed (HS) EYE Height Adjustment
This patch is adding the erratum for LS1021.

Signed-off-by: Sriram Dash <sriram.dash@nxp.com>
Signed-off-by: yinbo.zhu <yinbo.zhu@nxp.com>
---
 arch/arm/cpu/armv7/ls102xa/Kconfig                |  2 ++
 arch/arm/cpu/armv7/ls102xa/soc.c                  | 12 ++++++++++++
 arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h |  4 ++++
 3 files changed, 18 insertions(+)

diff --git a/arch/arm/cpu/armv7/ls102xa/Kconfig b/arch/arm/cpu/armv7/ls102xa/Kconfig
index b61f3cd..df539e9 100644
--- a/arch/arm/cpu/armv7/ls102xa/Kconfig
+++ b/arch/arm/cpu/armv7/ls102xa/Kconfig
@@ -14,6 +14,8 @@ config ARCH_LS1021A
 	select SYS_FSL_HAS_SEC
 	select SYS_FSL_SEC_COMPAT_5
 	select SYS_FSL_SEC_LE
+	select SYS_FSL_ERRATUM_A009008
+	select SYS_FSL_ERRATUM_A009942
 
 menu "LS102xA architecture"
 	depends on ARCH_LS1021A
diff --git a/arch/arm/cpu/armv7/ls102xa/soc.c b/arch/arm/cpu/armv7/ls102xa/soc.c
index 52fb6f8..c54daee 100644
--- a/arch/arm/cpu/armv7/ls102xa/soc.c
+++ b/arch/arm/cpu/armv7/ls102xa/soc.c
@@ -60,6 +60,16 @@ unsigned int get_soc_major_rev(void)
 	return major;
 }
 
+static void erratum_a009008(void)
+{
+#ifdef CONFIG_SYS_FSL_ERRATUM_A009008
+	u32 __iomem *scfg = (u32 __iomem *)SCFG_BASE;
+	u32 val = in_be32(scfg + SCFG_USB3PRM1CR / 4);
+	val &= ~(0xF << 6);
+	out_be32(scfg + SCFG_USB3PRM1CR / 4, val|(USB_TXVREFTUNE << 6));
+#endif /* CONFIG_SYS_FSL_ERRATUM_A009008 */
+}
+
 void s_init(void)
 {
 }
@@ -146,6 +156,8 @@ int arch_soc_init(void)
 	 */
 	out_be32(&scfg->eddrtqcfg, 0x63b20042);
 
+	/* Erratum */
+	erratum_a009008();
 	return 0;
 }
 
diff --git a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
index c34fd63..f474cfd 100644
--- a/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
+++ b/arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h
@@ -172,6 +172,10 @@ struct ccsr_gur {
 #define SCFG_PMCINTECR_ETSECERRG0	0x00080000
 #define SCFG_PMCINTECR_ETSECERRG1	0x00040000
 #define SCFG_CLUSTERPMCR_WFIL2EN	0x80000000
+#define SCFG_BASE                       0x01570000
+#define SCFG_USB3PRM1CR                 0x070
+#define USB_TXVREFTUNE                  0x9
+
 
 /* Supplemental Configuration Unit */
 struct ccsr_scfg {
-- 
2.1.0.27.g96db324

^ permalink raw reply related	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2017-05-18  9:20 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-16 12:16 [U-Boot] [PATCH 01/14] armv7: Add workaround for USB erratum A-009008 yinbo.zhu
2017-05-16 12:16 ` [U-Boot] [PATCH] uboot: Kconfig: add ERRATUM config to Kconfig for solve compile issue yinbo.zhu
2017-05-16 12:16 ` [U-Boot] [PATCH 02/14] armv7: Add workaround for USB erratum A-009798 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 03/14] armv7: Add workaround for USB erratum A-008997 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 04/14] armv7: Add workaround for USB erratum A-009007 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 05/14] armv8: Add workaround for USB erratum A-009798 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 06/14] armv8: Add workaround for USB erratum A-008997 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 07/14] armv8: Add workaround for USB erratum A-009007 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 08/14] usb: dwc3: Add helper functions to enable snooping and burst settings yinbo.zhu
2017-05-16 19:32   ` Tom Rini
2017-05-18  9:20     ` Marek Vasut
2017-05-16 12:16 ` [U-Boot] [PATCH 09/14] usb: ums: support multiple controllers using controller_index yinbo.zhu
2017-05-16 19:31   ` Tom Rini
2017-05-16 21:00     ` Lukasz Majewski
2017-05-16 21:07       ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 10/14] config: ls1012aqds: Add USB EHCI support for ls1012aqds yinbo.zhu
2017-05-16 12:16 ` [U-Boot] [PATCH 11/14] armv8: Add workaround for USB erratum A-009008 yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 12/14] armv8/fsl-layerscape: add dwc3 gadget driver support yinbo.zhu
2017-05-16 19:33   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 13/14] drivers:usb:xhci:fsl: Implement Erratum A-010151 for FSL USB3 controller yinbo.zhu
2017-05-16 19:30   ` Tom Rini
2017-05-16 12:16 ` [U-Boot] [PATCH 14/14] uboot: Kconfig: add ERRATUM config to Kconfig for solve compile issue yinbo.zhu
2017-05-16 19:33 ` [U-Boot] [PATCH 01/14] armv7: Add workaround for USB erratum A-009008 Tom Rini
  -- strict thread matches above, loose matches on Subject: below --
2017-05-17 11:06 yinbo.zhu
2017-05-17 11:06 ` [U-Boot] [PATCH 09/14] usb: ums: support multiple controllers using controller_index yinbo.zhu
2017-05-17 12:04 [U-Boot] [PATCH 01/14] armv7: Add workaround for USB erratum A-009008 yinbo.zhu
2017-05-17 12:05 ` [U-Boot] [PATCH 09/14] usb: ums: support multiple controllers using controller_index yinbo.zhu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox