81 lines
2.3 KiB
Diff
81 lines
2.3 KiB
Diff
|
From 4fcb1d5141ff6d9527ceac9f391e1da4128f5a60 Mon Sep 17 00:00:00 2001
|
||
|
From: Abhimanyu Saini <abhimanyu.saini@nxp.com>
|
||
|
Date: Tue, 10 May 2016 09:54:36 +0530
|
||
|
Subject: [PATCH 28/93] fsl, ls1012a, qixis: Add support for qixis subsystem
|
||
|
|
||
|
Add support for the printing FPGA build information,
|
||
|
altbank switching and board reset using qixis subsystem.
|
||
|
|
||
|
Signed-off-by: Calvin Johnson <calvin.johnson@nxp.com>
|
||
|
Signed-off-by: Abhimanyu Saini <abhimanyu.saini@nxp.com>
|
||
|
---
|
||
|
board/freescale/ls1012aqds/ls1012aqds.c | 20 +++++++++++++++++++-
|
||
|
include/configs/ls1012aqds.h | 17 +++++++++++++++++
|
||
|
2 files changed, 36 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/board/freescale/ls1012aqds/ls1012aqds.c b/board/freescale/ls1012aqds/ls1012aqds.c
|
||
|
index 5cb225f..446989b 100644
|
||
|
--- a/board/freescale/ls1012aqds/ls1012aqds.c
|
||
|
+++ b/board/freescale/ls1012aqds/ls1012aqds.c
|
||
|
@@ -44,8 +44,26 @@ static void set_wait_for_bits_clear(void *ptr, u32 value, u32 bits)
|
||
|
|
||
|
int checkboard(void)
|
||
|
{
|
||
|
- puts("Board: LS1012AQDS\n");
|
||
|
+ char buf[64];
|
||
|
+ u8 sw;
|
||
|
|
||
|
+ sw = QIXIS_READ(arch);
|
||
|
+ printf("Board Arch: V%d, ", sw >> 4);
|
||
|
+ printf("Board version: %c, boot from ", (sw & 0xf) + 'A' - 1);
|
||
|
+
|
||
|
+ sw = QIXIS_READ(brdcfg[QIXIS_LBMAP_BRDCFG_REG]);
|
||
|
+
|
||
|
+ if (sw & QIXIS_LBMAP_ALTBANK)
|
||
|
+ printf("flash: 2\n");
|
||
|
+ else
|
||
|
+ printf("flash: 1\n");
|
||
|
+
|
||
|
+ printf("FPGA: v%d (%s), build %d",
|
||
|
+ (int)QIXIS_READ(scver), qixis_read_tag(buf),
|
||
|
+ (int)qixis_read_minor());
|
||
|
+
|
||
|
+ /* the timestamp string contains "\n" at the end */
|
||
|
+ printf(" on %s", qixis_read_time(buf));
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
diff --git a/include/configs/ls1012aqds.h b/include/configs/ls1012aqds.h
|
||
|
index 51ca902..de998b8 100644
|
||
|
--- a/include/configs/ls1012aqds.h
|
||
|
+++ b/include/configs/ls1012aqds.h
|
||
|
@@ -26,8 +26,25 @@
|
||
|
#define SGMII_CARD_PORT4_PHY_ADDR 0x1F
|
||
|
#endif
|
||
|
|
||
|
+/*
|
||
|
+ * QIXIS Definitions
|
||
|
+ */
|
||
|
+#define CONFIG_FSL_QIXIS
|
||
|
+
|
||
|
+#ifdef CONFIG_FSL_QIXIS
|
||
|
#define CONFIG_QIXIS_I2C_ACCESS
|
||
|
#define CONFIG_SYS_I2C_FPGA_ADDR 0x66
|
||
|
+#define QIXIS_LBMAP_BRDCFG_REG 0x04
|
||
|
+#define QIXIS_LBMAP_SWITCH 6
|
||
|
+#define QIXIS_LBMAP_MASK 0xf7
|
||
|
+#define QIXIS_LBMAP_SHIFT 0
|
||
|
+#define QIXIS_LBMAP_DFLTBANK 0x00
|
||
|
+#define QIXIS_LBMAP_ALTBANK 0x08
|
||
|
+#define QIXIS_RST_CTL_RESET 0x41
|
||
|
+#define QIXIS_RCFG_CTL_RECONFIG_IDLE 0x20
|
||
|
+#define QIXIS_RCFG_CTL_RECONFIG_START 0x21
|
||
|
+#define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08
|
||
|
+#endif
|
||
|
|
||
|
/*
|
||
|
* I2C bus multiplexer
|
||
|
--
|
||
|
1.7.9.5
|
||
|
|