summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
diff options
context:
space:
mode:
authorAndrey Smirnov <andrew.smirnov@gmail.com>2015-10-11 11:43:38 -0700
committerSascha Hauer <s.hauer@pengutronix.de>2015-10-12 11:37:58 +0200
commit707ca96a1f60531dda81cc2b39c2641f21203011 (patch)
tree32df9a30cd77875242ed02c0455b6f30970e5b43 /arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
parent54bf38665024f797518726d0ecf612c3cf50e4d9 (diff)
downloadbarebox-707ca96a1f60531dda81cc2b39c2641f21203011.tar.gz
barebox-707ca96a1f60531dda81cc2b39c2641f21203011.tar.xz
freescale-mx6-sabresd: Add CONFIG_DEBUG_LL support
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/freescale-mx6-sabresd/lowlevel.c')
-rw-r--r--arch/arm/boards/freescale-mx6-sabresd/lowlevel.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c b/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
index 73eed1d068..b329f4684e 100644
--- a/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
+++ b/arch/arm/boards/freescale-mx6-sabresd/lowlevel.c
@@ -1,9 +1,28 @@
+#include <debug_ll.h>
#include <common.h>
#include <linux/sizes.h>
#include <mach/generic.h>
#include <asm/barebox-arm-head.h>
#include <asm/barebox-arm.h>
+static inline void setup_uart(void)
+{
+ void __iomem *iomuxbase = IOMEM(MX6_IOMUXC_BASE_ADDR);
+
+ imx6_ungate_all_peripherals();
+
+ writel(0x1b0b1, iomuxbase + 0x0650);
+ writel(3, iomuxbase + 0x0280);
+
+ writel(0x1b0b1, iomuxbase + 0x0654);
+ writel(3, iomuxbase + 0x0284);
+ writel(1, iomuxbase + 0x0920);
+
+ imx6_uart_setup_ll();
+
+ putc_ll('>');
+}
+
extern char __dtb_imx6q_sabresd_start[];
ENTRY_FUNCTION(start_imx6q_sabresd, r0, r1, r2)
@@ -12,6 +31,9 @@ ENTRY_FUNCTION(start_imx6q_sabresd, r0, r1, r2)
imx6_cpu_lowlevel_init();
+ if (IS_ENABLED(CONFIG_DEBUG_LL))
+ setup_uart();
+
fdt = __dtb_imx6q_sabresd_start - get_runtime_offset();
barebox_arm_entry(0x10000000, SZ_1G, fdt);