linux/drivers/hid/hid-roccat-savu.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Roccat Savu driver for Linux
 *
 * Copyright (c) 2012 Stefan Achatz <[email protected]>
 */

/*
 */

/* Roccat Savu is a gamer mouse with macro keys that can be configured in
 * 5 profiles.
 */

#include <linux/device.h>
#include <linux/input.h>
#include <linux/hid.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/hid-roccat.h>
#include "hid-ids.h"
#include "hid-roccat-common.h"
#include "hid-roccat-savu.h"

ROCCAT_COMMON2_BIN_ATTRIBUTE_W(control, 0x4, 0x03);
ROCCAT_COMMON2_BIN_ATTRIBUTE_RW(profile, 0x5, 0x03);
ROCCAT_COMMON2_BIN_ATTRIBUTE_RW(general, 0x6, 0x10);
ROCCAT_COMMON2_BIN_ATTRIBUTE_RW(buttons, 0x7, 0x2f);
ROCCAT_COMMON2_BIN_ATTRIBUTE_RW(macro, 0x8, 0x0823);
ROCCAT_COMMON2_BIN_ATTRIBUTE_RW(info, 0x9, 0x08);
ROCCAT_COMMON2_BIN_ATTRIBUTE_RW(sensor, 0xc, 0x04);

static struct bin_attribute *savu_bin_attrs[] =;

static const struct attribute_group savu_group =;

static const struct attribute_group *savu_groups[] =;

static const struct class savu_class =;

static int savu_init_specials(struct hid_device *hdev)
{}

static void savu_remove_specials(struct hid_device *hdev)
{}

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

static void savu_remove(struct hid_device *hdev)
{}

static void savu_report_to_chrdev(struct roccat_common2_device const *savu,
		u8 const *data)
{}

static int savu_raw_event(struct hid_device *hdev,
		struct hid_report *report, u8 *data, int size)
{}

static const struct hid_device_id savu_devices[] =;

MODULE_DEVICE_TABLE(hid, savu_devices);

static struct hid_driver savu_driver =;

static int __init savu_init(void)
{}

static void __exit savu_exit(void)
{}

module_init();
module_exit(savu_exit);

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