Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 68675
b: refs/heads/master
c: 86166b7
h: refs/heads/master
i:
  68673: bc51a27
  68671: 25292c4
v: v3
  • Loading branch information
Jiri Kosina committed Oct 14, 2007
1 parent e475861 commit 0af30ae
Show file tree
Hide file tree
Showing 8 changed files with 537 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: efc493f9d5463d933a64a2758fbe6d9bb8300cbb
refs/heads/master: 86166b7bcda0bcb53525114fa1c87ac432be478e
19 changes: 19 additions & 0 deletions trunk/drivers/hid/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,25 @@ config HID_DEBUG

If unsure, say N

config HIDRAW
bool "/dev/hidraw raw HID device support"
depends on HID
---help---
Say Y here if you want to support HID devices (from the USB
specification standpoint) that aren't strictly user interface
devices, like monitor controls and Uninterruptable Power Supplies.

This module supports these devices separately using a separate
event interface on /dev/hidraw.

There is also a /dev/hiddev configuration option in the USB HID
configuration menu. In comparison to hiddev, this device does not process
the hid events at all (no parsing, no lookups). This lets applications
to work on raw hid events when they want to, and avoid using transport-specific
userspace libhid/libusb libraries.

If unsure, say Y.

source "drivers/hid/usbhid/Kconfig"

endif # HID_SUPPORT
2 changes: 2 additions & 0 deletions trunk/drivers/hid/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@
hid-objs := hid-core.o hid-input.o

obj-$(CONFIG_HID) += hid.o

hid-$(CONFIG_HID_DEBUG) += hid-debug.o
hid-$(CONFIG_HIDRAW) += hidraw.o

obj-$(CONFIG_USB_HID) += usbhid/
obj-$(CONFIG_USB_MOUSE) += usbhid/
Expand Down
16 changes: 16 additions & 0 deletions trunk/drivers/hid/hid-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
#include <linux/hid.h>
#include <linux/hiddev.h>
#include <linux/hid-debug.h>
#include <linux/hidraw.h>

/*
* Version Information
Expand Down Expand Up @@ -979,6 +980,8 @@ int hid_input_report(struct hid_device *hid, int type, u8 *data, int size, int i

if ((hid->claimed & HID_CLAIMED_HIDDEV) && hid->hiddev_report_event)
hid->hiddev_report_event(hid, report);
if (hid->claimed & HID_CLAIMED_HIDRAW)
hidraw_report_event(hid, data, size);

for (n = 0; n < report->maxfield; n++)
hid_input_field(hid, report->field[n], data, interrupt);
Expand All @@ -990,5 +993,18 @@ int hid_input_report(struct hid_device *hid, int type, u8 *data, int size, int i
}
EXPORT_SYMBOL_GPL(hid_input_report);

static int __init hid_init(void)
{
return hidraw_init();
}

static void __exit hid_exit(void)
{
hidraw_exit();
}

module_init(hid_init);
module_exit(hid_exit);

MODULE_LICENSE(DRIVER_LICENSE);

Loading

0 comments on commit 0af30ae

Please sign in to comment.