[U-Boot] [PATCH v2 3/3] video: speedup writing strings to fb console

Soeren Moch smoch at web.de
Fri Oct 24 16:33:30 CEST 2014


With enabled framebuffer console the printenv command can take several
seconds to complete. This patch temporarily disables cache flush when
writing strings to fb console. Then there is no noticable delay anymore.

Tested with imx6 hdmi framebuffer.

Signed-off-by: Soeren Moch <smoch at web.de>
---
Cc: Stefano Babic <sbabic at denx.de>
---
 drivers/video/cfb_console.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 9231927..e7548e1 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -1160,10 +1160,19 @@ void video_putc(struct stdio_dev *dev, const char c)
 
 void video_puts(struct stdio_dev *dev, const char *s)
 {
+	int flush = cfb_do_flush_cache;
 	int count = strlen(s);
 
+	/* temporarily disable cache flush */
+	cfb_do_flush_cache = 0;
+
 	while (count--)
 		video_putc(dev, *s++);
+
+	if (flush) {
+		cfb_do_flush_cache = flush;
+		flush_cache(VIDEO_FB_ADRS, VIDEO_SIZE);
+	}
 }
 
 /*
-- 
1.9.1



More information about the U-Boot mailing list