video: Add support for copying to a hardware framebuffer
Some architectures use a cached framebuffer and flush the cache as needed so that changes are visible. This is supported by U-Boot. However x86 uses an uncached framebuffer with a 'write-combining' feature to speed up writes. Reads are permitted but they are extremely expensive. Unfortunately, reading from the frame buffer is quite common, e.g. to scroll it. This makes scrolling very slow. Add a new feature which supports copying modified parts of the frame buffer to the uncached hardware buffer. This speeds up scrolling by at least 10x on x86 so the extra complexity cost seems worth it. As a starting point, add the Kconfig, update the video structures to keep track of the buffer and add a function to do the copy. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NAnatolij Gustschin <agust@denx.de> Tested-by: NBin Meng <bmeng.cn@gmail.com>
Showing
想要评论请 注册 或 登录