coreboot-kgpe-d16/payloads/libpayload/drivers/video
Julius Werner e9808b145f cbgfx: Use memset() for faster screen clearing if possible
cbgfx currently makes a separate function call (recomputing some values)
for every single pixel it draws. While we mostly don't care that much
about display speed, this can become an issue if you're trying to paint
the whole screen white on a lowly-clocked Cortex-A53. As a simple
solution for these extreme cases, we can build a fast path into
clear_screen() that just memset()s the whole framebuffer if the color
and pixel format allow it.

BUG=chrome-os-partner:54416
TEST=Screen drawing speed on Kevin visibly improves (from 2.5s to 3ms).

Change-Id: I22f032afbb86b96fa5a0cbbdce8526a905c67b58
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/15524
Tested-by: build bot (Jenkins)
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
2016-07-02 03:22:51 +02:00
..
bitmap.h libpayload/libcbgfx: Add license headers 2015-10-27 16:49:10 +01:00
corebootfb.c Remove empty lines at end of file 2015-06-08 00:55:07 +02:00
font8x16.c Document all of the external code we use in libpayload (trivial). 2008-08-11 20:34:50 +00:00
font8x16.h Various small consistency fixes (trivial): 2008-04-11 18:01:50 +00:00
geodelx.c libpayload: fix garbage on screen with Geode-LX VGA 2010-08-18 21:23:27 +00:00
graphics.c cbgfx: Use memset() for faster screen clearing if possible 2016-07-02 03:22:51 +02:00
vga.c Add coreboot framebuffer support to libpayload 2010-03-25 18:56:26 +00:00
video.c video_printf: align text 2015-09-08 11:51:55 +00:00