#include <linux/bitops.h>
#include <linux/ctype.h>
#include <linux/efi.h>
#include <linux/screen_info.h>
#include <linux/string.h>
#include <asm/efi.h>
#include <asm/setup.h>
#include "efistub.h"
enum efi_cmdline_option { … };
static struct { … } cmdline = …;
static bool parse_modenum(char *option, char **next)
{ … }
static bool parse_res(char *option, char **next)
{ … }
static bool parse_auto(char *option, char **next)
{ … }
static bool parse_list(char *option, char **next)
{ … }
void efi_parse_option_graphics(char *option)
{ … }
static u32 choose_mode_modenum(efi_graphics_output_protocol_t *gop)
{ … }
static u8 pixel_bpp(int pixel_format, efi_pixel_bitmask_t pixel_info)
{ … }
static u32 choose_mode_res(efi_graphics_output_protocol_t *gop)
{ … }
static u32 choose_mode_auto(efi_graphics_output_protocol_t *gop)
{ … }
static u32 choose_mode_list(efi_graphics_output_protocol_t *gop)
{ … }
static void set_mode(efi_graphics_output_protocol_t *gop)
{ … }
static void find_bits(u32 mask, u8 *pos, u8 *size)
{ … }
static void
setup_pixel_info(struct screen_info *si, u32 pixels_per_scan_line,
efi_pixel_bitmask_t pixel_info, int pixel_format)
{ … }
static efi_graphics_output_protocol_t *
find_gop(efi_guid_t *proto, unsigned long size, void **handles)
{ … }
static efi_status_t setup_gop(struct screen_info *si, efi_guid_t *proto,
unsigned long size, void **handles)
{ … }
efi_status_t efi_setup_gop(struct screen_info *si, efi_guid_t *proto,
unsigned long size)
{ … }