merge trunk

This commit is contained in:
Colin Watson 2011-04-21 11:07:10 +01:00
commit 1eb44ae37e
301 changed files with 8465 additions and 1449 deletions

View file

@ -23,6 +23,8 @@
#include <grub/mm.h>
#include <grub/misc.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* List of bitmap readers registered to system. */
static grub_video_bitmap_reader_t bitmap_readers_list;
@ -177,7 +179,7 @@ match_extension (const char *filename, const char *ext)
pos -= ext_len;
return grub_strcmp (filename + pos, ext) == 0;
return grub_strcasecmp (filename + pos, ext) == 0;
}
/* Loads bitmap using registered bitmap readers. */

View file

@ -23,6 +23,9 @@
#include <grub/bitmap.h>
#include <grub/bitmap_scale.h>
#include <grub/types.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Prototypes for module-local functions. */
static grub_err_t scale_nn (struct grub_video_bitmap *dst,

View file

@ -28,6 +28,8 @@
#include <grub/pci.h>
#include <grub/vga.h>
GRUB_MOD_LICENSE ("GPLv3+");
static struct
{
struct grub_video_mode_info mode_info;
@ -199,7 +201,8 @@ grub_video_bochs_set_palette (unsigned int start, unsigned int count,
static grub_err_t
grub_video_bochs_setup (unsigned int width, unsigned int height,
unsigned int mode_type, unsigned int mode_mask)
grub_video_mode_type_t mode_type,
grub_video_mode_type_t mode_mask)
{
int depth;
grub_err_t err;

View file

@ -28,6 +28,8 @@
#include <grub/pci.h>
#include <grub/vga.h>
GRUB_MOD_LICENSE ("GPLv3+");
static struct
{
struct grub_video_mode_info mode_info;
@ -235,7 +237,8 @@ grub_video_cirrus_set_palette (unsigned int start, unsigned int count,
static grub_err_t
grub_video_cirrus_setup (unsigned int width, unsigned int height,
unsigned int mode_type, unsigned int mode_mask)
grub_video_mode_type_t mode_type,
grub_video_mode_type_t mode_mask)
{
int depth;
grub_err_t err;

View file

@ -29,6 +29,8 @@
#include <grub/efi/efi.h>
#include <grub/efi/graphics_output.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_efi_guid_t graphics_output_guid = GRUB_EFI_GOP_GUID;
static struct grub_efi_gop *gop;
static unsigned old_mode;

View file

@ -30,6 +30,8 @@
#include <grub/efi/uga_draw.h>
#include <grub/pci.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_efi_guid_t uga_draw_guid = GRUB_EFI_UGA_DRAW_GUID;
static struct grub_efi_uga_draw_protocol *uga;
static grub_uint32_t uga_fb;

View file

@ -27,6 +27,8 @@
#include <grub/video_fb.h>
#include <SDL/SDL.h>
GRUB_MOD_LICENSE ("GPLv3+");
static SDL_Surface *window = 0;
static struct grub_video_render_target *sdl_render_target;
static struct grub_video_mode_info mode_info;

View file

@ -24,6 +24,9 @@
#include <grub/fbfill.h>
#include <grub/fbutil.h>
#include <grub/bitmap.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
static struct
{
@ -1445,13 +1448,16 @@ grub_video_fb_setup (unsigned int mode_type, unsigned int mode_mask,
GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED,
0))
{
/* It was much nicer with the cast directly at function call but
some older gcc versions don't accept it properly.*/
void *tmp = (void *) page0_ptr;
mode_info->mode_type |= (GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED
| GRUB_VIDEO_MODE_TYPE_UPDATING_SWAP);
err = grub_video_fb_doublebuf_blit_init (&framebuffer.front_target,
&framebuffer.back_target,
*mode_info,
(void *) page0_ptr);
tmp);
if (!err)
{
@ -1505,6 +1511,20 @@ grub_video_fb_get_info_and_fini (struct grub_video_mode_info *mode_info,
{
grub_memcpy (mode_info, &(framebuffer.front_target->mode_info),
sizeof (*mode_info));
/* We are about to load a kernel. Switch back to page zero, since some
kernel drivers expect that. */
if ((mode_info->mode_type & GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED)
&& framebuffer.set_page && framebuffer.displayed_page != 0)
{
/* Ensure both pages are exactly in sync. */
grub_memcpy (framebuffer.back_target->data,
framebuffer.front_target->data,
framebuffer.back_target->mode_info.pitch
* framebuffer.back_target->mode_info.height);
grub_video_swap_buffers ();
}
*framebuf = framebuffer.front_target->data;
grub_video_fb_fini ();

View file

@ -30,6 +30,8 @@
#include <grub/video.h>
#include <grub/machine/int.h>
GRUB_MOD_LICENSE ("GPLv3+");
static int vbe_detected = -1;
static struct grub_vbe_info_block controller_info;
@ -688,7 +690,8 @@ grub_video_vbe_iterate (int (*hook) (const struct grub_video_mode_info *info))
static grub_err_t
grub_video_vbe_setup (unsigned int width, unsigned int height,
unsigned int mode_type, unsigned int mode_mask)
grub_video_mode_type_t mode_type,
grub_video_mode_type_t mode_mask)
{
grub_uint16_t *p;
struct grub_vbe_mode_info_block vbe_mode_info;

View file

@ -30,6 +30,8 @@
#include <grub/misc.h>
#include <grub/vga.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define VGA_WIDTH 640
#define VGA_HEIGHT 350
#define VGA_MEM ((grub_uint8_t *) GRUB_MEMORY_MACHINE_VGA_ADDR)
@ -116,7 +118,8 @@ grub_video_vga_init (void)
static grub_err_t
grub_video_vga_setup (unsigned int width, unsigned int height,
unsigned int mode_type, unsigned int mode_mask)
grub_video_mode_type_t mode_type,
grub_video_mode_type_t mode_mask)
{
grub_err_t err;

View file

@ -27,6 +27,8 @@
#include <grub/video_fb.h>
#include <grub/ieee1275/ieee1275.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Only 8-bit indexed color is supported for now. */
static unsigned old_width, old_height;

View file

@ -24,6 +24,8 @@
#include <grub/misc.h>
#include <grub/bufio.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Uncomment following define to enable JPEG debug. */
//#define JPEG_DEBUG

View file

@ -24,6 +24,8 @@
#include <grub/misc.h>
#include <grub/bufio.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Uncomment following define to enable PNG debug. */
//#define PNG_DEBUG

View file

@ -24,6 +24,8 @@
#include <grub/misc.h>
#include <grub/bufio.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Uncomment following define to enable TGA debug. */
//#define TGA_DEBUG

View file

@ -22,6 +22,8 @@
#include <grub/misc.h>
#include <grub/mm.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* The list of video adapters registered to system. */
grub_video_adapter_t grub_video_adapter_list = NULL;