summaryrefslogtreecommitdiff
path: root/board/freescale
diff options
context:
space:
mode:
authorDiego Dorta <diego.dorta@nxp.com>2016-10-11 11:09:27 -0300
committerStefano Babic <sbabic@denx.de>2016-10-17 09:18:01 +0200
commitd96796ca23b2ebcb7ce58c250e5a44152a652a45 (patch)
tree00a7fbb488fa682df3c6180de460b5e37d946ac8 /board/freescale
parent940afa4e544bdc2365d85bca78e0dcb847002eab (diff)
mx6sabresd: Add Falcon mode support
Allow i.MX6Q Sabre SD to load the kernel and dtb via SPL in Falcon mode. Based on the Falcon mode code for MX6 Gateworks Ventana board. Signed-off-by: Diego Dorta <diego.dorta@nxp.com>
Diffstat (limited to 'board/freescale')
-rw-r--r--board/freescale/mx6sabresd/mx6sabresd.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c
index e58c03cca7..2b6d7be0a3 100644
--- a/board/freescale/mx6sabresd/mx6sabresd.c
+++ b/board/freescale/mx6sabresd/mx6sabresd.c
@@ -57,6 +57,8 @@ DECLARE_GLOBAL_DATA_PTR;
#define DISP0_PWR_EN IMX_GPIO_NR(1, 21)
+#define KEY_VOL_UP IMX_GPIO_NR(1, 4)
+
int dram_init(void)
{
gd->ram_size = imx_ddr_size();
@@ -682,6 +684,16 @@ int checkboard(void)
#include <spl.h>
#include <libfdt.h>
+#ifdef CONFIG_SPL_OS_BOOT
+int spl_start_uboot(void)
+{
+ gpio_direction_input(KEY_VOL_UP);
+
+ /* Only enter in Falcon mode if KEY_VOL_UP is pressed */
+ return gpio_get_value(KEY_VOL_UP);
+}
+#endif
+
static void ccgr_init(void)
{
struct mxc_ccm_reg *ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;