armv8: ls1028a: enable workaround for USB erratum A-008997
[platform/kernel/u-boot.git] / arch / arm / cpu / armv8 / fsl-layerscape / soc.c
index 0092a22..f2392f0 100644 (file)
@@ -126,6 +126,10 @@ static void erratum_a008997(void)
        set_usb_pcstxswingfull(scfg, SCFG_USB3PRM2CR_USB2);
        set_usb_pcstxswingfull(scfg, SCFG_USB3PRM2CR_USB3);
 #endif
+#elif defined(CONFIG_ARCH_LS1028A)
+       clrsetbits_le32(DCSR_BASE +  DCSR_USB_IOCR1,
+                       0x7F << 11,
+                       DCSR_USB_PCSTXSWINGFULL << 11);
 #endif
 #endif /* CONFIG_SYS_FSL_ERRATUM_A008997 */
 }
@@ -684,7 +688,7 @@ int qspi_ahb_init(void)
 #endif
 
 #ifdef CONFIG_TFABOOT
-#define MAX_BOOTCMD_SIZE       256
+#define MAX_BOOTCMD_SIZE       512
 
 int fsl_setenv_bootcmd(void)
 {
@@ -812,6 +816,17 @@ int board_late_init(void)
                fsl_setenv_bootcmd();
                fsl_setenv_mcinitcmd();
        }
+
+       /*
+        * If the boot mode is secure, default environment is not present then
+        * setenv command needs to be run by default
+        */
+#ifdef CONFIG_CHAIN_OF_TRUST
+       if ((fsl_check_boot_mode_secure() == 1)) {
+               fsl_setenv_bootcmd();
+               fsl_setenv_mcinitcmd();
+       }
+#endif
 #endif
 #ifdef CONFIG_QSPI_AHB_INIT
        qspi_ahb_init();