summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2011-04-09 01:43:18 +0200
committerJiri Kosina <jkosina@suse.cz>2011-04-09 01:43:18 +0200
commitcb3e85fe19575cce8af82bc62a070c72e8f781b8 (patch)
tree4edd10237fd2fed23caf1044a12bae07cf2e8b69
parentHID: Move hiddev.txt to the new Documentation/hid directory (diff)
downloadlinux-cb3e85fe19575cce8af82bc62a070c72e8f781b8.tar.xz
linux-cb3e85fe19575cce8af82bc62a070c72e8f781b8.zip
HID: hidraw: fix samples miscompilation
On systems where userspace doesn't have new hidraw.h populated to /usr/include, the hidraw sample won't compile as it's missing the new ioctl defitions. Introduce temporary ugly workaround to define the ioctls "manually" in such cases, just to avoid miscompilation in allmodconfig cases. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--samples/hidraw/hid-example.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/samples/hidraw/hid-example.c b/samples/hidraw/hid-example.c
index 40e3d6200582..816e2dcda7ca 100644
--- a/samples/hidraw/hid-example.c
+++ b/samples/hidraw/hid-example.c
@@ -14,6 +14,17 @@
#include <linux/input.h>
#include <linux/hidraw.h>
+/*
+ * Ugly hack to work around failing compilation on systems that don't
+ * yet populate new version of hidraw.h to userspace.
+ *
+ * If you need this, please have your distro update the kernel headers.
+ */
+#ifndef HIDIOCSFEATURE
+#define HIDIOCSFEATURE(len) _IOC(_IOC_WRITE|_IOC_READ, 'H', 0x06, len)
+#define HIDIOCGFEATURE(len) _IOC(_IOC_WRITE|_IOC_READ, 'H', 0x07, len)
+#endif
+
/* Unix */
#include <sys/ioctl.h>
#include <sys/types.h>