#define pr_fmt(fmt) …
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/input.h>
#include <linux/input/sparse-keymap.h>
#include <linux/fb.h>
#include <linux/dmi.h>
#include <linux/i8042.h>
#include <acpi/video.h>
#include "asus-wmi.h"
#define ASUS_NB_WMI_FILE …
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
#define ASUS_NB_WMI_EVENT_GUID …
MODULE_ALIAS(…) …;
static int wapf = …;
module_param(wapf, uint, 0444);
MODULE_PARM_DESC(…) …;
static int tablet_mode_sw = …;
module_param(tablet_mode_sw, uint, 0444);
MODULE_PARM_DESC(…) …;
static struct quirk_entry *quirks;
static bool atkbd_reports_vol_keys;
static bool asus_i8042_filter(unsigned char data, unsigned char str, struct serio *port)
{ … }
static struct quirk_entry quirk_asus_unknown = …;
static struct quirk_entry quirk_asus_q500a = …;
static struct quirk_entry quirk_asus_x55u = …;
static struct quirk_entry quirk_asus_wapf4 = …;
static struct quirk_entry quirk_asus_x200ca = …;
static struct quirk_entry quirk_asus_x550lb = …;
static struct quirk_entry quirk_asus_forceals = …;
static struct quirk_entry quirk_asus_use_kbd_dock_devid = …;
static struct quirk_entry quirk_asus_use_lid_flip_devid = …;
static struct quirk_entry quirk_asus_tablet_mode = …;
static struct quirk_entry quirk_asus_ignore_fan = …;
static int dmi_matched(const struct dmi_system_id *dmi)
{ … }
static const struct dmi_system_id asus_quirks[] = …;
static void asus_nb_wmi_quirks(struct asus_wmi_driver *driver)
{ … }
static const struct key_entry asus_nb_wmi_keymap[] = …;
static void asus_nb_wmi_key_filter(struct asus_wmi_driver *asus_wmi, int *code,
unsigned int *value, bool *autorelease)
{ … }
static struct asus_wmi_driver asus_nb_wmi_driver = …;
static int __init asus_nb_wmi_init(void)
{ … }
static void __exit asus_nb_wmi_exit(void)
{ … }
module_init(…) …;
module_exit(asus_nb_wmi_exit);