annotate target-utils/loadagent/serextra.S @ 921:74d284add54d

fc-fsio: guard against bogus readdir results from the target If the FFS being operated on contains SE K2x0 extended filenames, readdir will return strings that are bad for printing. We need to guard against this possibility, and also against possible other bogosity that could be sent by other alien firmwares.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 31 Dec 2022 22:55:23 +0000
parents 3229940734e5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
648
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 #include "ns16550.h"
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 @ extra serial I/O functions for loadagent binary operations
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 .text
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 .code 32
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 .globl serial_out_if_empty
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 serial_out_if_empty:
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 ldr r1, =uart_base
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 ldr r2, [r1]
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 ldrb r3, [r2, #NS16550_LSR]
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 tst r3, #NS16550_LSR_THRE
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 strneb r0, [r2, #NS16550_THR]
3229940734e5 loadagent: binary memload command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 bx lr