Skip to content
Snippets Groups Projects
Commit bddec1b0 authored by Meenakshi Aggarwal's avatar Meenakshi Aggarwal Committed by Priyanka Jain
Browse files

board: fsl: lx2160a: Add support to reset to eMMC


Add support of "qixis_reset emmc" command for lx2160a based platforms

Signed-off-by: default avatarMeenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Reviewed-by: default avatarPriyanka Jain <priyanka.jain@nxp.com>
parent 3ffe090d
No related branches found
No related tags found
No related merge requests found
// SPDX-License-Identifier: GPL-2.0+ // SPDX-License-Identifier: GPL-2.0+
/* /*
* Copyright 2011 Freescale Semiconductor * Copyright 2011 Freescale Semiconductor
* Copyright 2020 NXP
* Author: Shengzhou Liu <Shengzhou.Liu@freescale.com> * Author: Shengzhou Liu <Shengzhou.Liu@freescale.com>
* *
* This file provides support for the QIXIS of some Freescale reference boards. * This file provides support for the QIXIS of some Freescale reference boards.
...@@ -287,7 +288,9 @@ static int qixis_reset_cmd(cmd_tbl_t *cmdtp, int flag, int argc, char * const ar ...@@ -287,7 +288,9 @@ static int qixis_reset_cmd(cmd_tbl_t *cmdtp, int flag, int argc, char * const ar
#ifdef QIXIS_LBMAP_EMMC #ifdef QIXIS_LBMAP_EMMC
QIXIS_WRITE(rst_ctl, 0x30); QIXIS_WRITE(rst_ctl, 0x30);
QIXIS_WRITE(rcfg_ctl, 0); QIXIS_WRITE(rcfg_ctl, 0);
#ifndef NON_EXTENDED_DUTCFG
set_lbmap(QIXIS_LBMAP_EMMC); set_lbmap(QIXIS_LBMAP_EMMC);
#endif
set_rcw_src(QIXIS_RCW_SRC_EMMC); set_rcw_src(QIXIS_RCW_SRC_EMMC);
QIXIS_WRITE(rcfg_ctl, QIXIS_RCFG_CTL_RECONFIG_IDLE); QIXIS_WRITE(rcfg_ctl, QIXIS_RCFG_CTL_RECONFIG_IDLE);
QIXIS_WRITE(rcfg_ctl, QIXIS_RCFG_CTL_RECONFIG_START); QIXIS_WRITE(rcfg_ctl, QIXIS_RCFG_CTL_RECONFIG_START);
...@@ -365,6 +368,7 @@ U_BOOT_CMD( ...@@ -365,6 +368,7 @@ U_BOOT_CMD(
"qixis watchdog <watchdog_period> - set the watchdog period\n" "qixis watchdog <watchdog_period> - set the watchdog period\n"
" period: 1s 2s 4s 8s 16s 32s 1min 2min 4min 8min\n" " period: 1s 2s 4s 8s 16s 32s 1min 2min 4min 8min\n"
"qixis_reset dump - display the QIXIS registers\n" "qixis_reset dump - display the QIXIS registers\n"
"qixis_reset emmc - reset to emmc\n"
"qixis_reset switch - display switch\n" "qixis_reset switch - display switch\n"
); );
#endif #endif
...@@ -306,6 +306,8 @@ int checkboard(void) ...@@ -306,6 +306,8 @@ int checkboard(void)
if (src == BOOT_SOURCE_SD_MMC) { if (src == BOOT_SOURCE_SD_MMC) {
puts("SD\n"); puts("SD\n");
} else if (src == BOOT_SOURCE_SD_MMC2) {
puts("eMMC\n");
} else { } else {
sw = QIXIS_READ(brdcfg[0]); sw = QIXIS_READ(brdcfg[0]);
sw = (sw >> QIXIS_XMAP_SHIFT) & QIXIS_XMAP_MASK; sw = (sw >> QIXIS_XMAP_SHIFT) & QIXIS_XMAP_MASK;
......
...@@ -22,7 +22,9 @@ ...@@ -22,7 +22,9 @@
#define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08 #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08
#define QIXIS_LBMAP_MASK 0x0f #define QIXIS_LBMAP_MASK 0x0f
#define QIXIS_LBMAP_SD #define QIXIS_LBMAP_SD
#define QIXIS_LBMAP_EMMC
#define QIXIS_RCW_SRC_SD 0x08 #define QIXIS_RCW_SRC_SD 0x08
#define QIXIS_RCW_SRC_EMMC 0x09
#define NON_EXTENDED_DUTCFG #define NON_EXTENDED_DUTCFG
#define QIXIS_SDID_MASK 0x07 #define QIXIS_SDID_MASK 0x07
#define QIXIS_ESDHC_NO_ADAPTER 0x7 #define QIXIS_ESDHC_NO_ADAPTER 0x7
......
...@@ -22,7 +22,9 @@ ...@@ -22,7 +22,9 @@
#define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08 #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08
#define QIXIS_LBMAP_MASK 0x0f #define QIXIS_LBMAP_MASK 0x0f
#define QIXIS_LBMAP_SD #define QIXIS_LBMAP_SD
#define QIXIS_LBMAP_EMMC
#define QIXIS_RCW_SRC_SD 0x08 #define QIXIS_RCW_SRC_SD 0x08
#define QIXIS_RCW_SRC_EMMC 0x09
#define NON_EXTENDED_DUTCFG #define NON_EXTENDED_DUTCFG
/* VID */ /* VID */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment