RE: [PATCH v4] board: fsl: lx2160a: Add support to reset to eMMC

2020-02-04 Thread Priyanka Jain (OSS)
>-Original Message-
>From: U-Boot  On Behalf Of Meenakshi
>Aggarwal
>Sent: Thursday, January 23, 2020 5:55 PM
>To: u-boot@lists.denx.de; Priyanka Jain 
>Subject: [PATCH v4] board: fsl: lx2160a: Add support to reset to eMMC
>
>Add support of "qixis_reset emmc" command for lx2160a based platforms
>
>Signed-off-by: Meenakshi Aggarwal 
>
>---
Patch applied on u-boot-fsl-qoriq/master. Awaiting upstream 
-priyankajain


[PATCH v4] board: fsl: lx2160a: Add support to reset to eMMC

2020-01-22 Thread Meenakshi Aggarwal
Add support of "qixis_reset emmc" command for lx2160a based platforms

Signed-off-by: Meenakshi Aggarwal 

---
Changes:

v2:
- update in commit message
- using set_rcw_src() in place of QIXIS_WRITE()

v3:
- update in commit message

v4:
-incorporated review comments
---
 board/freescale/common/qixis.c| 4 
 board/freescale/lx2160a/lx2160a.c | 2 ++
 include/configs/lx2160aqds.h  | 2 ++
 include/configs/lx2160ardb.h  | 2 ++
 4 files changed, 10 insertions(+)

diff --git a/board/freescale/common/qixis.c b/board/freescale/common/qixis.c
index 716c93b..dd1ee90 100644
--- a/board/freescale/common/qixis.c
+++ b/board/freescale/common/qixis.c
@@ -1,6 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright 2011 Freescale Semiconductor
+ * Copyright 2020 NXP
  * Author: Shengzhou Liu 
  *
  * 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
 #ifdef QIXIS_LBMAP_EMMC
QIXIS_WRITE(rst_ctl, 0x30);
QIXIS_WRITE(rcfg_ctl, 0);
+#ifndef NON_EXTENDED_DUTCFG
set_lbmap(QIXIS_LBMAP_EMMC);
+#endif
set_rcw_src(QIXIS_RCW_SRC_EMMC);
QIXIS_WRITE(rcfg_ctl, QIXIS_RCFG_CTL_RECONFIG_IDLE);
QIXIS_WRITE(rcfg_ctl, QIXIS_RCFG_CTL_RECONFIG_START);
@@ -365,6 +368,7 @@ U_BOOT_CMD(
"qixis watchdog  - set the watchdog period\n"
"   period: 1s 2s 4s 8s 16s 32s 1min 2min 4min 8min\n"
"qixis_reset dump - display the QIXIS registers\n"
+   "qixis_reset emmc - reset to emmc\n"
"qixis_reset switch - display switch\n"
);
 #endif
diff --git a/board/freescale/lx2160a/lx2160a.c 
b/board/freescale/lx2160a/lx2160a.c
index dd3cd45..79abcd8 100644
--- a/board/freescale/lx2160a/lx2160a.c
+++ b/board/freescale/lx2160a/lx2160a.c
@@ -325,6 +325,8 @@ int checkboard(void)
 
if (src == BOOT_SOURCE_SD_MMC) {
puts("SD\n");
+   } else if (src == BOOT_SOURCE_SD_MMC2) {
+   puts("eMMC\n");
} else {
sw = QIXIS_READ(brdcfg[0]);
sw = (sw >> QIXIS_XMAP_SHIFT) & QIXIS_XMAP_MASK;
diff --git a/include/configs/lx2160aqds.h b/include/configs/lx2160aqds.h
index f523b37..56a50d3 100644
--- a/include/configs/lx2160aqds.h
+++ b/include/configs/lx2160aqds.h
@@ -22,7 +22,9 @@
 #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE  0x08
 #define QIXIS_LBMAP_MASK   0x0f
 #define QIXIS_LBMAP_SD
+#define QIXIS_LBMAP_EMMC
 #define QIXIS_RCW_SRC_SD   0x08
+#define QIXIS_RCW_SRC_EMMC 0x09
 #define NON_EXTENDED_DUTCFG
 #define QIXIS_SDID_MASK0x07
 #define QIXIS_ESDHC_NO_ADAPTER 0x7
diff --git a/include/configs/lx2160ardb.h b/include/configs/lx2160ardb.h
index 6ff1c24..5b530f0 100644
--- a/include/configs/lx2160ardb.h
+++ b/include/configs/lx2160ardb.h
@@ -22,7 +22,9 @@
 #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE  0x08
 #define QIXIS_LBMAP_MASK   0x0f
 #define QIXIS_LBMAP_SD
+#define QIXIS_LBMAP_EMMC
 #define QIXIS_RCW_SRC_SD   0x08
+#define QIXIS_RCW_SRC_EMMC 0x09
 #define NON_EXTENDED_DUTCFG
 
 /* VID */
-- 
1.9.1