#include "hid-ids.h"
#include <linux/hid.h>
#include <linux/module.h>
#include <linux/jiffies.h>
#define PLT_HID_1_0_PAGE …
#define PLT_HID_2_0_PAGE …
#define PLT_BASIC_TELEPHONY …
#define PLT_BASIC_EXCEPTION …
#define PLT_VOL_UP …
#define PLT_VOL_DOWN …
#define PLT1_VOL_UP …
#define PLT1_VOL_DOWN …
#define PLT2_VOL_UP …
#define PLT2_VOL_DOWN …
#define PLT_DA60 …
#define PLT_BT300_MIN …
#define PLT_BT300_MAX …
#define PLT_ALLOW_CONSUMER …
#define PLT_QUIRK_DOUBLE_VOLUME_KEYS …
#define PLT_DOUBLE_KEY_TIMEOUT …
struct plt_drv_data { … };
static int plantronics_input_mapping(struct hid_device *hdev,
struct hid_input *hi,
struct hid_field *field,
struct hid_usage *usage,
unsigned long **bit, int *max)
{ … }
static int plantronics_event(struct hid_device *hdev, struct hid_field *field,
struct hid_usage *usage, __s32 value)
{ … }
static unsigned long plantronics_device_type(struct hid_device *hdev)
{ … }
static int plantronics_probe(struct hid_device *hdev,
const struct hid_device_id *id)
{ … }
static const struct hid_device_id plantronics_devices[] = …;
MODULE_DEVICE_TABLE(hid, plantronics_devices);
static const struct hid_usage_id plantronics_usages[] = …;
static struct hid_driver plantronics_driver = …;
module_hid_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;