# HG changeset patch # User Michael Spacefalcon # Date 1402507375 0 # Node ID d7591faa1258f3b5634150d3110a9655fea9e956 # Parent 134c047c126977c18e726ce7574ed0f81a2cf342 target-utils serial I/O made consistent with other projects diff -r 134c047c1269 -r d7591faa1258 target-utils/libcommon/Makefile --- a/target-utils/libcommon/Makefile Wed Jun 11 16:38:28 2014 +0000 +++ b/target-utils/libcommon/Makefile Wed Jun 11 17:22:55 2014 +0000 @@ -4,7 +4,7 @@ AR= arm-elf-ar RANLIB= arm-elf-ranlib -OBJS= cmdentry.o dispatch.o hexarg.o parseargs.o serio.o serflush.o uartsel.o\ +OBJS= cmdentry.o dispatch.o hexarg.o parseargs.o serio.o uartsel.o \ cmd_baud_switch.o cmd_dieid.o cmd_jump.o cmd_r8.o cmd_r16.o cmd_r32.o \ cmd_w8.o cmd_w16.o cmd_w32.o abbcmd.o abbdrv.o osmodelay.o spidrv.o diff -r 134c047c1269 -r d7591faa1258 target-utils/libcommon/serflush.S --- a/target-utils/libcommon/serflush.S Wed Jun 11 16:38:28 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -#include "ns16550.h" - - .text - .code 32 - .global serial_flush -serial_flush: - ldr r1, =uart_base - ldr r2, [r1] -1: ldrb r3, [r2, #NS16550_LSR] - tst r3, #NS16550_LSR_TEMP - beq 1b - bx lr diff -r 134c047c1269 -r d7591faa1258 target-utils/libcommon/serio.S --- a/target-utils/libcommon/serio.S Wed Jun 11 16:38:28 2014 +0000 +++ b/target-utils/libcommon/serio.S Wed Jun 11 17:22:55 2014 +0000 @@ -20,7 +20,15 @@ ldr r2, [r1] ldrb r3, [r2, #NS16550_LSR] tst r3, #NS16550_LSR_DR - mvneq r0, #1 - bxeq lr - ldrb r0, [r2, #NS16550_RBR] + ldrneb r0, [r2, #NS16550_RBR] + mvneq r0, #0 bx lr + + .global serial_flush +serial_flush: + ldr r1, =uart_base + ldr r2, [r1] +1: ldrb r3, [r2, #NS16550_LSR] + tst r3, #NS16550_LSR_TEMP + beq 1b + bx lr