summaryrefslogtreecommitdiff
path: root/arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.masahiro@socionext.com>2015-07-21 14:04:22 +0900
committerMasahiro Yamada <yamada.masahiro@socionext.com>2015-07-23 23:42:22 +0900
commit3365b4eb5543ae26579321da34cca42e38ac130f (patch)
tree3da8e615f2f020eda20f50cef1b79b83c36e4bd3 /arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S
parentad6670ee12a1783aeb54881fa5bb2e5582ba2dbc (diff)
downloadu-boot-imx-3365b4eb5543ae26579321da34cca42e38ac130f.zip
u-boot-imx-3365b4eb5543ae26579321da34cca42e38ac130f.tar.gz
u-boot-imx-3365b4eb5543ae26579321da34cca42e38ac130f.tar.bz2
ARM: UniPhier: add PH1-sLD3 SoC support
The init code for UMC (Unified Memory Controller) and PLL has not been mainlined yet, but U-boot proper should work. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S')
-rw-r--r--arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S31
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S b/arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S
new file mode 100644
index 0000000..9d1fd2c
--- /dev/null
+++ b/arch/arm/mach-uniphier/ph1-sld3/lowlevel_debug.S
@@ -0,0 +1,31 @@
+/*
+ * On-chip UART initializaion for low-level debugging
+ *
+ * Copyright (C) 2014-2015 Masahiro Yamada <yamada.masahiro@socionext.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#include <linux/linkage.h>
+#include <mach/bcu-regs.h>
+#include <mach/sc-regs.h>
+#include <mach/sg-regs.h>
+#include <mach/debug-uart.S>
+
+ENTRY(setup_lowlevel_debug)
+ ldr r0, =BCSCR5
+ ldr r1, =0x24440000
+ str r1, [r0]
+
+ ldr r0, =SC_CLKCTRL
+ ldr r1, [r0]
+ orr r1, r1, #SC_CLKCTRL_CEN_PERI
+ str r1, [r0]
+
+ init_debug_uart r0, r1, r2
+
+ set_pinsel 63, 0, r0, r1
+ set_pinsel 64, 1, r0, r1
+
+ mov pc, lr
+ENDPROC(setup_lowlevel_debug)