annotate target-utils/libcommon/serflush.S @ 52:b015036286f3

fc-loadtool: fast-baud communication with loadagent implemented, works!
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Sun, 23 Jun 2013 04:34:22 +0000
parents 1a3bbab2ea26
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
1 #include "ns16550.h"
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
2
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
3 .text
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
4 .code 32
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
5 .global serial_flush
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
6 serial_flush:
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
7 ldr r1, =uart_base
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
8 ldr r2, [r1]
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
9 1: ldrb r3, [r2, #NS16550_LSR]
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
10 tst r3, #NS16550_LSR_TEMP
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
11 beq 1b
1a3bbab2ea26 loadagent: jump command implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
12 bx lr