linux/drivers/platform/x86/topstar-laptop.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Topstar Laptop ACPI Extras driver
 *
 * Copyright (c) 2009 Herton Ronaldo Krzesinski <[email protected]>
 * Copyright (c) 2018 Guillaume Douézan-Grard
 *
 * Implementation inspired by existing x86 platform drivers, in special
 * asus/eepc/fujitsu-laptop, thanks to their authors.
 */

#define pr_fmt(fmt)

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/acpi.h>
#include <linux/dmi.h>
#include <linux/input.h>
#include <linux/input/sparse-keymap.h>
#include <linux/leds.h>
#include <linux/platform_device.h>

#define TOPSTAR_LAPTOP_CLASS

struct topstar_laptop {};

/*
 * LED
 */

static enum led_brightness topstar_led_get(struct led_classdev *led)
{}

static int topstar_led_set(struct led_classdev *led,
		enum led_brightness state)
{}

static int topstar_led_init(struct topstar_laptop *topstar)
{}

static void topstar_led_exit(struct topstar_laptop *topstar)
{}

/*
 * Input
 */

static const struct key_entry topstar_keymap[] =;

static void topstar_input_notify(struct topstar_laptop *topstar, int event)
{}

static int topstar_input_init(struct topstar_laptop *topstar)
{}

static void topstar_input_exit(struct topstar_laptop *topstar)
{}

/*
 * Platform
 */

static struct platform_driver topstar_platform_driver =;

static int topstar_platform_init(struct topstar_laptop *topstar)
{}

static void topstar_platform_exit(struct topstar_laptop *topstar)
{}

/*
 * ACPI
 */

static int topstar_acpi_fncx_switch(struct acpi_device *device, bool state)
{}

static void topstar_acpi_notify(struct acpi_device *device, u32 event)
{}

static int topstar_acpi_init(struct topstar_laptop *topstar)
{}

static void topstar_acpi_exit(struct topstar_laptop *topstar)
{}

/*
 * Enable software-based WLAN LED control on systems with defective
 * hardware switch.
 */
static bool led_workaround;

static int dmi_led_workaround(const struct dmi_system_id *id)
{}

static const struct dmi_system_id topstar_dmi_ids[] =;

static int topstar_acpi_add(struct acpi_device *device)
{}

static void topstar_acpi_remove(struct acpi_device *device)
{}

static const struct acpi_device_id topstar_device_ids[] =;
MODULE_DEVICE_TABLE(acpi, topstar_device_ids);

static struct acpi_driver topstar_acpi_driver =;

static int __init topstar_laptop_init(void)
{}

static void __exit topstar_laptop_exit(void)
{}

module_init();
module_exit(topstar_laptop_exit);

MODULE_AUTHOR();
MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();