diff options
author | Ashish Kumar <Ashish.Kumar@nxp.com> | 2018-01-17 05:19:08 (GMT) |
---|---|---|
committer | Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com> | 2018-01-29 06:55:45 (GMT) |
commit | 71fed5f6b9b5c55ffa09658087920dd96548f702 (patch) | |
tree | c44bcfd7d242f1257790fb94ab4e8c7d94335f4a /board/freescale | |
parent | 27057614fe4a2d66a22ccc224bbbf193d09a5a98 (diff) | |
download | u-boot-71fed5f6b9b5c55ffa09658087920dd96548f702.tar.xz |
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 <Ashish.Kumar@nxp.com>
Diffstat (limited to 'board/freescale')
-rw-r--r-- | board/freescale/common/qixis.c | 22 |
1 files changed, 22 insertions, 0 deletions
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); |