armv8: ls1028ardb: add xspi parameter to qixis command
authorYuantian Tang <andy.tang@nxp.com>
Wed, 10 Jun 2020 08:13:50 +0000 (16:13 +0800)
committerPriyanka Jain <priyanka.jain@nxp.com>
Mon, 27 Jul 2020 08:46:28 +0000 (14:16 +0530)
Add xspi boot source to qixis command to let the soc boot from
flex-nor flash chip.

Signed-off-by: Yuantian Tang <andy.tang@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
board/freescale/common/qixis.c
include/configs/ls1028ardb.h

index 5912031..1696c24 100644 (file)
@@ -324,6 +324,19 @@ static int qixis_reset_cmd(struct cmd_tbl *cmdtp, int flag, int argc,
 #else
                printf("Not implemented\n");
 #endif
+       } else if (strcmp(argv[1], "xspi") == 0) {
+#ifdef QIXIS_LBMAP_XSPI
+               QIXIS_WRITE(rst_ctl, 0x30);
+               QIXIS_WRITE(rcfg_ctl, 0);
+               set_lbmap(QIXIS_LBMAP_XSPI);
+               set_rcw_src(QIXIS_RCW_SRC_XSPI);
+               qixis_write_i2c(offsetof(struct qixis, rcfg_ctl),
+                               QIXIS_RCFG_CTL_RECONFIG_IDLE);
+               qixis_write_i2c(offsetof(struct qixis, rcfg_ctl),
+                               QIXIS_RCFG_CTL_RECONFIG_START);
+#else
+               printf("Not implemented\n");
+#endif
        } else if (strcmp(argv[1], "watchdog") == 0) {
                static char *period[9] = {"2s", "4s", "8s", "16s", "32s",
                                          "1min", "2min", "4min", "8min"};
index 0745011..e6f38f5 100644 (file)
 #define QIXIS_LBMAP_ALTBANK            0x00
 #define QIXIS_LBMAP_SD                 0x00
 #define QIXIS_LBMAP_EMMC               0x00
-#define QIXIS_LBMAP_QSPI               0x00
+#define QIXIS_LBMAP_XSPI               0x00
 #define QIXIS_RCW_SRC_SD               0xf8
 #define QIXIS_RCW_SRC_EMMC             0xf9
-#define QIXIS_RCW_SRC_QSPI             0xff
+#define QIXIS_RCW_SRC_XSPI             0xff
 #define QIXIS_RST_CTL_RESET            0x31
 #define QIXIS_RCFG_CTL_RECONFIG_IDLE   0x10
 #define QIXIS_RCFG_CTL_RECONFIG_START  0x11