From 71fed5f6b9b5c55ffa09658087920dd96548f702 Mon Sep 17 00:00:00 2001 From: Ashish Kumar Date: Wed, 17 Jan 2018 10:49:08 +0530 Subject: fsl: common :qixis: Add ifc and emmc switch support in qixis Previously only SD, NAND etc were secondary boot source and had IFC-NOR as primary booting target. But for SoC like LS1088 IFC-NOR can be secondary boot source, while QSPI-NOR is primary booting target, So add options in qixis to switch to other targets using new commands. E.g. '=> qixis_reset ifc' : switch to ifc '=> qixis_reset emmc' : switch to emmc Signed-off-by: Ashish Kumar diff --git a/board/freescale/common/qixis.c b/board/freescale/common/qixis.c index 0db0ed6..3029fcf 100644 --- a/board/freescale/common/qixis.c +++ b/board/freescale/common/qixis.c @@ -236,6 +236,28 @@ int qixis_reset_cmd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) #else printf("Not implemented\n"); #endif + } else if (strcmp(argv[1], "ifc") == 0) { +#ifdef QIXIS_LBMAP_IFC + QIXIS_WRITE(rst_ctl, 0x30); + QIXIS_WRITE(rcfg_ctl, 0); + set_lbmap(QIXIS_LBMAP_IFC); + set_rcw_src(QIXIS_RCW_SRC_IFC); + QIXIS_WRITE(rcfg_ctl, 0x20); + QIXIS_WRITE(rcfg_ctl, 0x21); +#else + printf("Not implemented\n"); +#endif + } else if (strcmp(argv[1], "emmc") == 0) { +#ifdef QIXIS_LBMAP_EMMC + QIXIS_WRITE(rst_ctl, 0x30); + QIXIS_WRITE(rcfg_ctl, 0); + set_lbmap(QIXIS_LBMAP_EMMC); + set_rcw_src(QIXIS_RCW_SRC_EMMC); + QIXIS_WRITE(rcfg_ctl, 0x20); + QIXIS_WRITE(rcfg_ctl, 0x21); +#else + printf("Not implemented\n"); +#endif } else if (strcmp(argv[1], "sd_qspi") == 0) { #ifdef QIXIS_LBMAP_SD_QSPI QIXIS_WRITE(rst_ctl, 0x30); -- cgit v0.10.2