/* * HID over I2C ACPI Subclass * * Copyright (c) 2012 Benjamin Tissoires <[email protected]> * Copyright (c) 2012 Ecole Nationale de l'Aviation Civile, France * Copyright (c) 2012 Red Hat, Inc * * This code was forked out of the core code, which was partly based on * "USB HID support for Linux": * * Copyright (c) 1999 Andreas Gal * Copyright (c) 2000-2005 Vojtech Pavlik <[email protected]> * Copyright (c) 2005 Michael Haboustak <[email protected]> for Concept2, Inc * Copyright (c) 2007-2008 Oliver Neukum * Copyright (c) 2006-2010 Jiri Kosina * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive for * more details. */ #include <linux/acpi.h> #include <linux/device.h> #include <linux/i2c.h> #include <linux/kernel.h> #include <linux/module.h> #include <linux/pm.h> #include <linux/uuid.h> #include "i2c-hid.h" struct i2c_hid_acpi { … }; static const struct acpi_device_id i2c_hid_acpi_blacklist[] = …; /* HID I²C Device: 3cdff6f7-4267-4555-ad05-b30a3d8938de */ static guid_t i2c_hid_guid = …; static int i2c_hid_acpi_get_descriptor(struct i2c_hid_acpi *ihid_acpi) { … } static void i2c_hid_acpi_shutdown_tail(struct i2chid_ops *ops) { … } static int i2c_hid_acpi_probe(struct i2c_client *client) { … } static const struct acpi_device_id i2c_hid_acpi_match[] = …; MODULE_DEVICE_TABLE(acpi, i2c_hid_acpi_match); static struct i2c_driver i2c_hid_acpi_driver = …; module_i2c_driver(…) …; MODULE_DESCRIPTION(…) …; MODULE_AUTHOR(…) …; MODULE_LICENSE(…) …;