#include <linux/acpi.h>
#include <linux/device.h>
#include <linux/module.h>
#include <linux/platform_profile.h>
#include <linux/wmi.h>
#define WMI_INSPUR_POWERMODE_BIOS_GUID …
enum inspur_wmi_method_ids { … };
enum inspur_tmp_profile { … };
struct inspur_wmi_priv { … };
static int inspur_wmi_perform_query(struct wmi_device *wdev,
enum inspur_wmi_method_ids query_id,
void *buffer, size_t insize,
size_t outsize)
{ … }
static int inspur_platform_profile_set(struct platform_profile_handler *pprof,
enum platform_profile_option profile)
{ … }
static int inspur_platform_profile_get(struct platform_profile_handler *pprof,
enum platform_profile_option *profile)
{ … }
static int inspur_wmi_probe(struct wmi_device *wdev, const void *context)
{ … }
static void inspur_wmi_remove(struct wmi_device *wdev)
{ … }
static const struct wmi_device_id inspur_wmi_id_table[] = …;
MODULE_DEVICE_TABLE(wmi, inspur_wmi_id_table);
static struct wmi_driver inspur_wmi_driver = …;
module_wmi_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;