summaryrefslogtreecommitdiff
path: root/cmd/load.c
diff options
context:
space:
mode:
authorPali Rohár <pali@kernel.org>2021-08-06 18:07:39 +0200
committerTom Rini <trini@konsulko.com>2021-09-01 19:25:37 -0400
commit515381414d5ce2032fbee6bb55206061660762bb (patch)
tree6a32a08561e1ff53fd8290cbd159e5c4024fa8eb /cmd/load.c
parente199fb35b4a04aa80c5623176c5925ab99bcd6c3 (diff)
loadb: Properly indicate aborted kermit transfer
When k_recv() returns zero it indicates that kermit transfer was aborted. Function do_load_serial_bin() (caller of load_serial_bin()) interprets value ~0 as aborted transfer, so properly propagates information about aborted transfer from k_recv() to do_load_serial_bin(). Signed-off-by: Pali Rohár <pali@kernel.org>
Diffstat (limited to 'cmd/load.c')
-rw-r--r--cmd/load.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/cmd/load.c b/cmd/load.c
index 381ed1b3e2..3904e133c4 100644
--- a/cmd/load.c
+++ b/cmd/load.c
@@ -535,6 +535,9 @@ static ulong load_serial_bin(ulong offset)
udelay(1000);
}
+ if (size == 0)
+ return ~0; /* Download aborted */
+
flush_cache(offset, size);
printf("## Total Size = 0x%08x = %d Bytes\n", size, size);