linux/drivers/hid/hid-microsoft.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 *  HID driver for some microsoft "special" devices
 *
 *  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) 2006-2007 Jiri Kosina
 *  Copyright (c) 2008 Jiri Slaby
 */

/*
 */

#include <linux/device.h>
#include <linux/input.h>
#include <linux/hid.h>
#include <linux/module.h>

#include "hid-ids.h"

#define MS_HIDINPUT
#define MS_ERGONOMY
#define MS_PRESENTER
#define MS_RDESC
#define MS_NOGET
#define MS_DUPLICATE_USAGES
#define MS_SURFACE_DIAL
#define MS_QUIRK_FF

struct ms_data {};

#define XB1S_FF_REPORT
#define ENABLE_WEAK
#define ENABLE_STRONG

enum {};

struct xb1s_ff_report {} __packed;

static __u8 *ms_report_fixup(struct hid_device *hdev, __u8 *rdesc,
		unsigned int *rsize)
{}

#define ms_map_key_clear(c)
static int ms_ergonomy_kb_quirk(struct hid_input *hi, struct hid_usage *usage,
		unsigned long **bit, int *max)
{}

static int ms_presenter_8k_quirk(struct hid_input *hi, struct hid_usage *usage,
		unsigned long **bit, int *max)
{}

static int ms_surface_dial_quirk(struct hid_input *hi, struct hid_field *field,
		struct hid_usage *usage, unsigned long **bit, int *max)
{}

static int ms_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 ms_input_mapped(struct hid_device *hdev, struct hid_input *hi,
		struct hid_field *field, struct hid_usage *usage,
		unsigned long **bit, int *max)
{}

static int ms_event(struct hid_device *hdev, struct hid_field *field,
		struct hid_usage *usage, __s32 value)
{}

static void ms_ff_worker(struct work_struct *work)
{}

static int ms_play_effect(struct input_dev *dev, void *data,
			  struct ff_effect *effect)
{}

static int ms_init_ff(struct hid_device *hdev)
{}

static void ms_remove_ff(struct hid_device *hdev)
{}

static int ms_probe(struct hid_device *hdev, const struct hid_device_id *id)
{}

static void ms_remove(struct hid_device *hdev)
{}

static const struct hid_device_id ms_devices[] =;
MODULE_DEVICE_TABLE(hid, ms_devices);

static struct hid_driver ms_driver =;
module_hid_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();