summaryrefslogtreecommitdiff
path: root/package/boot/uboot-layerscape/patches/0028-fsl-ls1012a-qixis-Add-support-for-qixis-subsystem.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/boot/uboot-layerscape/patches/0028-fsl-ls1012a-qixis-Add-support-for-qixis-subsystem.patch')
-rw-r--r--package/boot/uboot-layerscape/patches/0028-fsl-ls1012a-qixis-Add-support-for-qixis-subsystem.patch80
1 files changed, 80 insertions, 0 deletions
diff --git a/package/boot/uboot-layerscape/patches/0028-fsl-ls1012a-qixis-Add-support-for-qixis-subsystem.patch b/package/boot/uboot-layerscape/patches/0028-fsl-ls1012a-qixis-Add-support-for-qixis-subsystem.patch
new file mode 100644
index 0000000..0604685
--- /dev/null
+++ b/package/boot/uboot-layerscape/patches/0028-fsl-ls1012a-qixis-Add-support-for-qixis-subsystem.patch
@@ -0,0 +1,80 @@
+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
+