hid-holtekff.c (48a732dfaa77a4dfec803aa8f248373998704f76) hid-holtekff.c (d881427253da011495f4193663d809d0e9dfa215)
1/*
2 * Force feedback support for Holtek On Line Grip based gamepads
3 *
4 * These include at least a Brazilian "Clone Joypad Super Power Fire"
5 * which uses vendor ID 0x1241 and identifies as "HOLTEK On Line Grip".
6 *
7 * Copyright (c) 2011 Anssi Hannula <anssi.hannula@iki.fi>
8 */

--- 13 unchanged lines hidden (view full) ---

22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 */
25
26#include <linux/hid.h>
27#include <linux/input.h>
28#include <linux/module.h>
29#include <linux/slab.h>
1/*
2 * Force feedback support for Holtek On Line Grip based gamepads
3 *
4 * These include at least a Brazilian "Clone Joypad Super Power Fire"
5 * which uses vendor ID 0x1241 and identifies as "HOLTEK On Line Grip".
6 *
7 * Copyright (c) 2011 Anssi Hannula <anssi.hannula@iki.fi>
8 */

--- 13 unchanged lines hidden (view full) ---

22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 */
25
26#include <linux/hid.h>
27#include <linux/input.h>
28#include <linux/module.h>
29#include <linux/slab.h>
30#include <linux/usb.h>
31
32#include "hid-ids.h"
33
34#ifdef CONFIG_HOLTEK_FF
30
31#include "hid-ids.h"
32
33#ifdef CONFIG_HOLTEK_FF
35#include "usbhid/usbhid.h"
36
37MODULE_LICENSE("GPL");
38MODULE_AUTHOR("Anssi Hannula <anssi.hannula@iki.fi>");
39MODULE_DESCRIPTION("Force feedback support for Holtek On Line Grip based devices");
40
41/*
42 * These commands and parameters are currently known:
43 *

--- 53 unchanged lines hidden (view full) ---

97 int i;
98
99 for (i = 0; i < HOLTEKFF_MSG_LENGTH; i++) {
100 holtekff->field->value[i] = data[i];
101 }
102
103 dbg_hid("sending %*ph\n", 7, data);
104
34
35MODULE_LICENSE("GPL");
36MODULE_AUTHOR("Anssi Hannula <anssi.hannula@iki.fi>");
37MODULE_DESCRIPTION("Force feedback support for Holtek On Line Grip based devices");
38
39/*
40 * These commands and parameters are currently known:
41 *

--- 53 unchanged lines hidden (view full) ---

95 int i;
96
97 for (i = 0; i < HOLTEKFF_MSG_LENGTH; i++) {
98 holtekff->field->value[i] = data[i];
99 }
100
101 dbg_hid("sending %*ph\n", 7, data);
102
105 usbhid_submit_report(hid, holtekff->field->report, USB_DIR_OUT);
103 hid_hw_request(hid, holtekff->field->report, HID_REQ_SET_REPORT);
106}
107
108static int holtekff_play(struct input_dev *dev, void *data,
109 struct ff_effect *effect)
110{
111 struct hid_device *hid = input_get_drvdata(dev);
112 struct holtekff_device *holtekff = data;
113 int left, right;

--- 114 unchanged lines hidden ---
104}
105
106static int holtekff_play(struct input_dev *dev, void *data,
107 struct ff_effect *effect)
108{
109 struct hid_device *hid = input_get_drvdata(dev);
110 struct holtekff_device *holtekff = data;
111 int left, right;

--- 114 unchanged lines hidden ---