On 07/30/2010 02:19 PM, Kevin O'Connor wrote:
On Fri, Jul 30, 2010 at 09:13:32PM +0200, Sebastian Herbszt wrote:
Kevin O'Connor wrote:
This series further enhances the bootsplash code. The last patch enables it by default (for coreboot users).
What about adding some wrappers to "paravirt.h" like bootsplash_file_find, bootsplash_file_size and bootsplash_file_copy (along the lines of romfile_*) ? This should allow qemu to use the bootsplash screen.
The romfile_* wrappers could likely serve this purpose. (See patch below.) Of course, this needs changes to qemu, which I was going to look at next.
Would be a really nice feature to have.
Regards,
Anthony Liguori
-Kevin
diff --git a/src/bootsplash.c b/src/bootsplash.c index 676ece3..00bb921 100644 --- a/src/bootsplash.c +++ b/src/bootsplash.c @@ -11,6 +11,7 @@ #include "util.h" // dprintf #include "jpeg.h" // splash #include "biosvar.h" // SET_EBDA +#include "paravirt.h" // romfile_find
/**************************************************************** @@ -148,12 +149,12 @@ void enable_vga_console(void) u8 *filedata = NULL, *picture = NULL;
/* Needs coreboot support for CBFS */
- if (!CONFIG_BOOTSPLASH || !CONFIG_COREBOOT)
- if (!CONFIG_BOOTSPLASH) goto gotext;
- struct cbfs_file *file = cbfs_finddatafile("bootsplash.jpg");
- u32 file = romfile_find("bootsplash.jpg"); if (!file) goto gotext;
- int filesize = cbfs_datasize(file);
int filesize = romfile_size(file);
filedata = malloc_tmphigh(filesize); vesa_info = malloc_tmplow(sizeof(*vesa_info));
@@ -186,7 +187,7 @@ void enable_vga_console(void) vendor, product);
// Parse jpeg and get image size.
- cbfs_copyfile(file, filedata, filesize);
- romfile_copy(file, filedata, filesize); int ret = jpeg_decode(jpeg, filedata); if (ret) { dprintf(1, "jpeg_decode failed with return code %d...\n", ret);
@@ -248,7 +249,7 @@ gotext: void disable_bootsplash(void) {
- if (!CONFIG_BOOTSPLASH || !CONFIG_COREBOOT || !GET_EBDA(bootsplash_active))
- if (!CONFIG_BOOTSPLASH || !GET_EBDA(bootsplash_active)) return; SET_EBDA(bootsplash_active, 0); enable_vga_text_console();
SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios