Esp. while printing the environment the output is usually longer than 512
bytes. Instead of cutting the message, send multiple 512 bytes packets.

Signed-off-by: Michael Walle <mich...@walle.cc>
---
 drivers/net/netconsole.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
index e40efb8..56ba64f 100644
--- a/drivers/net/netconsole.c
+++ b/drivers/net/netconsole.c
@@ -189,10 +189,13 @@ static void nc_puts(const char *s)
                return;
        output_recursion = 1;
 
-       if ((len = strlen (s)) > 512)
-               len = 512;
-
-       nc_send_packet (s, len);
+       len = strlen(s);
+       while (len) {
+               int send_len = min(len, 512);
+               nc_send_packet(s, send_len);
+               len -= send_len;
+               s += send_len;
+       }
 
        output_recursion = 0;
 }
-- 
1.7.2.5

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to