#include <linux/dmi.h>
#include <linux/err.h>
#include <linux/efi.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/mm.h>
#include <linux/of_address.h>
#include <linux/pci.h>
#include <linux/platform_device.h>
#include <linux/screen_info.h>
#include <linux/sysfb.h>
#include <video/vga.h>
enum { … };
struct efifb_dmi_info efifb_dmi_list[] = …;
void efifb_setup_from_dmi(struct screen_info *si, const char *opt)
{ … }
#define choose_value(dmivalue, fwvalue, field, flags) …
static int __init efifb_set_system(const struct dmi_system_id *id)
{ … }
#define EFIFB_DMI_SYSTEM_ID(vendor, name, enumid) …
static const struct dmi_system_id efifb_dmi_system_table[] __initconst = …;
static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = …;
static bool efifb_overlaps_pci_range(const struct of_pci_range *range)
{ … }
static struct device_node *find_pci_overlap_node(void)
{ … }
static int efifb_add_links(struct fwnode_handle *fwnode)
{ … }
static const struct fwnode_operations efifb_fwnode_ops = …;
#ifdef CONFIG_EFI
static struct fwnode_handle efifb_fwnode;
__init void sysfb_apply_efi_quirks(void)
{ … }
__init void sysfb_set_efifb_fwnode(struct platform_device *pd)
{ … }
#endif