[SeaBIOS] [PATCH 0/5] More bootsplash enhancements
Anthony Liguori
anthony at codemonkey.ws
Fri Jul 30 22:19:22 CEST 2010
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 at seabios.org
> http://www.seabios.org/mailman/listinfo/seabios
>
More information about the SeaBIOS
mailing list