linux/drivers/hid/hid-led.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Simple USB RGB LED driver
 *
 * Copyright 2016 Heiner Kallweit <[email protected]>
 * Based on drivers/hid/hid-thingm.c and
 * drivers/usb/misc/usbled.c
 */

#include <linux/hid.h>
#include <linux/hidraw.h>
#include <linux/leds.h>
#include <linux/module.h>
#include <linux/mutex.h>

#include "hid-ids.h"

enum hidled_report_type {};

enum hidled_type {};

static unsigned const char riso_kagaku_tbl[] =;

#define RISO_KAGAKU_IX(r, g, b)

delcom_packet;

#define DELCOM_GREEN_LED
#define DELCOM_RED_LED
#define DELCOM_BLUE_LED

struct hidled_device;
struct hidled_rgb;

struct hidled_config {};

struct hidled_led {};

struct hidled_rgb {};

struct hidled_device {};

#define MAX_REPORT_SIZE

#define to_hidled_led(arg)

static bool riso_kagaku_switch_green_blue;
module_param(riso_kagaku_switch_green_blue, bool, S_IRUGO | S_IWUSR);
MODULE_PARM_DESC();

static int hidled_send(struct hidled_device *ldev, __u8 *buf)
{}

/* reading data is supported for report type RAW_REQUEST only */
static int hidled_recv(struct hidled_device *ldev, __u8 *buf)
{}

static u8 riso_kagaku_index(struct hidled_rgb *rgb)
{}

static int riso_kagaku_write(struct led_classdev *cdev, enum led_brightness br)
{}

static int dream_cheeky_write(struct led_classdev *cdev, enum led_brightness br)
{}

static int dream_cheeky_init(struct hidled_device *ldev)
{}

static int _thingm_write(struct led_classdev *cdev, enum led_brightness br,
			 u8 offset)
{}

static int thingm_write_v1(struct led_classdev *cdev, enum led_brightness br)
{}

static int thingm_write(struct led_classdev *cdev, enum led_brightness br)
{}

static const struct hidled_config hidled_config_thingm_v1 =;

static int thingm_init(struct hidled_device *ldev)
{}

static inline int delcom_get_lednum(const struct hidled_led *led)
{}

static int delcom_enable_led(struct hidled_led *led)
{}

static int delcom_set_pwm(struct hidled_led *led)
{}

static int delcom_write(struct led_classdev *cdev, enum led_brightness br)
{}

static int delcom_init(struct hidled_device *ldev)
{}

static int luxafor_write(struct led_classdev *cdev, enum led_brightness br)
{}

static const struct hidled_config hidled_configs[] =;

static int hidled_init_led(struct hidled_led *led, const char *color_name,
			   struct hidled_rgb *rgb, unsigned int minor)
{}

static int hidled_init_rgb(struct hidled_rgb *rgb, unsigned int minor)
{}

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

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

static struct hid_driver hidled_driver =;

module_hid_driver();

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