diff options
author | Simon Glass <sjg@chromium.org> | 2015-08-03 00:07:21 (GMT) |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-08-06 13:44:30 (GMT) |
commit | bbbe55f6f25e686ad799c2a70aa941eeb276adb6 (patch) | |
tree | 7051f4e1c1b12a348722b1ad945a140c0e178720 | |
parent | 74356d7fb1715db41dcf5530108cc0db82f278d7 (diff) | |
download | u-boot-fsl-qoriq-bbbe55f6f25e686ad799c2a70aa941eeb276adb6.tar.xz |
x86: Enable debug UART for Minnowmax
Enable the debug UART and emit a single 'a' early in the init sequence to
show that it is working.
Unfortunately the debug UART implementation needs a stack to work. I cannot
seem to remove this limitation as the absolute 'jmp %eax' instruction goes
off into the weeds.
So this means that the character output cannot be any earlier than
car_init_ret, where memory is available for a stack.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
-rw-r--r-- | arch/x86/cpu/start.S | 9 | ||||
-rw-r--r-- | configs/minnowmax_defconfig | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S index e5c1733..313fa3f 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -128,6 +128,15 @@ car_init_ret: andl $0xfffffff0, %esp post_code(POST_START_STACK) + /* + * Debug UART is available here although it may not be plumbed out + * to pins depending on the board. To use it: + * + * call debug_uart_init + * mov $'a', %eax + * call printch + */ + /* Zero the global data since it won't happen later */ xorl %eax, %eax movl $GENERATED_GBL_DATA_SIZE, %ecx diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig index e98f5eb..a67597d 100644 --- a/configs/minnowmax_defconfig +++ b/configs/minnowmax_defconfig @@ -24,3 +24,7 @@ CONFIG_FRAMEBUFFER_VESA_MODE_11A=y CONFIG_DM_RTC=y CONFIG_USE_PRIVATE_LIBGCC=y CONFIG_SYS_VSNPRINTF=y +CONFIG_DEBUG_UART=y +CONFIG_DEBUG_UART_NS16550=y +CONFIG_DEBUG_UART_BASE=0x3f8 +CONFIG_DEBUG_UART_CLOCK=1843200 |